如何在nightwatch规格测试中导入模块?
如果我尝试运行这个守夜人测试:
var settings = require("../settings")
module.exports = {
'Test PCC': function (browser) {
browser. //etc
我得到undefined不是一个函数。我是否需要使用browserify之类的方法打包?
答案 0 :(得分:1)
您不需要browserify来导入模块。如果路径正确并且您调用的函数存在,它应该有效。
我猜您在未显示的部分代码中调用'settings.some_function'。
检查设置本身是否已定义。如果没有,那么路径可能不正确或设置没有真正导出任何东西。
我已经成功地要求npm模块和自定义本地模块,而不需要浏览器。
如果路径正确且导出正确,则这两种方法都有效:
答案 1 :(得分:0)
文件结构:
settings.js
/test.nightwatch.js
test.nightwatch.js:
var settings = require("../settings");
module.exports = {
"subTest1" : function(client){
var a = settings.someProperty;
settings.someFunction(a);
//logs "some static parameter" to console
...
//test code
}
}
settings.js:
exports.someFunction = function(param){
console.log(param);
}
exports.someParam = "some static parameter";