TestNG教程

TestNG @BeforeSuite

TestNG @BeforeSuite Annotation

到现在为止,我们读到了 @BeforeTest 和 @AfterTest 可以控制特定的 文件夹不在整个框架上。这标签可以控制整个 XML 文件。这 tag 是所有测试文件夹的父级。
@BeforeSuite:该@BeforeSuite的所有的测试用例在定义的执行之前被执行注释的方法 文件夹。
通常,当我们有不同的 URL 来运行您的测试用例时,会使用 @BeforeSuite。环境变量在@BeforeSuite 注释方法中设置,因此在执行所有测试用例之前,您需要为您的框架加载所有环境变量,然后它开始执行您的测试用例。
@BeforeSuite注解方法被列为第一优先级,所以它在所有其他测试方法之前执行。
让我们通过一个例子来理解@BeforeSuite注解方法。
第 1 步: 打开Eclipse。
第 2 步: 我们创建三个贷款模块,即Car_loan.java,Home_loan.java,和 Personal_loan.java。
Car_loan.java
package com.lidihuo;
import org.testng.annotations.Test;
public class Car_loan 
{
@Test
 public void car_loan()
 {
     System.out.println("Car Loan");
 }
}
    
Home_loan.java
package com.lidihuo;
import org.testng.annotations.Test;
public class Home_loan 
{
@Test
public void home_loan()
{
  System.out.println("Home Loan");
}
}
    
Personal_loan.java
package com.lidihuo;
import org.testng.annotations.BeforeSuite;
import org.testng.annotations.Test;
public class Personal_loan
{
 @Test
 public void personal_loan()
 {
     System.out.println("Personal Loan");
 }
 @BeforeSuite
 public void before_suite()
 {
     System.out.println("First method");
 }
}
    
第 3 步: 创建 testng.xml 文件以配置类。
testng.xml 文件
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="test_suite">
<test name="Car Loan">
<classes>
<class name="com.lidihuo.Car_loan"/>
</classes>
</test> <!--Test-->
<test name="Personal Loan">
<classes>
<class name="com.lidihuo.Personal_loan"/>
</classes>
</test> <!--Test-->
<test name="Home Loan">
<classes>
<class name="com.lidihuo.Home_loan"/>
</classes>
</test>
</suite> <!--Suite-->
    
我们创建了贷款的三个模块,即汽车贷款、个人贷款和房屋贷款。它们的类文件在 testng.xml 文件中配置。@BeforeSuite 注释方法在Personal_loan.java 文件中定义,这意味着@BeforeSuite 注释方法,即before_suite() 在XML 文件中配置的类中可用的所有测试方法之前首先执行。根据testng.xml文件,TestNG会先执行before_suite()方法,然后TestNG会按照 文件夹。
第 4 步: 运行 testng.xml 文件。右键单击 testng.xml,然后向下移动到 Run As,单击 1 TestNG Suite。
输出
TestNG @BeforeSuite Annotation
昵称: 邮箱:
Copyright © 2022 立地货 All Rights Reserved.
备案号:京ICP备14037608号-4