是否可以使用nightwatchjs获取多个输入的值?
我需要同时测试几个输入的值。
提前谢谢。
发布于 2017-08-02 06:16:25
是的,您可以获得几个输入值:
第一个选项是回调(不建议):
var text, text2, text3; // ...
browser.getValue('#inputField1', function (result) {
text = result.value;
browser.getValue('#inputField2', function (result) {
text2 = result.value;
browser.getValue('#inputField3', function (result) {
text3 = result.value;
browser.getValue('#inputField4' + text3, function (result) {
console.log(text, text2, text3) // your code
});
});
});
});第二,您可以从文档(推荐)中使用perform() api:
var text, text2, text3;
browser
.getValue('#input', function (result) {
text = result.value;
browser.getValue('#inputField2', function (result) {
text2 = result.value;
});
})
.perform(function () {
browser.getValue('#inputField3', function (result) {
console.log(text2, text 1) // they do exist here
text3 = result.value;
});
});这是夜间执行的文档
发布于 2017-08-01 14:12:46
您可以使用getText或getValue方法,例如:
this.demoTest = function (browser) {
browser.getText("#main ul li a.first", function(result) {
this.assert.equal(typeof result, "object");
this.assert.equal(result.status, 0);
this.assert.equal(result.value, "nightwatchjs.org");
});
};
this.demoTest = function (browser) {
browser.getValue("form.login input[type=text]", function(result) {
this.assert.equal(typeof result, "object");
this.assert.equal(result.status, 0);
this.assert.equal(result.value, "enter username");
});
};有api文档:getText API参考
https://stackoverflow.com/questions/45439990
复制相似问题