2017-10-11 95 views
1

我试图使用jQuery选择与我Nightwatch.js端对端测试 根据这样的回答:Nightwatch.js e2e测试如何在全局范围内设置jQuery?

How to write a nightwatch custom command using jquery

我需要有jQuery的在我的应用程序的这种全球范围内的工作提供。 (否则我与$(选择)裁判麻烦......

'use strict'; 

var ClickElementByIndex = function(className, index) { 
    if (!index) { 
    index = 0; 
    } 

    this.execute(function(selector, i) { 
    var $item = $(selector + ':eq(' + i + ')'); 
    if (!!$item) { 
     $item.click(); 
     return true; 
    } 
    return false; 
    }, [className, index], function(result) { 
    console.info(result); 
    }); 
}; 

exports.command = ClickElementByIndex; 
+0

重复的问题请参阅答案。在https://stackoverflow.com/questions/21674080/how-to-use-npm-jquery-module – erwin

回答

1

你只需要jQuery的包作为依赖添加到您的package.json,然后必须在文件中要求jquery。通常情况下,你会已经为nightwatch做到了这一点要添加的软件包,jquery,作为一个出发,从项目的根目录运行此命令:

npm install jquery --save-dev

然后验证它的工作通过检查你有一个额外的行添加为jquerypackage.json。它看起来是这样的:

"devDependencies": { "jquery": "^3.2.0",

注:如果没有package.json还不存在,转到该项目的顶级文件夹,然后运行npm init。在完成提示后,可以使用上述命令将jquerynightwatch作为开发人员添加。

最后,需要jquery在您的自定义命令或断言,只需添加const $ = require('jquery')到文件的顶部分配$jquery

+0

非常感谢... – erwin

相关问题