我正在尝试将Intern设置为在Windows 7计算机上与PhantomJS一起运行
现在我的设置如下:
演示测试root/unit/tests/phantom.js
:
define([
'intern!object',
'intern/chai!assert'
], function(registerSuite, assert) {
registerSuite({
name: 'PhantomTest',
'dummy': function () {
assert(true, "Works!");
}
});
});
配置文件root/unit/intern.config.js
:
define({
proxyPort: 9000,
proxyUrl: 'http://localhost:9000/',
capabilities: {
'selenium-version': '2.30.0'
},
environments: [
{
browserName: 'phantom'
}
],
maxConcurrency: 3,
useSauceConnect: false,
webdriver: {
host: 'localhost',
port: 4444
},
// used here
loader: {
},
suites: [ 'unit/tests/phantom.js' ],
functionalSuites: [ /* 'myPackage/tests/functional' */ ],
excludeInstrumentation: /^tests\//
});
通过在浏览器中运行此测试和配置,它可以正常工作。
使用PhantomJS运行实习生我执行:
phantomjs --webdriver=4444
和
cd root
node node_modules\intern\runner.js config=unit/intern.config
运行Phantomjs的控制台然后返回:
[INFO - 2013-07-01T21:29:07.253Z] SessionManagerReqHand - _postNewSessionCommand - New Session Created: 42ba5b50-e295-11e2-86f7-e331eb8b922d
而另一个输出以下消息而没有任何进一步的日志:
Defaulting to "runner" reporter
Listening on 0.0.0.0:9000
Initialised phantomjs 1.9.1 on windows-7-32bit
我缺少什么提示?
答案 0 :(得分:1)
原因是https://github.com/ariya/phantomjs/issues/10522; phantomjs正在使用一个没有Function.prototype.bind
的极其旧版本的JavaScriptCore。此时您最好的选择是切换到使用geezer
版本的Intern,它应该在这个旧环境中正常工作。