данные, управляемые в условной логике, не работают должным образом - PullRequest
1 голос
/ 28 июня 2019

Я бы хотел протестировать управляемые данными другие файлы объектов в условной логике (в нормальном языке программирования есть if - else if - else if - else, но, возможно, не поддерживается в карате более двух условий).

Вот мой демонстрационный файл функций:

Feature: conditional logic call demo

  Scenario:

    * def switchVar1 = 1
    * def switchVar2 = 2

    * table testVars
    |switchVar1|switchVar2|
    |'theOne1'  | 'theTwo1' |
    |'theOne2'  | 'theTwo2' |


# here I can not do data-driven test the feature file: 'callUsage/module1/demo_module1.feature' 
 * eval if(switchVar1 == 1) 
     karate.call('classpath:callUsage/module1/demo_module1.feature') testVars

журнал ошибок

flow.feature:30 - javascript evaluation failed: if(switchVar1 == 1) karate.call('classpath:callUsage/module1/demo_module1.feature') testVars, <eval>:1:84 Expected ; but found testVars
if(switchVar1 == 1) karate.call('classpath:callUsage/module1/demo_module1.feature') testVars
                                                                                    ^ in <eval> at line number 1 at column number 84

1 Ответ

1 голос
/ 28 июня 2019

передача значения в karate.call отличается от call, так как karate.call должна вызываться как функция

попробуй,

* eval if(switchVar1 == 1) karate.call('<FILE_PATH>', testVars) 

https://github.com/intuit/karate#karate-call

...