2017-09-29 2 views
0

Voici le code html pour le survol de la souris. Je veux être capable d'écrire un script en utilisant javascript pour passer la souris sur « produits & services », puis cliquez sur isentia.mediaportalcomment écrire un script de test en utilisant Javascript/Protractor pour passer la souris et cliquer à partir du menu affiché

S'il vous plaît aider car cela est pour mon entretien Merci

<li class="first-item has-children dropdown products first"> 
    <a href="#" class="dropdown-toggle root-menu">Products &amp; Services</a> 
    <ul class="dropdown-menu"> 
     <li class="first-item has-children dropdown all-products"> 
      <a href="#" class="">Products</a> 
      <ul class=""> 
       <li class="first-item has-children"> 
        <a title="isentia.mediaportal" href="/tools/mediaportal" class="">isentia.mediaportal</a> 
        <ul class=""> 
         <li class="first-item menu_blurb"><span>Our Suite of Media Monitoring Tools: All your PR &amp; Analytics in one platform</span></li> 

J'ai créé ce bit de spec.js

// spec.js 
describe('Protractor Demo App', function() { 
    it('should have a title', function() { 
    browser.get('http://www.isentia.com/'); 

    expect(browser.getTitle()).toEqual('Products & Services'); 

    var dropdown-toggle = element(by.id('dropdown-toggle')); 
    expect(dropdown-toggle.getText()).toEqual('Products & Services'); 

    it('should have a title', function() { 
    expect(browser.getTitle()).toEqual('isentia.mediaportal'); 
    }); 
element(by.css('a[href*="/tools/mediaportal"]')) 

    }); 
}); 
+0

S'il vous plaît nous montrer ce que vous avez essayé jusqu'à présent. StackOverflow n'est pas un site web "code-for-me". –

+0

J'ai fait un peu de codage mais je suis nouveau à ce sujet, je ne sais pas si cela fonctionnerait. – Farha

+0

Merci. @ SeanFrancisN.Ballais – Farha

Répondre

0

Vous devez utiliser browser.actions() pour effectuer des actions de la souris sur une WebElement. essayez le code ci-dessous.

var EC = protractor.ExpectedConditions; 
var productsAndServiceMenu = element(by.linkText("Products &amp; Services")); 
var subMenu = element(by.linkText("isentia.mediaportal")); 
browser.actions().mouseMove(productsAndServiceMenu).perform(); 
browser.wait(EC.visibilityOf(subMenu),5000); 
subMenu.click(); 

Référez http://www.protractortest.org/#/api?view=webdriver.WebDriver.prototype.actions

+0

Salut le test semble fonctionner sans aucune défaillance, mais l'exécution est si rapide que je ne peux pas ajouter voir si la partie de la navigation. Est-ce que quelqu'un pourrait me dire comment ralentir la navigation? Jusqu'à présent, mon fichier de code spec.js est comme ci-dessous: – Farha

+0

browser.get ('http://www.isentia.com/'); var EC = protractor.ExpectedConditions; var productsAndServiceMenu = element (by.linkText ("Produits & Services")); var subMenu = élément (by.linkText ("isentia.mediaportal")); browser.actions(). MouseMove (productsAndServiceMenu) .perform(); browser.wait (EC.visibilityOf (subMenu), 15000); subMenu.click(); browser.driver.sleep (15000); browser.waitForAngular(); – Farha