Skip to content

v0.2.8

Compare
Choose a tag to compare
@ptrthomas ptrthomas released this 28 Mar 07:45
· 4539 commits to master since this release

There are no breaking changes.

Enhancements

  • Fixed problems in 'parallel' JUnit XML report, scenario names, scenario outline names, package names now should reflect the reality better. Stats "roll-up" by package correctly now.
  • Much better error reporting - now the log and exception thrown clearly shows the URI (and reason) when things like a connection timeout occur.
  • HTTP status assertion failures also provide more detail, here again the URI and time taken etc.
  • 'Global Configuration' now possible with the introduction of the 'karate.configure' method in JavaScript. See the example below.
  • A common mistake is users thinking that the request keyword represents a variable and trying to do set or def on it. Karate will now provide a helpful error message.
  • Payload logging is no more via the Java utils logging (JUL) which Jersey forces you into by default and which used to appear in System.err. What this means for users is that now logs will be correctly interspersed with test-execution - and troubleshooting logs (especially in JUnit reports) will be much more easier.
  • Added slack support channel on the home page / documentation.
  • More information in the Maven archetype especially for Eclipse users who may otherwise miss that the Cucumber-Eclipse plugin avoids the need for writing a Java test runner.
  • Added demo example for calling Java from Karate scripts (part of the file-upload example).
  • Parallel execution now considered production ready, and added an option to customize the report output directory.

Global Configuration

New karate.configure method which can be used in karate-config.js for 'global' configuration

karate.configure('connectTimeout', 5000);

The effect of the above would be to fail any HTTP call that does not connect within 5 seconds.
The key and value arguments for the karate.configure(key, value) method are the same as documented for configure.