如何在nightwatch.js中将定位器存储在一个sepearate文件中

时间:2016-01-11 07:15:03

标签: javascript selenium nightwatch.js

我正在使用Nightwatch.js进行一些自动化测试。并且,我想将我的CSS定位器存储在一个单独的文件中,以便我可以在需要时轻松修改它们。但是,我想在页面文件夹中的另一个文件中使用这些定位器,而不是在主测试脚本中。 根据文档,可以在主测试文件中使用这些定位器,但是,我无法找到在另一个页面函数中使用它的方法。 我的定位器如下:

    module.exports=     {
                elements: {
                            usernameCSS: 'input[name=username]',
                            passwordCSS: 'input[name=password]',
                            signInButton: 'input[value="Sign in"]',
                            warningText: '.text-danger'             
                            }
                };

我想要使用它的文件如下:

    var commonFunctions = require("./commonFunctions.js");
    var locators = require("./locators.js");
    module.exports = function(browser) {
    var common = new commonFunctions(browser);

/*
 * Test specific functions
  */

this.signIn = function(locators) {
    common.clickUsingCss('@signInButton');
    return browser;
};
this.inputUserName = function(value) {
     common.inputValue('@usernameCSS', value);
    return browser;
};
 this.inputPassword = function(value)   {
    common.inputValue('@passwordCSS', value);
    return browser;
};

0 个答案:

没有答案