Skip to content

Commit 396fad2

Browse files
committed
prepare release v0.2.7
1 parent 51dce38 commit 396fad2

File tree

8 files changed

+16
-12
lines changed

8 files changed

+16
-12
lines changed

README.md

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,7 @@ This is all that you need within your `<dependencies>`:
9595
<dependency>
9696
<groupId>com.intuit.karate</groupId>
9797
<artifactId>karate-junit4</artifactId>
98-
<version>0.2.7-SNAPSHOT</version>
98+
<version>0.2.7</version>
9999
<scope>test</scope>
100100
</dependency>
101101
```
@@ -116,7 +116,7 @@ You can replace the values of 'com.mycompany' and 'myproject' as per your needs.
116116
mvn archetype:generate \
117117
-DarchetypeGroupId=com.intuit.karate \
118118
-DarchetypeArtifactId=karate-archetype \
119-
-DarchetypeVersion=0.2.7-SNAPSHOT \
119+
-DarchetypeVersion=0.2.7 \
120120
-DgroupId=com.mycompany \
121121
-DartifactId=myproject
122122
```
@@ -332,7 +332,7 @@ import static org.junit.Assert.assertTrue;
332332
import org.junit.Test;
333333

334334
@CucumberOptions(tags = {"~@ignore"})
335-
public class AllParallel {
335+
public class TestParallel {
336336

337337
@Test
338338
public void testParallel() {
@@ -343,11 +343,12 @@ public class AllParallel {
343343
}
344344
```
345345
Things to note:
346-
* You don't use a JUnit runner, and you write a plain vanilla JUnit test using the `CucumberRunner` in `karate-core`.
346+
* You don't use a JUnit runner, and you write a plain vanilla JUnit test (it could very well be TestNG or plain old Java) using the `CucumberRunner` in `karate-core`.
347347
* You can use the returned `KarateStats` to check if any scenarios failed.
348348
* JUnit XML reports will be generated in `target/surefire-reports/` and CI tools should pick them up automatically.
349349
* When using Maven, you must disable the JUnit default XML that normally gets generated using `<disableXmlReport>` (refer to the previous section on [test reports](#test-reports)).
350350
* No other reports will be generated. If you specify a `plugin` option via the `@CucumberOptions` annotation (or the command-line) it will be ignored.
351+
* Other options passed to `@CucumberOptions` would work as expected, provided you point the `CucumberRunner` to the class having the annotation.
351352
* For convenience, some stats are logged to the console when execution completes, which should look something like this:
352353
```
353354
======================================================
@@ -547,8 +548,9 @@ The following table summmarizes some key differences between Cucumber and Karate
547548
**More Step Definitions Needed** | **Yes**. You need to keep implementing them as your functionality grows. [This can get very tedious](https://angiejones.tech/rest-assured-with-cucumber-using-bdd-for-web-services-automation#comment-40). | **No**.
548549
**Layers of Code to Maintain** | **2** Layers. The [Gherkin](https://cucumber.io/docs/reference#gherkin) spec or `*.feature` files make up one layer, and you will also have the corresponding Java step-definitions. | **1** Layer. Only Karate-script (based on Gherkin), and no Java code needs to be implemented.
549550
**Readable Specification** | **Yes**. Cucumber will read like natural language _if_ you implement the step-definitions right. | **No**. Although Karate is simple, and a [true DSL](https://ayende.com/blog/2984/dsl-vs-fluent-interface-compare-contrast), it is ultimately a mini-programming language. But it is perfect for testing web-services at the level of HTTP requests and responses.
550-
**Re-Use Feature Files** | **No**. Cucumber does not support being able to call (and thus re-use) other `*.feature` files from a test-script. | [**Yes**](#calling-other-feature-files)
551+
**Re-Use Feature Files** | **No**. Cucumber does not support being able to call (and thus re-use) other `*.feature` files from a test-script. | [**Yes**](#calling-other-feature-files).
551552
**Dynamic Data-Driven Testing** | **No**. The [`Scenario Outline:`](#the-cucumber-way) feature of Cucumber expects the `Examples:` to contain a fixed set of rows. | **Yes**. Karate's support for calling other `*.feature` files allows you to use a [JSON array as the data-source](#data-driven-features).
553+
**Parallel Execution** | **No**. There are various challenges (especially reporting) and you can find [various](https://opencredo.com/test-automation-concepts-parallel-test-execution/) [threads](http://stackoverflow.com/questions/41034116/how-to-execute-cucumber-feature-file-parallel) and third-party [projects](https://github.com/temyers/cucumber-jvm-parallel-plugin) on the internet that attempt to close this gap. | [**Yes**](#parallel-execution).
552554
**BDD Syntax** | **Yes** | **Yes**
553555

554556
One nice thing about the design of the underlying Cucumber framework is that
@@ -569,6 +571,8 @@ You can read more about the Given-When-Then convention at the
569571
Since Karate is based on Cucumber, you can also employ [data-driven](#data-driven-tests)
570572
techniques such as expressing data-tables in test scripts.
571573

574+
Another good thing that Karate inherits is the nice IDE support for Cucumber that [IntelliJ](https://plugins.jetbrains.com/plugin/7212-cucumber-for-java) and [Eclipse](https://cucumber.io/cucumber-eclipse/) have. So you can do things like right-click and run a `*.feature` file (or scenario) without needing to use a JUnit runner.
575+
572576
With the formalities out of the way, let's dive straight into the syntax.
573577

574578
# Setting and Using Variables

karate-archetype/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<parent>
66
<groupId>com.intuit.karate</groupId>
77
<artifactId>karate-parent</artifactId>
8-
<version>0.2.7-SNAPSHOT</version>
8+
<version>0.2.7</version>
99
</parent>
1010
<artifactId>karate-archetype</artifactId>
1111
<packaging>jar</packaging>

karate-archetype/src/main/resources/archetype-resources/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
<dependency>
1818
<groupId>com.intuit.karate</groupId>
1919
<artifactId>karate-junit4</artifactId>
20-
<version>0.2.7-SNAPSHOT</version>
20+
<version>0.2.7</version>
2121
<scope>test</scope>
2222
</dependency>
2323
</dependencies>

karate-core/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<parent>
66
<groupId>com.intuit.karate</groupId>
77
<artifactId>karate-parent</artifactId>
8-
<version>0.2.7-SNAPSHOT</version>
8+
<version>0.2.7</version>
99
</parent>
1010
<artifactId>karate-core</artifactId>
1111
<packaging>jar</packaging>

karate-demo/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<parent>
66
<groupId>com.intuit.karate</groupId>
77
<artifactId>karate-parent</artifactId>
8-
<version>0.2.7-SNAPSHOT</version>
8+
<version>0.2.7</version>
99
</parent>
1010

1111
<artifactId>karate-demo</artifactId>

karate-junit4/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<parent>
66
<groupId>com.intuit.karate</groupId>
77
<artifactId>karate-parent</artifactId>
8-
<version>0.2.7-SNAPSHOT</version>
8+
<version>0.2.7</version>
99
</parent>
1010
<artifactId>karate-junit4</artifactId>
1111
<packaging>jar</packaging>

karate-testng/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<parent>
66
<groupId>com.intuit.karate</groupId>
77
<artifactId>karate-parent</artifactId>
8-
<version>0.2.7-SNAPSHOT</version>
8+
<version>0.2.7</version>
99
</parent>
1010
<artifactId>karate-testng</artifactId>
1111
<packaging>jar</packaging>

pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44

55
<groupId>com.intuit.karate</groupId>
66
<artifactId>karate-parent</artifactId>
7-
<version>0.2.7-SNAPSHOT</version>
7+
<version>0.2.7</version>
88
<packaging>pom</packaging>
99

1010
<name>${project.artifactId}</name>

0 commit comments

Comments
 (0)