我有一个我不完全知道如何解决的问题。我正在实施E2E测试,其中需要使用硒,单击链接并检查是否将我发送到正确的URL。
这里开始出现问题...
[共有3种可能性,两种链接的混合,仅一种链接或另一种链接。两种类型的链接都没有问题,但是当一种类型的链接在搜索我们用于不在页面中的链接的标识符时,给了我timeoutException。这不是失败,因为这是一种可能的情况,但是我想知道是否有一种方法可以检查它是否找到链接,否则断言该异常被抛出。
我虽然使用runCatching(或尝试catch)等待链接出现,但如果未出现,则测试断言,当我查找该元素时,再次抛出了超时异常。
这种方式对我来说有点难闻,我不知道它是否正确完成。
我不确定我是否正确理解了您的问题,但是您可以使用assertFails断言一段代码会引发异常:
@Test
fun test() {
val exception = assertFails {
// some code that should throw
}
// some more assertions on the type of exception etc. may go here
}