我有一个流星应用程序,想通过来自 webdriver.io 的无头浏览器从客户端检索单元测试中的一些数据。
我要的数据来自这个函数:
Session.get()
-> http://meteortips.com/first-meteor-tutorial/sessions/
我使用的无头浏览器来自以下网址:
我的测试是这样的:
describe('[Check Boards]', () => {
it('should exist', () => {
const board = browser.execute('Session.get(\'currentBoard\')');
...
}
}
当我在真实的浏览器控制台中运行此命令
Session.get('currentBoard')
时,我按预期获得了板。
但是当我在 mocha 测试中从上面描述的代码运行它时,我得到了这个结果:
{
"state": "success",
"sessionId": "12345",
"hCode": 12345,
"value": null,
"class": "org.openqa.selenium.remote.Response",
"_status": 0
}
值为空,但应该有板子
browser.execute
期望一个函数在浏览器中运行。您正在传递一个字符串,所以它可能不知道该怎么做。这是一个更新的代码片段,应该可以工作:
describe('[Check Boards]', () => {
it('should exist', () => {
const board = browser.execute(function () {
return Session.get('currentBoard');
});
...
}
}