为什么不在 Protractor 中使用 executeScript 创建对象
Why isn't an object created using executeScript in Protractor
我在量角器脚本中的 describe
中有这段代码,用于测试 angular js 应用程序。
beforeEach(function() {
browser.get('index.html#/device_list');
browser.executeScript("chrome.bluetooth = {};");
browser.executeScript("console.log('test')");
browser.executeScript("alert('test')");
});
如果没有此代码,测试 运行 会按预期失败。当我添加此代码并且 运行 未创建对象的脚本时,不会打印控制台日志但会创建警报(并按预期抛出异步错误)。
我已经在没有警报的情况下尝试过了,但他们仍然没有对象或日志。
这是为什么?是否可以创建一个简单的对象,供在量角器中使用 executeScript 的测试使用?如果没有,还有另一种不涉及创建服务的方法吗?
我在 Protractor 脚本中使用这段代码来查找控制台日志。
browser.manage().logs().get('browser').then(function(browserLog) {
if(browserLog.length > 0) {
console.log(browserLog);
}
});
executeScript
在浏览器中运行。如果您希望在您的节点进程中看到日志,它不会在那里。我会在你的浏览器日志中。
Logging 仅显示错误级别的日志。
你需要做的:
browser.executeScript("console.error('test')");
我在量角器脚本中的 describe
中有这段代码,用于测试 angular js 应用程序。
beforeEach(function() {
browser.get('index.html#/device_list');
browser.executeScript("chrome.bluetooth = {};");
browser.executeScript("console.log('test')");
browser.executeScript("alert('test')");
});
如果没有此代码,测试 运行 会按预期失败。当我添加此代码并且 运行 未创建对象的脚本时,不会打印控制台日志但会创建警报(并按预期抛出异步错误)。
我已经在没有警报的情况下尝试过了,但他们仍然没有对象或日志。
这是为什么?是否可以创建一个简单的对象,供在量角器中使用 executeScript 的测试使用?如果没有,还有另一种不涉及创建服务的方法吗?
我在 Protractor 脚本中使用这段代码来查找控制台日志。
browser.manage().logs().get('browser').then(function(browserLog) {
if(browserLog.length > 0) {
console.log(browserLog);
}
});
executeScript
在浏览器中运行。如果您希望在您的节点进程中看到日志,它不会在那里。我会在你的浏览器日志中。
Logging 仅显示错误级别的日志。
你需要做的:
browser.executeScript("console.error('test')");