Merge cucumber -> testing

This commit is contained in:
pivovarit
2017-05-07 09:49:36 +02:00
parent 4a3662b4ab
commit 960e8a3b44
11 changed files with 30 additions and 116 deletions
@@ -0,0 +1,15 @@
package com.baeldung.testing.calculator;
import org.junit.runner.RunWith;
import cucumber.api.CucumberOptions;
import cucumber.api.junit.Cucumber;
@RunWith(Cucumber.class)
@CucumberOptions(
features={"classpath:features/calculator.feature", "classpath:features/calculator-scenario-outline.feature"}
, plugin = { "pretty", "json:target/reports/json/calculator.json" }
, glue = {"com.baeldung.cucumber.calculator"}
)
public class CalculatorIntegrationTest {
}
@@ -0,0 +1,38 @@
package com.baeldung.testing.calculator;
import com.baeldung.cucumber.Calculator;
import cucumber.api.java.Before;
import cucumber.api.java.en.Given;
import cucumber.api.java.en.Then;
import cucumber.api.java.en.When;
import org.hamcrest.Matchers;
import org.junit.Assert;
public class CalculatorRunSteps {
private int total;
private Calculator calculator;
@Before
private void init() {
total = -999;
}
@Given("^I have a calculator$")
public void initializeCalculator() throws Throwable {
calculator = new Calculator();
}
@When("^I add (-?\\d+) and (-?\\d+)$")
public void testAdd(int num1, int num2) throws Throwable {
total = calculator.add(num1, num2);
}
@Then("^the result should be (-?\\d+)$")
public void validateResult(int result) throws Throwable {
Assert.assertThat(total, Matchers.equalTo(result));
}
}
@@ -0,0 +1,16 @@
Feature: Calculator
As a user
I want to use a calculator to add numbers
So that I don't need to add myself
Scenario Outline: Add two numbers <num1> & <num2>
Given I have a calculator
When I add <num1> and <num2>
Then the result should be <total>
Examples:
| num1 | num2 | total |
| -2 | 3 | 1 |
| 10 | 15 | 25 |
| 99 | -99 | 0 |
| -1 | -10 | -11 |
@@ -0,0 +1,24 @@
Feature: Calculator
As a user
I want to use a calculator to add numbers
So that I don't need to add myself
Scenario: Add two numbers -2 & 3
Given I have a calculator
When I add -2 and 3
Then the result should be 1
Scenario: Add two numbers 10 & 15
Given I have a calculator
When I add 10 and 15
Then the result should be 25
Scenario: Add two numbers 99 & -99
Given I have a calculator
When I add 99 and -99
Then the result should be 0
Scenario: Add two numbers -1 & -10
Given I have a calculator
When I add -1 and -10
Then the result should be -11