Browserstack 报告成功状态,但实际上测试失败
Browserstack reports successfull status, but in fact test fails
我在使用 Webdriver.io+Browserstack 时遇到了问题。当我在浏览器(自动化服务)中进行 运行 测试时,没问题,我看到了正确的状态 http://prntscr.com/ijw1rr , but when I'm running for mobile apps tests (App Automate) it shows me always Completed http://prntscr.com/ijw277
我应该在 wdio.conf.js 的什么地方粘贴来自 REST API 文档 REST API 的请求?
我也在这里找到了类似的东西,但不知道如何使用它。
这是一个适用于我的示例
afterTest: function (test) {
var session = browser.sessionId;
var request = require("request");
request({uri: "https:/<user>:<key>@api.browserstack.com/app-automate/sessions/"+session+".json", method:"PUT", form:{"status":"completed","reason":""}});
}
但这就像硬编码(每次都会完成或失败,取决于我指定的内容),我需要以某种方式填充此值取决于断言或测试是否失败。
您可以使用以下代码块在 browserstack 上将测试标记为失败
afterTest: test => {
if (!test.passed) {
request({
uri: `https://${user}:${key}@api.browserstack.com/app-automate/sessions/${browser.sessionId}.json`,
method:'PUT',
form:{ 'status':'error','reason': errors.join(' | ') },
})
}
此 api 调用仅在测试失败时调用。所以所有完成的测试都将是绿色的,失败的将被标记为 red/error/failed.
我在使用 Webdriver.io+Browserstack 时遇到了问题。当我在浏览器(自动化服务)中进行 运行 测试时,没问题,我看到了正确的状态 http://prntscr.com/ijw1rr , but when I'm running for mobile apps tests (App Automate) it shows me always Completed http://prntscr.com/ijw277
我应该在 wdio.conf.js 的什么地方粘贴来自 REST API 文档 REST API 的请求?
我也在这里找到了类似的东西,但不知道如何使用它。
这是一个适用于我的示例
afterTest: function (test) {
var session = browser.sessionId;
var request = require("request");
request({uri: "https:/<user>:<key>@api.browserstack.com/app-automate/sessions/"+session+".json", method:"PUT", form:{"status":"completed","reason":""}});
}
但这就像硬编码(每次都会完成或失败,取决于我指定的内容),我需要以某种方式填充此值取决于断言或测试是否失败。
您可以使用以下代码块在 browserstack 上将测试标记为失败
afterTest: test => {
if (!test.passed) {
request({
uri: `https://${user}:${key}@api.browserstack.com/app-automate/sessions/${browser.sessionId}.json`,
method:'PUT',
form:{ 'status':'error','reason': errors.join(' | ') },
})
}
此 api 调用仅在测试失败时调用。所以所有完成的测试都将是绿色的,失败的将被标记为 red/error/failed.