#maven #cucumber
#maven #cucumber
Вопрос:
Я новичок в Maven и не могу написать шаги для функции cucumber ниже
Особенность: Случайная строка. Сценарий: Группа без захвата, учитывая, что у меня красивый дом, учитывая, что у меня привлекательный дом, учитывая, что у меня большой дом
Ответ №1:
Я добавил код проекта, а также изображение структуры проекта maven ниже. Я считаю, что вы должны посмотреть несколько кратких руководств, связанных с cucumber basic. Чтобы вы понимали ключевые слова, которые мы обычно используем при создании файла функций. Если у вас есть какие-либо другие вопросы, тогда дайте мне знать, сэр. Я рад вам помочь.
Runner.java
package runners;
import io.cucumber.testng.AbstractTestNGCucumberTests;
import io.cucumber.testng.CucumberOptions;
@CucumberOptions(features="features",glue="stepdefs")
public class Runner extends AbstractTestNGCucumberTests
{
}
StepDefinition.java
package stepdefs;
import java.util.ArrayList;
import java.util.List;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import io.cucumber.java.en.Given;
import io.cucumber.java.en.When;
public class StepDefinition
{
List<String> expectedList = new ArrayList<String>();
String actualRandomString = "";
@Given("^I have a random string - (.*)$")
public void given(String randomString)
{
actualRandomString = randomString.trim();
}
@When("I check for the non matching group")
public void when()
{
String regex = "I have a(n)? (beautiful|attractive) home";
System.out.printf("Regex: %s, Input: %s%n", regex, actualRandomString);
Matcher matcher = Pattern.compile(regex).matcher(actualRandomString);
while (matcher.find()) {
System.out.printf("Group zero, start= %s, end= %s, match= '%s'%n",
matcher.start(), matcher.end(), matcher.group());
for (int i = 1; i <= matcher.groupCount(); i ) {
System.out.printf("Group number: %s, start: %s, end: %s, match= '%s'%n%n",
i, matcher.start(i), matcher.end(i), matcher.group(i));
}
}
}
@When("I should get the desired outcome")
public void then()
{
System.out.println("Verifying the outcome");
}
}
случайная строка.функция
Feature: Random String
I want to use this feature file to test the functionality of random strings
Scenario Outline: Verification of random string for non matching groups
Given I have a random string - <Random Strings>
When I check for the non matching group
Then I should get the desired outcome
Examples:
| Random Strings |
|I have a beautiful home|
|I have an attractive home|
|I have a big home|
pom.xml
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>example</groupId>
<artifactId>test</artifactId>
<version>0.0.1-SNAPSHOT</version>
<dependencies>
<!-- Cucumber Java Maven Dependency -->
<dependency>
<groupId>io.cucumber</groupId>
<artifactId>cucumber-java</artifactId>
<version>5.6.0</version>
</dependency>
<dependency>
<groupId>io.cucumber</groupId>
<artifactId>cucumber-testng</artifactId>
<version>5.6.0</version>
</dependency>
<dependency>
<groupId>org.testng</groupId>
<artifactId>testng</artifactId>
<version>6.9.10</version>
</dependency>
</dependencies>
</project>
Комментарии:
1. Большое спасибо.. Это сработало.. Я просматриваю видео и учебные пособия, чтобы изучить Cucumber..