Html 如何使用没有id或类的量角器测试元素?

Html 如何使用没有id或类的量角器测试元素?,html,css,testing,protractor,end-to-end,Html,Css,Testing,Protractor,End To End,我是个新手,正在尝试测试代码中的各种元素(我没有编写的代码) 下面是一些代码的示例: <ul class="primary_menu"> <li class=""> <a href="http&#x3a;&#x2f;&#x2f;localhost&#x3a;8080&#x2f;web&#x2f;aaaa_customer&#x2f;home" > Home</a> </li> 我

我是个新手,正在尝试测试代码中的各种元素(我没有编写的代码)

下面是一些代码的示例:

<ul class="primary_menu"> <li class=""> <a href="http&#x3a;&#x2f;&#x2f;localhost&#x3a;8080&#x2f;web&#x2f;aaaa_customer&#x2f;home" > Home</a> </li>
我也尝试过通过.css访问元素,但是对于上面的问题它不起作用

任何帮助都很好

根据您可以链接定位器以查找元素:

element(by.css('.primary_menu')).element(by.tagName('li'));


(未经测试,我从未使用过量角器)

如果您想访问
主页
链接,只需通过以下方式获取:

或者,您可以使用:


好的,这是怎么回事?我想访问页面上第二个列表中的第一个元素。据我所知,您正在访问第一个“li”中的第一个元素吗?您如何指定要命中的ul以及该ul中要命中的li?如果您了解我对
get()
的意思,您可以访问特定元素。如果要在第二个
ul
中使用第一个
li
,请使用(编号从0开始)
元素(按.css('.primary_菜单')).get(1).element(按.tagName('li')).get(0)对象对象没有方法“get”?这是我的具体行:
browser.driver.findElement(by.css('primary_menu')).get(1).element(by.tagName('ul')).get(0).click()确定这是有道理的,但是如何添加单击功能??当前,当我在第一个之后添加它时,如下所示:
.first().click(),表示没有未定义的函数单击快速问题,如何访问第二个元素。second()似乎不起作用了?我可以私下给你留言吗?在
mikesjones1987@gmail.com
也许吧
element(by.css('.primary_menu')).element(by.tagName('li'));
element(by.css('.primary_menu li'));
element(by.partialLinkText('Home'));
element.all(by.css('ul.primary_menu > li > a')).first();