gpt4 book ai didi

javascript - Nightwatch setValue 方法不起作用

转载 作者:行者123 更新时间:2023-11-28 21:04:16 24 4
gpt4 key购买 nike

我目前正在尝试建立一个 Nightwatch 项目,看看它是否有用。我正在关注 This tutorial现在。本教程中的内容有效,但是当我尝试对其进行一些修改时,它不再起作用了。我查看了 Developer API guide ,但我想我还是遗漏了什么?我使用的代码粘贴在下面:

var conf = require('../../nightwatch.conf.js');

module.exports = {
'Demo test' : function (browser) {
browser
.url('http://localhost/myWebsite?newwindow=0')
.waitForElementVisible('body', 6000)
.setValue('input[name=txtLogin]', 'login')
.setValue('input[name=txtPassword]', 'password')
.waitForElementVisible('input.btnLogin', 2000)
.click('button[id=btnLogin]')
.pause(6000)
.assert.elementPresent("#selectTitle")
.assert.containsText('#selectTitle', 'schedules')
.assert.urlContains('login/login_start.asp')
.saveScreenshot(conf.imgpath(browser) + 'titleScreen.png')
.end();

}
};

命令错误:

Running:  Demo test 
√ Element <body> was visible after 41 milliseconds.
ERROR: Unable to locate element: "input[name=txtLogin]" using: css selector
at Object.Demo test (C:\Workspace\myWebsite\learn-nightwatch\test\e2e\My_Test.js:8:8)
at _combinedTickCallback (internal/process/next_tick.js:67:7)
ERROR: Unable to locate element: "input[name=txtPassword]" using: css selector
at Object.Demo test (C:\Workspace\myWebsite\learn-nightwatch\test\e2e\My_Test.js:9:8)
at _combinedTickCallback (internal/process/next_tick.js:67:7)
× Timed out while waiting for element <input.btnLogin> to be present for 2000 milliseconds. - expected "visible" but got: "not found"
at Object.Demo test (C:\Workspace\myWebsite\learn-nightwatch\test\e2e\My_Test.js:10:8)
at _combinedTickCallback (internal/process/next_tick.js:67:7)

最后,html 只是为了完成:

<input type="text" class="inputText" id="txtLogin" name="txtLogin" >

<input type="password" class="inputText" id="txtPassword" name="txtPassword" >

最佳答案

setValue 对我来说也很棘手。有时它会输入值但随后会清除它们,目前 (10/10/2017) 每次我使用 setValue 函数时它都会突然打开 Chrome 设置选项卡。

我现在要做的是首先定义一个这样的函数

var setValue =  function(sel, value) {
$(sel).val(value).change();
};

然后像那样从 Nightwatch 链函数中调用它

browser.url('https://google.com')
.execute(setValue, ['#search', 'keyword'])
.click('#search-btn')
.waitForElementVisible('an example of selector')
.assert.containsText('selector', '100000xxxx results')

关于javascript - Nightwatch setValue 方法不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40990894/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com