В своих сценариях тестирования я использую функцию «karate.abort ()», и это пропускает следующие шаги, если условие выполнено. Но это означает, что мой полный тест не прошел из-за пропущенных шагов.
Есть ли способ пометить тестовый пример как ПРОШЕЛ, если вызывается karate.abort () и следующие шаги пропускаются?
Пример:
Краткое описание сценария: регистрация Lambda API при недопустимом ARN
Given url ApiAdminURL
And path AdminPath
And header apigateway-apikey = apiGatewayKey
And header apigateway-basepath = 'lambda-migration'
* json myReq = read('swagger-lambda.json')
* set myReq.apiConf.subscriptionTiers = <subscriptionTiers>
* set myReq.swagger.info.title = 'REGTEST_AUTO_Regression_Lambda_Quote_Function'
* set myReq.swagger.basePath = 'lambda-migration'
* set myReq.swagger.info.version = 'v1'
* set myReq.swagger.x-lambda-arn = '<arn>'
And request myReq
When method post
Then status <responseCode>
* eval if (responseStatus == 400) karate.abort()
* call read('Lambda-Sleep.feature')
* call read('Lambda-APIDefinition.feature')
* def responsefromsubscriber = call read('Lambda-Subscriber.feature')
{accessTokenforInvokation: '#(accessTokenforInvokation)', applicationId: '#
(applicationId)', subscribeToken: '#(subscribeToken)'}
* def AccessTokenforInvokation =
responsefromsubscriber.accessTokenforInvokation
* def ApplicationId = responsefromsubscriber.applicationId
* def SubscribeToken = responsefromsubscriber.subscribeToken
Это ошибка, которая была исправлена в выпуске патча: https://github.com/intuit/karate/issues/464
Можете ли вы просто обновить свою версию Karate до 0.8.0.1 и попробовать еще раз.
Но сборка завершается ошибкой: [ОШИБКА] Не удалось выполнить цель проекта myproject: не удалось разрешить зависимости для проекта com.mycompany: myproject: jar: 0.8.0.1: Не удалось собрать зависимости в com.intuit.karate: karate- apache: jar: 0.8.0.1: Не удалось прочитать дескриптор артефакта для com.intuit.karate: karate-apache: jar: 0.8.0.1: Не удалось передать артефакт com.intuit.karate: karate-apache: pom: 0.8.0.1 из / к центральному (repo.maven.apache.org/maven2): подключиться к repo.maven.apache.org:443 [repo.maven.apache.org/151.101.24.215] не удалось: время ожидания подключения истекло: подключение -> [Справка 1]
@SnehaShukla, извините, в вашем окружении должна быть проблема с сетью или прокси: mvnrepository.com/artifact/com.intuit.karate/karate-apache/…
Пробовал обновить версию 0.8.0.1 в pom.xml, как показано ниже: <properties> <project.build.sourceEncoding> UTF-8 </project.build.sourceEnc oding> <java.version> 1.8 </java.version > <maven.compiler.version> 3.6.0 </maven.compiler.version> <karate.version> 0.8.0.1 </karate.version> </properties>