• Selenium Video Tutorials

Selenium - JUnit 报告



JUnit 可用于创建详细的自动化测试报告。它是一个开源框架,可以与 Selenium 测试集成并用于报告目的。

创建 JUnit 报告的先决条件

创建 JUnit 报告的步骤

步骤 1 - 创建一个 Maven 项目,并为以下项目在 pom.xml 文件中添加适当的依赖项:

步骤 2 - 创建一个包含以下示例实现的 JUnit 测试类,我们将首先单击新建用户按钮,然后验证欢迎页面上的文本欢迎,登录

Selenium JUnit Report 1

单击新建用户按钮后,我们将导航到注册页面,其中包含以下图像中突出显示的返回登录按钮。

Selenium JUnit Report 2

代码实现

package Report;

import org.junit.*;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
import org.junit.jupiter.api.MethodOrderer;
import org.junit.jupiter.api.Order;
import org.junit.jupiter.api.TestMethodOrder;
import java.util.concurrent.TimeUnit;
import static org.junit.Assert.assertEquals;

@TestMethodOrder(MethodOrderer.OrderAnnotation.class)
public class JunitTest {

   WebDriver driver;

   @Before
   public void setup() throws Exception{

      // Initiate browser driver
      driver = new ChromeDriver();

      // adding implicit wait of 20 secs
      driver.manage().timeouts().implicitlyWait(20, TimeUnit.SECONDS);

      // Opening the webpage
      driver.get("https://tutorialspoint.com/selenium/practice/login.php");
   }

   @Test
   @Order(1)
   public void verifyLoginAndRegisterPage() {
   
      // identify header then get text
      WebElement header = driver.findElement
         (By.xpath("//*[@id='signInForm']/h1"));
      String text = header.getText();

      // assertions to test case to check login page
      assertEquals("Welcome, Login In", text);

      // navigate to register page
      WebElement btn = driver.findElement
         (By.xpath("//*[@id='signInForm']/div[3]/a"));
      btn.click();

      // assertions added to test case to check register page
      WebElement btnchk = driver.findElement
         (By.xpath("//*[@id='signupForm']/div[5]/a"));
      boolean displayed = btnchk.isDisplayed();

      // assertions to test case
      assertEquals(true, displayed);
   }

   @After
   public void teardown() {
   
      // quitting browser
      driver.quit();
   }
}

pom.xml 文件中的依赖项。

<?xml version="1.0" encoding="UTF-8"?>
<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>org.example</groupId>
   <artifactId>SeleniumJava</artifactId>
   <version>1.0-SNAPSHOT</version>

   <properties>
      <maven.compiler.source>16</maven.compiler.source>
      <maven.compiler.target>16</maven.compiler.target>
      <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
   </properties>
   
   <!-- https://mvnrepository.com/artifact/org.seleniumhq.selenium/selenium-java -->
   <dependencies>
      <dependency>
         <groupId>org.seleniumhq.selenium</groupId>
         <artifactId>selenium-java</artifactId>
         <version>4.11.0</version>
      </dependency>
      
      <!-- https://mvnrepository.com/artifact/org.junit.jupiter/junit-jupiter-api -->
      <dependency>
         <groupId>org.junit.jupiter</groupId>
         <artifactId>junit-jupiter-api</artifactId>
         <version>5.10.2</version>
      </dependency>
      
      <!-- https://mvnrepository.com/artifact/junit/junit -->
      <dependency>
         <groupId>junit</groupId>
         <artifactId>junit</artifactId>
         <version>4.13.2</version>
         <scope>test</scope>
      </dependency>

      <!-- https://mvnrepository.com/artifact/org.apache.maven.plugins/maven-site-plugin -->
      <dependency>
         <groupId>org.apache.maven.plugins</groupId>
         <artifactId>maven-site-plugin</artifactId>
         <version>4.0.0-M13</version>
      </dependency>
   </dependencies>

   <!-- https://mvnrepository.com/artifact/org.apache.maven.plugins/maven-surefire-report-plugin -->
   <reporting>
      <plugins>
         <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-surefire-report-plugin</artifactId>
            <version>3.2.5</version>
         </plugin>
      </plugins>
   </reporting>
</project>

步骤 3 - 使用以下命令从命令行运行测试:mvn clean test suite

步骤 4 - 刷新项目,应该在target文件夹中生成一个名为site的新文件夹。

Selenium JUnit Report 3

步骤 5 - 右键单击surefire-report.html,然后选择在浏览器中打开的选项。

Selenium JUnit Report 4

JUnit 报告将在浏览器中打开,显示摘要,总测试方法数为 1,通过成功率为 100%。它还显示了包列表的详细信息(包名称、测试数量、通过计数、失败计数、通过成功率、测试持续时间等)。报告中还包含测试方法名称 verifyLoginAndRegisterPage。

结论

本教程全面介绍了 Selenium JUnit 报告。我们从描述 JUnit 报告、设置 JUnit 报告的先决条件开始,并逐步介绍了如何使用示例创建 JUnit 报告,说明了如何将其与 Selenium 一起使用。这使您能够深入了解 JUnit。明智的做法是继续练习您所学到的内容,并探索与 Selenium 相关的其他内容,以加深您的理解并拓宽您的视野。

广告