我正在尝试用量角器编写一个基本的e2e测试。以下是我的测试。我添加了console.log以查看是否可以访问该URL,日志中的输出显示调用browser.getLocationAbsUrl()
的结果是一个“待处理”的承诺(Promise::105 {[[PromiseStatus]]: "pending"}
)。我得到的错误是Error while waiting for Protractor to sync with the page: "angular could not be found on the window"
describe "routes", () ->
it "should automatically redirect to / when location hash/fragment is empty", () ->
browser.navigate 'index.html'
console.log browser.getLocationAbsUrl()
expect(browser.getLocationAbsUrl()).toBe '/'
我的配置文件很简单:
exports.config = {
seleniumAddress: 'http://localhost:4444/wd/hub',
baseUrl: 'http://localhost:8000',
capabilities: {
'browserName': 'chrome'
},
troubleshoot: true,
specs: ['app/spec/e2e/**/*.coffee']
}
答案 0 :(得分:0)
在Protractor / Selenium中你不能只有console.log()
个不同的东西,这是所有的承诺。你应该做以下事情(对不起,我在CoffeeScript中并不擅长):
browser.get('index.html');
browser.getLocationAbsUrl().then(function(url) {
console.log(url);
});
expect(browser.getLocationAbsUrl()).toBe('/');
答案 1 :(得分:-1)
尝试删除这些行:
seleniumAddress: 'http://localhost:4444/wd/hub',
baseUrl: 'http://localhost:8000',