当 karate-config.js 失败时,它会为每个功能打印错误
When karate-config.js fails it prints error for each feature
空手道网版 0.9.2
每当我的 karate-config.js
评估失败时,它会打印:
16:49:28.753 [ForkJoinPool-1-worker-1] ERROR com.intuit.karate - evaluation of 'karate-config.js' failed: javascript function call failed: unexpected 'configure' key: 'followRedirectss'
16:49:28.761 [ForkJoinPool-1-worker-1] ERROR com.intuit.karate - javascript function call failed: unexpected 'configure' key: 'followRedirectss'
16:49:28.762 [ForkJoinPool-1-worker-1] ERROR com.intuit.karate - failed function body: function fn(){
<< MY SUPER AMAZING SCRIPT HERE >>
}
注意这里我故意用小错误失败只是为了挑起它^
错误发生后,它会为我拥有的每个功能文件中的每个场景打印它,因此有 55 个功能文件和 304 个场景,空手道-config.js 有 104 行,你可以想象这会很快变得糟糕.
因此 karate-config 5 行长且有意失败 + 2 个具有单一场景的功能看起来像这样:
Generating a RSA private key
.+++++++++++++++++++++++++++
...+++++++++++++++++++++++++++
writing new private key to 'key.pem'
-----
17:06:36.217 [main] INFO com.intuit.karate.netty.Main - Karate version: 0.9.2
17:06:36.426 [main] INFO com.intuit.karate.Runner - Karate version: 0.9.2
17:06:37.434 [ForkJoinPool-1-worker-1] ERROR com.intuit.karate - javascript function call failed: unexpected 'configure' key: 'followRedirectss'
17:06:37.435 [ForkJoinPool-1-worker-1] ERROR com.intuit.karate - failed function body: function fn(){
karate.configure('followRedirectss', false);
// imagine having additional ~100 lines here
// and additional 54 features
}
17:06:37.436 [ForkJoinPool-1-worker-1] ERROR com.intuit.karate - evaluation of 'karate-config.js' failed: javascript function call failed: unexpected 'configure' key: 'followRedirectss'
17:06:37.554 [pool-1-thread-1] INFO com.intuit.karate.Runner - <<fail>> feature 1 of 2: src/features/null/null.feature
---------------------------------------------------------
feature: src/features/null/null.feature
report: target/src.features.null.null.json
scenarios: 1 | passed: 0 | failed: 1 | time: 0.0000
---------------------------------------------------------
17:06:37.584 [ForkJoinPool-1-worker-1] ERROR com.intuit.karate - javascript function call failed: unexpected 'configure' key: 'followRedirectss'
17:06:37.585 [ForkJoinPool-1-worker-1] ERROR com.intuit.karate - failed function body: function fn(){
karate.configure('followRedirectss', false);
// imagine having additional ~100 lines here
// and additional 54 features
}
17:06:37.586 [ForkJoinPool-1-worker-1] ERROR com.intuit.karate - evaluation of 'karate-config.js' failed: javascript function call failed: unexpected 'configure' key: 'followRedirectss'
17:06:37.589 [pool-1-thread-1] INFO com.intuit.karate.Runner - <<fail>> feature 2 of 2: src/features/null/null.1.feature
---------------------------------------------------------
feature: src/features/null/null.1.feature
report: target/src.features.null.null.1.json
scenarios: 1 | passed: 0 | failed: 1 | time: 0.0000
---------------------------------------------------------
Karate version: 0.9.2
======================================================
elapsed: 1.16 | threads: 1 | thread time: 0.00
features: 2 | ignored: 0 | efficiency: 0.00
scenarios: 2 | passed: 0 | failed: 2
======================================================
failed features:
src.features.null.null: null.feature:3 - evaluation of 'karate-config.js' failed: javascript function call failed: unexpected 'configure' key: 'followRedirectss'
src.features.null.null.1: null.1.feature:3 - evaluation of 'karate-config.js' failed: javascript function call failed: unexpected 'configure' key: 'followRedirectss'
Exception in thread "main" picocli.CommandLine$ExecutionException: there are test failures
at com.intuit.karate.netty.Main.handleExecutionException(Main.java:133)
at picocli.CommandLine.parseWithHandlers(CommandLine.java:1157)
at com.intuit.karate.netty.Main.main(Main.java:139)
有什么方法可以避免这种情况并使空手道失败-config.js 导致 运行 一起停止?
如你所知,karate-config.js
在每个场景之前执行。这被认为是一个问题 "catastrophic"。空手道旨在尝试进入下一个场景。
随时提出功能请求,甚至提供修复 - 但我的猜测是因为 callSingle()
的概念,很难有适当的逻辑来执行您的请求。
我个人认为这种行为是可以接受的,如果 karate-config.js
失败了 - 你必须尽快修复它。您始终可以使用 JUnit 运行程序或 IDE 集成来处理一个功能并在继续使用整个套件之前解决此问题。
空手道网版 0.9.2
每当我的 karate-config.js
评估失败时,它会打印:
16:49:28.753 [ForkJoinPool-1-worker-1] ERROR com.intuit.karate - evaluation of 'karate-config.js' failed: javascript function call failed: unexpected 'configure' key: 'followRedirectss'
16:49:28.761 [ForkJoinPool-1-worker-1] ERROR com.intuit.karate - javascript function call failed: unexpected 'configure' key: 'followRedirectss'
16:49:28.762 [ForkJoinPool-1-worker-1] ERROR com.intuit.karate - failed function body: function fn(){
<< MY SUPER AMAZING SCRIPT HERE >>
}
注意这里我故意用小错误失败只是为了挑起它^
错误发生后,它会为我拥有的每个功能文件中的每个场景打印它,因此有 55 个功能文件和 304 个场景,空手道-config.js 有 104 行,你可以想象这会很快变得糟糕.
因此 karate-config 5 行长且有意失败 + 2 个具有单一场景的功能看起来像这样:
Generating a RSA private key
.+++++++++++++++++++++++++++
...+++++++++++++++++++++++++++
writing new private key to 'key.pem'
-----
17:06:36.217 [main] INFO com.intuit.karate.netty.Main - Karate version: 0.9.2
17:06:36.426 [main] INFO com.intuit.karate.Runner - Karate version: 0.9.2
17:06:37.434 [ForkJoinPool-1-worker-1] ERROR com.intuit.karate - javascript function call failed: unexpected 'configure' key: 'followRedirectss'
17:06:37.435 [ForkJoinPool-1-worker-1] ERROR com.intuit.karate - failed function body: function fn(){
karate.configure('followRedirectss', false);
// imagine having additional ~100 lines here
// and additional 54 features
}
17:06:37.436 [ForkJoinPool-1-worker-1] ERROR com.intuit.karate - evaluation of 'karate-config.js' failed: javascript function call failed: unexpected 'configure' key: 'followRedirectss'
17:06:37.554 [pool-1-thread-1] INFO com.intuit.karate.Runner - <<fail>> feature 1 of 2: src/features/null/null.feature
---------------------------------------------------------
feature: src/features/null/null.feature
report: target/src.features.null.null.json
scenarios: 1 | passed: 0 | failed: 1 | time: 0.0000
---------------------------------------------------------
17:06:37.584 [ForkJoinPool-1-worker-1] ERROR com.intuit.karate - javascript function call failed: unexpected 'configure' key: 'followRedirectss'
17:06:37.585 [ForkJoinPool-1-worker-1] ERROR com.intuit.karate - failed function body: function fn(){
karate.configure('followRedirectss', false);
// imagine having additional ~100 lines here
// and additional 54 features
}
17:06:37.586 [ForkJoinPool-1-worker-1] ERROR com.intuit.karate - evaluation of 'karate-config.js' failed: javascript function call failed: unexpected 'configure' key: 'followRedirectss'
17:06:37.589 [pool-1-thread-1] INFO com.intuit.karate.Runner - <<fail>> feature 2 of 2: src/features/null/null.1.feature
---------------------------------------------------------
feature: src/features/null/null.1.feature
report: target/src.features.null.null.1.json
scenarios: 1 | passed: 0 | failed: 1 | time: 0.0000
---------------------------------------------------------
Karate version: 0.9.2
======================================================
elapsed: 1.16 | threads: 1 | thread time: 0.00
features: 2 | ignored: 0 | efficiency: 0.00
scenarios: 2 | passed: 0 | failed: 2
======================================================
failed features:
src.features.null.null: null.feature:3 - evaluation of 'karate-config.js' failed: javascript function call failed: unexpected 'configure' key: 'followRedirectss'
src.features.null.null.1: null.1.feature:3 - evaluation of 'karate-config.js' failed: javascript function call failed: unexpected 'configure' key: 'followRedirectss'
Exception in thread "main" picocli.CommandLine$ExecutionException: there are test failures
at com.intuit.karate.netty.Main.handleExecutionException(Main.java:133)
at picocli.CommandLine.parseWithHandlers(CommandLine.java:1157)
at com.intuit.karate.netty.Main.main(Main.java:139)
有什么方法可以避免这种情况并使空手道失败-config.js 导致 运行 一起停止?
如你所知,karate-config.js
在每个场景之前执行。这被认为是一个问题 "catastrophic"。空手道旨在尝试进入下一个场景。
随时提出功能请求,甚至提供修复 - 但我的猜测是因为 callSingle()
的概念,很难有适当的逻辑来执行您的请求。
我个人认为这种行为是可以接受的,如果 karate-config.js
失败了 - 你必须尽快修复它。您始终可以使用 JUnit 运行程序或 IDE 集成来处理一个功能并在继续使用整个套件之前解决此问题。