根据wdio发现的文档here我应该被允许使用
来处理错误 browser.on('error', (err)=>{ console.log('do something') })
然而,当我这样做时,没有任何事情发生,当测试失败时,它不会被执行,这是我的理解应该发生的。
我这样做错了吗?如果是这样,我如何使用.on
函数来处理测试失败或错误?我知道我可以使用try / catch块,但是我希望每次测试失败或出现错误时都会调用更干净的东西。
编辑:根据要求添加了一些代码以显示错误
browser.on('error', () => {
console.log('do something about the error')
})
it('should do something', function () {
const nonExistingElement = browser.getText('.idontexist')
assert.deepStrictEqual(nonExistingElement, 'Say something that isnt there')
})
我想要做的是浏览器的回调函数。每当出现错误或测试失败时执行,在这种情况下,我试图得到一个不存在的元素的文本,所以很自然我会得到整个
元素(“。idontexist”)在500ms后仍然不存在
但在此之前,我还想得到:
对错误采取措施
到目前为止,替代方法是在我的块中放置一个try和catch块并执行browser.emit('error', 'Error')
,我想避免这样做,这样我就不必重复了单一测试。