Protractor-获取sendChromiumCommand的结果



目标:获取chromium命令执行的结果,例如Profiler报告数据

我所做的:我可以使用browser.driver.sendChromiumCommand调用chrome devtools命令。

例如,await browser.driver.sendChromiumCommand('Page.reload', {})重新加载页面,所以我可以确认这是有效的。

问题:任何命令执行的结果总是null

这是我的代码

describe('Protractor Demo App', function() {
it('whatever', async function() {
await browser.get('http://juliemr.github.io/protractor-demo/');
const data = await browser.driver.sendChromiumCommand('Page.reload', {
scriptToEvaluateOnLoad: `(function(){return '123 })()`
});
console.log(data); // expected '123' but got 'null'
});
});

注意:问题与特定命令无关,所有devtools命令都返回null

这本身不是一个Protractor问题。

问题是Node.js的底层selenium-webdriver使用了send_command(不返回结果(,但没有实现send_command_and_get_result的使用。

根据开发人员的回应,它将在下一个alpha版本中修复(目前的版本是4.0.0-alpha.7(

我想,为了实现这一点,一旦selenium-webdriver修复可用,Protractor的sendChromiumCommand必须得到一个sendChromiumCommandAndGetResult对应物。

相关内容

  • 没有找到相关文章

最新更新