Cucumber - Java 测试

要使用 Java 运行 Cucumber 测试,请按照以下步骤操作。

步骤 1 −安装 Java −

环境变量

步骤 2 −安装 Eclipse IDE −

步骤 3 −安装 Maven −

Apache Maven
  • 编辑 Path 变量并包含 Maven。

  • 从 Eclipse 下载 MAVEN 插件

    • 打开 Eclipse。

    • 获取帮助→ Eclipse Marketplace → 搜索 maven → Maven Integration for Eclipse →INSTALL

步骤 4 − 使用 Maven 配置 Cucumber。

  • 创建一个 Maven 项目。

    • 转到文件 → 新建 → 其他 → Maven → Maven 项目 →下一步。

    • 提供组 ID(组 ID 将在所有项目中唯一地标识您的项目)。

    • 提供工件 ID(工件 ID 是 jar 的名称,不带版本。您可以选择任何小写的名称)。

    • 单击"完成"。

Maven Project

步骤 5 − 打开 pom.xml −

  • 转到 Eclipse 左侧的包资源管理器。

  • 展开项目 CucumberTest。

  • 找到 pom.xml 文件。

  • 右键单击并选择选项,使用"文本编辑器"打开。

步骤 6 − 添加 Selenium 依赖项 −这将指示 Maven,哪些 Selenium jar 文件将从中央存储库下载到本地存储库。

  • 以编辑模式打开 pom.xml,在项目标记内创建依赖项标记 (<dependencies></dependencies>)。

  • 在依赖项标记内,创建依赖项标记。 (<dependency></dependency>)

  • 在依赖项标记内提供以下信息。

<dependency> 
   <groupId>org.seleniumhq.selenium</groupId> 
   <artifactId>selenium-java</artifactId> 
   <version>2.47.1</version> 
</dependency>

步骤 7 − 添加 Cucumber-Java 依赖项 − 这将指示 Maven,哪些 Cucumber 文件需要从中央存储库下载到本地存储库。

  • 再创建一个依赖项标签。

  • 在依赖项标签中提供以下信息。

<dependency> 
   <groupId>info.cukes</groupId> 
   <artifactId>cucumber-java</artifactId> 
   <version>1.0.2</version> 
   <scope>test</scope> 
</dependency>

步骤 8 − 添加 Cucumber-JUnit 依赖项 − 这将指示 Maven,哪些 Cucumber JUnit 文件需要从中央存储库下载到本地存储库。

  • 再创建一个依赖项标签。

  • 在依赖项标签内提供以下信息。

<dependency> 
   <groupId>info.cukes</groupId> 
   <artifactId>cucumber-junit</artifactId> 
   <version>1.0.2</version> 
   <scope>test</scope> 
</dependency>

步骤 9− 为 JUnit 添加依赖项 − 这将指示 Maven,哪些 JUnit 文件需要从中央存储库下载到本地存储库。

  • 再创建一个依赖项标签。

  • 在依赖项标签内提供以下信息。

<dependency> 
   <groupId>junit</groupId> 
   <artifactId>junit</artifactId> 
   <version>4.10</version> 
   <scope>test</scope> 
</dependency>

步骤 10 − 验证二进制文件。

  • 成功编辑 pom.xml 后,保存它。

  • 转到项目 → Clean − 这将需要几分钟。

  • 您将能够看到 Maven 存储库。

步骤 11 − 在 src/test/java 下创建一个名为 cucumberJava 的包。

步骤 12 −创建功能文件

  • 选择并右键单击包轮廓。

  • 单击"新建"文件。

  • 为文件命名,例如 cucumberJava.feature

  • 在文件中写入以下文本并保存。

    功能: CucumberJava

    场景: 存在登录功能

    假设我已打开浏览器

    当我打开 Facebook 网站时

    然后登录按钮应该退出

步骤 13 − 创建步骤定义文件 −

  • 选择并右键单击包轮廓。

  • 单击"新建"文件。

  • 为文件名命名,例如 annotation.java

  • 在文件中写入以下文本并保存。

package CucumberJava; 

import org.openqa.selenium.By; 
import org.openqa.selenium.WebDriver; 
import org.openqa.selenium.firefox.FirefoxDriver; 

import cucumber.annotation.en.Given; 
import cucumber.annotation.en.Then; 
import cucumber.annotation.en.When; 

public class cucumberJava { 
   WebDriver driver = null; 
	
   @Given("^I have open the browser$") 
   public void openBrowser() { 
      driver = new FirefoxDriver(); 
   } 
	
   @When("^I open Facebook website$") 
   public void goToFacebook() { 
      driver.navigate().to("https://www.facebook.com/"); 
   } 
	
   @Then("^Login button should exits$") 
   public void loginButton() { 
      if(driver.findElement(By.id("u_0_v")).isEnabled()) { 
         System.out.println("Test 1 Pass"); 
      } else { 
         System.out.println("Test 1 Fail"); 
      } 
      driver.close(); 
   } 
}

步骤 14 − 创建一个运行器类文件。

  • 选择并右键单击包大纲。

  • 单击"新建"文件。

  • 将文件名命名为 runTest.java

  • 在文件中写入以下文本并保存。

package cucumberJava;

import org.junit.runner.RunWith;
import cucumber.junit.Cucumber;

@RunWith(Cucumber.class)
@Cucumber.Options(format = {"pretty", "html:target/cucumber"})

public class runTest { }

步骤 15 −使用选项运行测试

  • 从包资源管理器中选择 runTest.java 文件。

  • 右键单击并选择选项 Run as

  • 选择 JUnit 测试。

执行后,您将观察到以下情况 −

  • 将打开 Firefox Web 浏览器实例。

  • 它将在浏览器上打开 Facebook 登录页面。

  • 它将检测登录按钮。

  • 浏览器将关闭。

  • 在 JUnit 窗口中,您将看到一个带有绿色勾号的场景,表示测试执行成功。