使用nightwatch js在浏览器弹出窗口中输入文本

时间:2015-07-01 08:33:22

标签: selenium nightwatch.js

我想使用nightwatch.js和selenium为使用ruby创建的Web应用程序编写测试脚本。当应用程序启动时,它会要求用户将用户名和密码放入浏览器输入对话框(带有用户名和密码文本字段的弹出窗口)。 有没有办法可以使用nightwatch.js在文本字段中发送或输入文本?

1 个答案:

答案 0 :(得分:1)

如果它是 popin ,您基本上可以使用setValue功能:

// send some simple text to an input
this.demoTest = function (browser) {
  browser.setValue('#yourInputId', 'nightwatch');
};

API doc:http://nightwatchjs.org/api#setValue

如果它是" oldschool" 弹出(javascript中的 window.open(...)),您应该使用switchWindow函数:

this.demoTest = function (browser) {
    browser.window_handles(function(result) {
        var handle = result.value[0];
        browser.switchWindow(handle);
        browser.setValue('#yourInputId', 'nightwatch');
    });
};

API doc:http://nightwatchjs.org/api#switchWindow