不使用另一个特征文件调用的条件

Condition without using another feature file call

使用空手道,我想知道是否可以设置 If 条件而无需调用不同的特征文件(并且不使用 JavaScript)-> 在条件中使用空手道特征文件代码块:

例如应该可以做类似的事情吗?

* if (variable==1) {
     * delay(3000)
     * retry().click('{button[3]/span}Text1')
     } 
     {
     * retry().click('{button[2]/span}Text2')
     * delay(3000)
      } 

是否可以在不使用只有几行代码的单独功能文件的情况下以某种方式这样做?你有什么建议吗?

是的,使用 eval 关键字 - 您可以在多行上执行“纯”JS:

* eval
"""
  if (variable == 1) {
    delay(3000);
    retry().click('{button[3]/span}Text1');
  } else {
   retry().click('{button[2]/span}Text2');
   delay(3000);
  }
"""

顺便说一下,由于您似乎在做很多高级测试,我建议您开始使用 1.0 RC 版本,这样您就不会遇到任何意外,也可以提供反馈:https://github.com/intuit/karate/wiki/1.0-upgrade-guide