Releases: karatelabs/karate
v1.2.0.RC1
This release is for the benefit of those blocked by some specific issues.
For what's fixed in this version, look at the issues here that have the fixed
tag. A screen-shot of the 7 issues is shown below for handy reference.
- Maven artifacts
- Standalone JAR (download below)
- ZIP Release (download below)
- Karate-Robot JAR (download below)
Note that the Docker container has not been released.
v1.1.0
No Breaking Changes
Yes really.
Highlights
- fixed: improve memory usage especially for "called" features #1685
- fixed: some nagging issues with concurrent threads and
karate.callSingle()
andcallonce
#1558 - the
@ignore
tag is now "baked-in", and there are some new ones, refer to the docs - and you can "bind" tags to the value of
karate.env
in a very interesting and useful way, refer to the docs - if you use the karate-gatling integration, please scan through the improvements in #1622
Artifacts
- Maven artifacts
- Standalone JAR (download below)
- ZIP Release (download below)
- Karate-Robot JAR (download below)
- Docker image (for Chrome and Distributed test execution)
Contributors
You are all awesome 🙏
@jfougere #1679
@ericdriggs #1666 #1672
@sormuras #1646
@dhamo-pk #1629
@aaronjwhiteside #1624 #1625
@abhi-rao #1611 #1613
@brianngo313 #1599
@BurhanH #1594
@arthur25000 #1584 #1590
@chaudharydeepak #1581
@dinesh19aug #1573 #1585
@ivangsa #1570
@joelpramos #1562 #1603 #1615 #1636 #1637
@babusekaran #1550
@aleruz #1534 #1556
@parched #1529
@workwithprashant #1524
What's Fixed
For a list of all issues closed in this release, go here.
Stay Updated
To keep track of news and releases, follow us on Twitter @KarateDSL or on LinkedIn or by joining this group.
v1.1.0.RC5
This is a Release Candidate for teams to try the version which is "in development" - and identify potential issues or un-intended breaks in functionality.
There are no breaking changes !
Please look at the last 1.1.0.RC3 release for details on what to expect.
There are many small improvements. The highlight of this release is a focus on performance and reduced memory usage.
- Maven artifacts
- Standalone JAR (download below)
- ZIP Release (download below)
- Karate-Robot JAR (download below)
Note that the Docker container has not been released.
To see a list of issues that should be fixed in this version, look at the issues here that have the fixed
tag.
v1.1.0.RC4
This is a Release Candidate for teams to try the version which is "in development" - and identify potential issues or un-intended breaks in functionality.
There are no breaking changes !
Please look at the last 1.1.0.RC3 release for details on what to expect.
We've been trying to fix a particular bug related to the use of karate.callSingle()
and mixing Java code - so this release is mainly for that set of users.
- Maven artifacts
- Standalone JAR (download below)
- ZIP Release (download below)
- Karate-Robot JAR (download below)
Note that the Docker container has not been released.
To see a list of issues that should be fixed in this version, look at the issues here that have the fixed
tag.
v1.1.0.RC3
This is a Release Candidate for teams to try the version which is "in development" - and identify potential issues or un-intended breaks in functionality.
There are no breaking changes !
One significant change is that the @ignore
tag is now "built-in". We decided this made sense after observing 4 years of Karate usage. What this means is that you no-longer need to pass ~@ignore
on the command-line or test-runners, it has become a "baked-in" convention.
Take a moment to review all the "magic" tags in Karate. There are just a few. And note the brand-new tags @env
and @envnot
they can be really useful when you switch environments a lot. They can "bind" or "un-bind" some tests to some environments. You can find the docs here.
In the last release we considered making a breaking change to the path
keyword. We got a lot of feedback and realized a lot of teams used the pattern we were trying to change. Thanks to everyone who provided feedback and proposed alternatives and it helped a lot ! We have a better solution in place.
Perf Testing Improvements
If you use karate-gatling
take some time to read this thread. We've tried to make it easier to re-use existing test-suites as performance-tests by avoiding some configuration or conditional logic you needed to take care of previously. Please do test these improvements out, they can make a big difference - and we need the feedback !
- Maven artifacts
- Standalone JAR (download below)
- ZIP Release (download below)
- Karate-Robot JAR (download below)
Note that the Docker container has not been released.
To see a list of issues that should be fixed in this version, look at the issues here that have the fixed
tag.
v1.1.0.RC2
This is a Release Candidate for teams to try the version which is "in development" - and identify potential issues or un-intended breaks in functionality.
Breaking Changes
The path
keyword will encode the /
character. You do not need to ever include the /
character. Always build path-strings by using the comma-delimited form of path
. Please change your tests to never use the /
character on the right side of the path
keyword.
Before:
* path 'foo/bar/' + someVariable
After:
* path 'foo', 'bar', someVariable
As a convenience, if you have a lot of tests in the old, no-longer-supported form, you can use path raw
to fall-back to the old behavior. But we recommend that you switch to the recommended path
form above to avoid breaking your tests again in the future.
The rationale is that Karate will apply URL-encoding to the path
for all cases, including the /
character. For a detailed discussion, see #1561. Note that url
can be always used if you want to force a specific string, and no URL-encoding will be performed in that case.
- Maven artifacts
- Standalone JAR (download below)
- ZIP Release (download below)
- Karate-Robot JAR (download below)
Note that the Docker container has not been released.
To see a list of issues that should be fixed in this version, look at the issues here that have the fixed
tag.
v1.1.0.RC1
This is a Release Candidate for teams to try the version which is "in development" - and identify potential issues or un-intended breaks in functionality.
- Maven artifacts
- Standalone JAR (download below)
- ZIP Release (download below)
- Karate-Robot JAR (download below)
Note that the Docker container has not been released.
To see a list of issues that should be fixed in this version, go here.
v1.0.1
Bug Fix Release
This fixes a few major bugs in version 1.0.0 (that was released only 3 weeks ago) that only a small proportion of teams would run into. But it is recommended that you upgrade. Those who use karate.callSingle()
should definitely upgrade. Thanks to all those who helped troubleshoot and help us fix these.
The details of the 9 issues closed can be found here.
Those migrating from versions of Karate less than 1.0 - should refer to the upgrade guide.
v1.0.0
Four years in the making - Karate 1.0 is here !
A big Thank You to all users and supporters of Karate ! We have come a long way. Please show your support by adding a ⭐️ to our GitHub page.
Karate has so many useful capabilities ! We created this "map" so that you can see how they come together to solve the test-automation challenges that all teams face.
What's New
A lot. You can get a good summary from this article by Peter Quiel: 7 New Features in Karate Test Automation Version 1.0.
More details are provided in the upgrade guide (see link below).
In short - we successfully migrated the JS engine from Nashorn to GraalVM and were able to re-factor and clean up the code to a large degree.
Breaking Changes
It is highly likely that your tests will continue to work without changes. But there can be breaks depending on how much JavaScript and Java inter-op you are using. Also, Maven and Gradle users have one less dependency to worry about - please look out for that.
The finer details are in this wiki-page: 1.0 Upgrade Guide.
Contributors
We have a record number of pull-requests this time ! A big round of applause 👏 for these open-source heroes !
@maxandersen #1514
@edwardsph #1478 #1479
@pcbue #1468
@jkeys089 #1403
@ivangsa #1396 #1399 #1401 #1402 #1404 #1423 #1427 #1425 #1443 #1444 #1449 #1471 #1477 #1476 #1503
@theathlete3141 #1383 #1408 #1410
@manuarlin #1345
@kruthika16 #1336
@chaudharydeepak #1314 #1316 #1328 #1332 #1334 #1347 #1354 #1400
@liranz10 #1310
@joelpramos #1317 #1339 #1398 #1416 #1429 #1437 #1439 #1438 #1441 #1453 #1454 #1447 #1464 #1472 #1493 #1494 #1496 #1497 #1508 #1513
@douglas-six #1301 #1302 #1323 #1335 #1315
@Nishant-sehgal #1299 #1307 #1318 #1344
@michaelpro1 #1288 #1291
@babusekaran #1275 #1349
@orisvogel #1273
Special thanks to @kirksl who created the Karate Runner Visual Studio Code extension which has crossed 8000 installs to date.
For a list of all issues closed in this release, go here.
To keep track of news and releases, follow us on Twitter @KarateDSL or on LinkedIn by joining this group.
v0.9.6
What's New
- Windows Desktop app automation - Karate Robot - also see the detailed install guide
- Revamped HTML report (see video)
- Intercept browser HTTP requests in Chrome (see video)
configure callSingleCache
- so that you don't need to wait for a "sign-in flow", every time you re-run a test in dev modedriver.inputFile()
- Chrome-native file-upload- WebDriver support for the new (Chromium based) Microsoft Edge browser
- Improved tree walking in UI tests, e.g.
locateAll()
,parent
,children
etc. - Multiple mock files can be combined into one at run-time (thanks @michaelpro1)
- CLI testing support ! See this thread for details
match
can finally be used in JS with all the power you normally have in feature files, see this thread and some extras to introspect object / data types within JS blockscontains deep
for recursive nested JSON matching (see example)
Breaking Changes
match contains
will not recurse nested items any more, usecontains deep
as explained abovekarate.stop()
now takes a mandatory port number argument, so you can call the same (static)cURL
command to resume, e.g.curl localhost:8080
exists()
API refactored for UI tests, see this thread for details- a
match
with a primitive number on the right-hand-side could incorrectly pass, this should be very rare - see this thread for details - again extremely unlikely and rare, but a backslash (
\
) character was getting swallowed in doc-string (triple-quote) sections, so in case you were escaping them, you don't need to any more (commit details)
For a list of all issues closed in this release, go here.
To keep track of news and releases, follow us on Twitter @KarateDSL or on LinkedIn by joining this group.
Contributors
Thanks to the following rock stars for contributions and pull-requests !
@10twenty4
@a-st
@abhi-rao
@babusekaran
@cueo
@michaelpro1
@maxandersen
@kchopperla
@KostasKgr
@ewexlerr
@joelpramos
@kirksl
@luizvaz
Vote for Karate !
Karate is in the running for "Best Open Source Project" in the HackerNoon "Noonies".
Show your appreciation for Karate by voting here: Best Open Source Project
And here for the lead-developer of Karate (Peter Thomas): Contributor of the Year - OPEN SOURCE.
Thanks !