TestNG组织测试用例的最佳实践

本文探讨了在TestNG中组织测试用例的最佳实践,分析了现有组织方式的不足,如代码重复和维护困难,并提出了新的解决方案。新实践中,通过在Common Task类中添加注解,并利用<dependencies>标签在testng.xml中管理测试逻辑,减少了测试类的数量和代码重复,提高了可维护性。但同时也指出,随着test case增多,testng.xml文件可能变长,且存在一些特定场景下的问题需要解决。
摘要由CSDN通过智能技术生成

           在目前的工作中,经常需要写大量的测试用例(Test Case),然后用TestNG进行自动化测试。随着test case数量的不断增加,发现目前写test case的方法存在一些不足之处。经过几天的思考和探索,找到一种充分利用TestNG的testng.xml配置文件组织test case的方法。

1. 目前组织test case的实践

        将所有测试方法放在Common Task的类中,然后根据test case的测试逻辑,创建对应的测试类,然后用TestNG运行这些测试类。

        目前实践的实例代码如下:

        包含所有测试方法CommonTasks文件:

import java.util.Random;

public class CommonTasks {
    public int method1(int max) { 
      System.out.println("Run method1()");
      return new Random().nextInt(max);
    }  
 
    public int method2(int max) {  
        System.out.println("Run method2()");
        return new Random().nextInt(max);
    }
}
        测试类TestCase1:先执行method1,后执行method2
import org.testng.Assert;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.Parameters;
import org.testng.annotations.Test;

public class TestCase1 {
    CommonTasks task;
    
    @BeforeClass
    public void setUp() {
        task = new CommonTasks();
    }
    
    @Test
    @Parameters("max")
    public void method1(int max) {
        Assert.assertEquals(task.method1(max), 0, "Failed");
    }
    
    @Test(dependsOnMethods = "method1")
    @Parameters("max")
    public void method2(int max) {
        Assert.assertEqu
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值