我正在使用PhantomJS进行页面自动化。对于我的脚本,我需要加载另一个脚本,该脚本也在我的网页的实际客户端使用。此脚本包含一些部分,其中使用全局变量(假定在加载脚本之前设置)。
现在我的问题是我无法弄清楚如何在PhantomJS中require
之前设置这些变量。
这(显然)没有做到这一点:
variableX = 1024;
var moduleX = require('myScripts.js');
现在有什么正确和有意的方式(如果有的话)这样做?
答案 0 :(得分:0)
如果您将测试脚本准备为CommonJS模块,则可以在PhantomJS中使用它并使用其方法和变量。
来自文档:http://phantomjs.org/release-1.7.html
例如,假设有一个脚本
universe.js
,其中包含以下代码:exports.answer = 42; exports.start = function () { console.log('Starting the universe....'); }
此模块可用于以下其他脚本:
var universe = require('./universe'); universe.start(); console.log('The answer is', universe.answer);
如果要从这样的模块中分配全局变量,可以像在node.js中一样使用global
对象:
exports.start = function () {
global.success = true;
console.log('Starting the universe....');
}