【发布时间】:2019-03-27 17:03:35
【问题描述】:
我有一个用 Java 编写的 UI 测试用例,它识别 userName 文本字段并在其中输入一些值。我正在尝试实现一个 try-catch 块,以便如果 try 块失败,它会执行 catch 块。但是我的代码根本没有执行 catch 块。
我尝试在 catch 块中使用 console.log 或 assert.fail 来查看它是否打印了消息。但是执行不会去 catch 块,一旦 try 块失败,浏览器就会关闭。
try {
//retrieves Xpath of userName which is incorrect.
return browser.setValue(this.getSelector("login_userId_txtbox"), datatablevalue.userName);
} catch (er) {
//assert.fail("UserId xpath is incorrect", er);
return console.log("------>error in XPATH", er);
}
实际结果:catch 块永远不会被执行。
预期结果:如果 xpath 不匹配,它应该在 catch 块中打印 console.log 消息。
【问题讨论】:
-
问题中的“Java”,标签中的“Javascript”——它是什么?
-
.setValue是框架中的方法吗?您正在将定位器和值传递给该方法。并确定您在该方法中正在做什么。 -
Yes .setValue 设置从定位器传递的值。我想知道 - 如果传递的值不正确,它应该去捕获块并打印控制台消息。它是基于 JS 的框架。