这是我的conf文件:
// An example configuration file.
exports.config = {
// The address of a running selenium server.
seleniumAddress: 'http://localhost:4444/wd/hub',
// Capabilities to be passed to the webdriver instance.
capabilities: {
'browserName': 'phantomjs',
'phantomjs.binary.path': 'C:/Users/MY_USER_NAME/AppData/Roaming/npm/node_modules/phantomjs/phantomjs.exe'
},
// Spec patterns are relative to the current working directly when
// protractor is called.
specs: ['example_spec.js'],
// Options to be passed to Jasmine-node.
jasmineNodeOpts: {
showColors: true,
defaultTimeoutInterval: 30000
}
};
这是我的example_spec.js文件
describe('angularjs homepage', function() {
it('should greet the named user', function() {
browser.get('http://www.angularjs.org');
element(by.model('yourName')).sendKeys('Julie');
var greeting = element(by.binding('yourName'));
expect(greeting.getText()).toEqual('Hello Julie!');
});
});
当我运行它时,我总是收到错误:
Error: Timed out waiting for page to load
Wait timed out after 10129ms
如果我切换到测试只是chrome它工作正常,但我似乎无法让phantomjs工作。我有最新版本的phantomjs和量角器,刚刚安装完毕。
答案 0 :(得分:4)
原来有两件事情发生了。
1)angularjs网站只是不想工作
2)如果没有一个默认设置,你需要用phantomjs设置浏览器分辨率:browser.driver.manage().window().setSize(1124, 850);
我在每个人面前跑了这个:
beforeEach(function(){
browser.driver.manage().window().setSize(1124, 850);
});
然后我开始通过测试。