如何将基本的auth传递到selenium,而nightwatchjs不在url中

时间:2015-09-25 17:09:43

标签: javascript selenium nightwatch.js

我正在使用nightwatchjs编写一些测试,并且需要使用uname和pword进行基本身份验证。

我知道能够通过网址传递这些信用卡。

然而,在我正在处理的网站上,通过URL传递凭据会破坏一些网站javascript。

有没有人知道另一种方法将信用卡传递到通常的弹出框中?

1 个答案:

答案 0 :(得分:0)

基本的想法是发出2 get()个请求 - 第一个请求URL中的凭据登录,第二个请求没有 - 此时您将登录。

nightwatch.js中有这个setUp()测试初始化​​函数,您可以在单独的utils / helpers文件中定义并在每个测试中都需要:

var utils = require("./utils.js");

module.exports = {
    setUp: utils.setUp,

    // rest of the test
}

其中utils.setUp函数至少包含" get"请求凭证内。这种方法的缺点是在每个测试文件中都有require()次调用。我对nightwatch.js不太熟悉,可能有更好的方法进行全局设置/拆解,请参阅: