【发布时间】:2016-01-02 18:36:57
【问题描述】:
我有一个网页,我正在尝试通过Webdriver I/O 进行测试。我的问题是,如何通过测试点击几个链接?目前,我有以下内容:
var webdriverio = require('webdriverio');
var client = webdriverio.remote(settings).init()
.url('http://www.example.com')
.elements('a')
.then(function(links) {
for (var i=0; i<links.value.length; i++) {
console.log('Clicking link...');
var link = links.value[i].ELEMENT;
link.click().then(function(result) {
console.log('Link clicked!');
});
}
})
;
执行上述操作时,我收到一条错误消息,指出链接上的“点击不是功能”。当我将link 打印到控制台时,它看起来像JSON,这是有道理的,因为documentation 表示elements 函数返回WebElement JSON 对象。不过,我只是想弄清楚如何单击此链接。
如何做到这一点?
谢谢!
【问题讨论】:
-
通过选择器和
click方法找到你的元素怎么样?client.click('a', function(err,res) {...}) -
@Valijon 这种方法只会点击第一个链接。它不会点击每个链接。
-
如果您需要点击带有“目的”的一对链接,请为该链接设置
class或id属性。然后,通过选择器"#some_id", "a.some_class"单击它们。在我们的项目中,我们使用 Selenium for Java,并且我们会客观地点击,例如登录、注销、主页、第二页等...
标签: javascript node.js webdriver-io