如何使用没有 id 或 class 的量角器测试元素?
How to test an element with protractor that has no id or class?
我是量角器的新手,正在尝试测试代码中的各种元素(我没有编写的代码)。
这里是一些代码的例子:
<ul class="primary_menu"> <li class=""> <a href="http://localhost:8080/web/aaaa_customer/home" > Home</a> </li>
如上图所示,此元素没有 ID,class 为空。因此,我该如何访问它?
下面是我编写的一些代码,用于访问具有 ID 的元素:
browser.driver.findElement(by.id('header-search-link')).click();
我也曾尝试访问一个元素 by.css 但它对上述问题不起作用。
任何帮助都会很棒
根据http://angular.github.io/protractor/#/locators#finding-sub-elements,您可以链接定位器来查找元素:
element(by.css('.primary_menu')).element(by.tagName('li'));
或
element(by.css('.primary_menu li'));
(未经测试,我从未使用过 Protractor)
如果您想访问 Home
link,只需通过 partial link text:
获取即可
element(by.partialLinkText('Home'));
或者,您可以使用 CSS selector:
element.all(by.css('ul.primary_menu > li > a')).first();
我是量角器的新手,正在尝试测试代码中的各种元素(我没有编写的代码)。
这里是一些代码的例子:
<ul class="primary_menu"> <li class=""> <a href="http://localhost:8080/web/aaaa_customer/home" > Home</a> </li>
如上图所示,此元素没有 ID,class 为空。因此,我该如何访问它? 下面是我编写的一些代码,用于访问具有 ID 的元素:
browser.driver.findElement(by.id('header-search-link')).click();
我也曾尝试访问一个元素 by.css 但它对上述问题不起作用。
任何帮助都会很棒
根据http://angular.github.io/protractor/#/locators#finding-sub-elements,您可以链接定位器来查找元素:
element(by.css('.primary_menu')).element(by.tagName('li'));
或
element(by.css('.primary_menu li'));
(未经测试,我从未使用过 Protractor)
如果您想访问 Home
link,只需通过 partial link text:
element(by.partialLinkText('Home'));
或者,您可以使用 CSS selector:
element.all(by.css('ul.primary_menu > li > a')).first();