Javascript AngulareJS e2e检查列表中的每个链接
我是AngularJS的新手,我将主要使用e2e部分(与jasmine一起)。在这几天毫无进展的情况下(至少可以说,我发现文档中的内容相当厌食!),我想知道是否有人可以在这里帮助我: 网站生成A=href链接的html列表。我可以使用angularjs e2e“点击”链接,如下所示:Javascript AngulareJS e2e检查列表中的每个链接,javascript,element,angularjs,Javascript,Element,Angularjs,我是AngularJS的新手,我将主要使用e2e部分(与jasmine一起)。在这几天毫无进展的情况下(至少可以说,我发现文档中的内容相当厌食!),我想知道是否有人可以在这里帮助我: 网站生成A=href链接的html列表。我可以使用angularjs e2e“点击”链接,如下所示: element('li a').click(); 好的。但这里有两个问题: 如果列表中有6个链接,单击该链接是哪一个??(在正在测试的html代码中,这些链接没有唯一的id,有些链接可能是完全相同的引用/url等
element('li a').click();
好的。但这里有两个问题:
(注意:angularjs e2e版本的'element'与'angular.element'不一样。)好的-以防其他人好奇(我不是地球上唯一一个试图弄清楚这件事的人!)我自己解决了问题1:通过将值硬编码到列表中,我发现
element('li a')
。。。将选择最后列出的项目
因此,让“element()”在列表中选择一个特定的项,这似乎是一个无法解决的问题
console.log("ROYDEBUG: " + element('li a'));
。。。将“ROYDEBUG:[对象]”返回控制台日志
但是我可以让它识别出有“x”个列表项。如果我这样做:
element('li a').query(function (selectedElements, done) {
selectedElements.each(function(idx,elm)
{
var thisOne = selectedElements[idx]; //<-- (same as "= this;").
console.log("ROYDEBUG: " + idx + " - " + thisOne);
//element(thisOne).click(); //<-- doesn't work :(
//element(this).click(); //<-- doesn't work :(
//element(selectedElements[idx]).click(); //<-- doesn't work :(
});
done();
});
。。。因此它知道列表中有6项。但是,我不能使用“element().click()”来处理这些返回的“elements”,因为它们只是每个链接“href=”部分的文本字符串(如您在上面的控制台输出中所看到的)。已解决强>
element('li:eq(0) a').click(); //<-- clicks the first link.
element('li:eq(1) a').click(); //<-- clicks the 2nd link.
元素('li:eq(0)a')。单击()//在'element('li a')上执行console.log时会得到什么
element('li:eq(0) a').click(); //<-- clicks the first link.
element('li:eq(1) a').click(); //<-- clicks the 2nd link.