请注意,我不是 Java 大师。我可能没有使用正确的术语,我在 RFT 中即时学习 java。下面描述的内容与所述完全一样。
在 ruby 中,我们可以像这样编写代码
(code to execute) if (condition)
我也想做同样的事情,以便我的 RFT(Rational Functional Tester)代码易于阅读。我将以一种看起来像的方式调用我的自定义函数
findANDclick(new String[]{"id", "menuButton"});
findANDclick(new String[]{"src", ".*homeicon_calendar.*"});
findANDclick(new String[]{"src", ".*cycle_templates.*"});
但是整个 RFT 脚本需要完成并且在任何 findANDclick 函数“失败”的情况下不要执行任何其他代码。该函数在 html 页面中搜索一个对象,如果它没有找到它throws new Exception
通过
throw new Exception("findANDclick: the object was not found");
所以findANDclick 的实例只会抛出一个错误,所以下一个 findANDclick 会被执行。但是,如果没有找到并单击上一个对象,则继续寻找下一个对象是没有意义的。
我在想我可以将变量continue
设置为 true,如果抛出异常,findANDclick 会将其更新为 false。然后我可以做类似的事情
if (continue) { findANDclick(new String[]{"id", "menuButton"});}
if (continue) { findANDclick(new String[]{"src", ".*homeicon_calendar.*"}); }
if (continue) { findANDclick(new String[]{"src", ".*cycle_templates.*"}); }
如果我能做类似的事情会很棒
{ findANDclick(new String[]{"id", "menuButton"}); } if (continue)
{ findANDclick(new String[]{"src", ".*homeicon_calendar.*"}); } if (continue)
{ findANDclick(new String[]{"src", ".*cycle_templates.*"}); } if (continue)