【发布时间】:2014-12-02 20:45:02
【问题描述】:
问题:
如何在一次测试中点击ul > li a 中的每个链接?
问题:这个测试通过了;但是,它没有点击链接。我知道这一点是因为它没有重定向或等待 2000 毫秒。
测试:
it("should have proper page linking to all footer link", function() {
browser.driver.sleep(2000);
browser.ignoreSynchronization = true;
//creates an array of strings of all the menu items
var titles = element.all(by.css('.leftMenu.first .submenu li a'))
.map(function(elm) {
return elm.getText().then(function(text){
return text;
});
});
//iterates through the links via titles array
for (var i = 0; i < titles.length; i++) {
// creates a link via selection of cssContainText of the titles array
var link = element(by.cssContainingText('.submenu li a', titles[i]));
//click event
link.click().then(function() {
browser.driver.sleep(2000);
//currently arbitrary expectation but will pass
expect(browser.driver.getTitle()).toBe('welcome to: ' + title[i]);
});
}
});
更新:找到答案:ANSWER
【问题讨论】:
-
很高兴你已经解决了。感谢分享解决方案。
-
@alecxe 您在 Angular/jasmine/karma 中的单元测试技能如何? stackoverflow.com/questions/27264016/…
标签: javascript selenium selenium-webdriver protractor angularjs-e2e