eclipse集成testNg及testNg注解常用方法

定义:TestNg是设计测试用例执行测试用例的测试框架。Test NG是一种单元测试的框架,他借鉴了Junit和Nunit框架的优秀思想,引入了更易用和更强大的功能。TestNG消除了一些老式框架的限制,让程序员通过注解、分组、序列、参数化等多种方式组织和执行自动化测试脚本。

testng是一个优秀的测试框架,我们在开发自动化测试脚本或者框架的时候经常会用到这个框架,因为它不仅能方便的帮助我们管理测试类,而且它还提供了丰富的注解来支持各种测试场景的实现(参数化,数据提供者,分组测试,依赖测试,忽略测试,超时测试...)。

1.eclipse(maven项目)集成testNg

(1).准备依赖(在pom.xml中添加)

<dependency>
            <groupId>org.testng</groupId>
            <artifactId>testng</artifactId>
            <version>6.8.8</version>
            <scope>test</scope>
 </dependency>

(2).准备testng-eclipse插件包,并将相应目录下的文件拷贝到对应eclipse对应文件中去。

解压插件包

将features下org.testng.eclipse_6.9.8.201510130443.rar包解压,解压后的同名目录放到eclipse的futures目录。

将plugins下org.testng.eclipse_6.9.8.201510130443.rar包解压,解压后的同名目录放到eclipse的plugins目录。

然后重启eclipse,然后查看是否有TestNG,有就成功啦!

2.testNg常用注解

(1).准备testNg.xml(可以通过新增testNg.class,也可以直接拷贝通过的)

<?xml version="1.0" encoding="UTF-8"?>
<!-- 定义了配置文件的模板和约束 -->
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd"> 注:如果没有,parameter 中的一些元素加载不出来,比如name等
<!-- 套件,所谓套件就是将所有的测试类整理在一块,形成一套测试用例 -->
<suite name="Suite"><!-- parallel="false"并发,暂时不考虑 -->
    <!-- 测试集就是测试类的集合,一般我们把一个小模块当做test测试集来设计,比如登录,注册等 -->
    <test name="register">
        <groups>
            <run>
                <include name="a"></include>
            </run>
        </groups>
        <!-- test下的测试类的集合 -->
        <classes>
            <!--每个测试类,要执行的类,name属性指定测试类的路径 -->
            <class name="com.lemon.maven.GroupsDemo" />
        </classes>
        <!-- 参数 -->
        <parameter name="userName" value="YOyo"></parameter>
        <parameter name="userAge" value="18"></parameter>
    </test>
</suite> 

执行方法:右键testng.xml--Run as-TestNG Suite

(2)

  • 配置注解

-@ BeforeSuite:当前的测试集合中的任一测试用例开始运行之前执行 
- @AfterSuite:当前的测试集合中所有的测试用例执行结束后执行 
- @BeforeTest:Test中任一测试用例开始执行之前执行 
- @AfterTest:Test所有的测试用例运行结束后执行 
- @BeforeGroups:分组测试用例中的任一测试用例执行前执行 
- @AfterGroups:分组测试用例全部运行结束后执行 
- @BeforeClass:当前测试类的任一测试用例开始执行前执行 
- @AfterClass:当前的测试类的测试用例全部运行结束后执行 
- @BeforeMethod:每个测试方法开始运行前执行 
- @AfterMethod:每个测试方法运行结束后执行 
- @Test:一个测试方法,即一个测试用例

执行结果

  • 参数化(1:@Parameters;2:@DataProvider)

@Parameters

@DataProvider

数据提供源可以指定name,方法调用的时候使用name即可,如果不指定,方法调用的时候使用方法名即可
数据源为一个二维数组

  • 依赖测试@Test(dependsOnMethods={"方法名称"})

  • 忽略测试@Test(enabled=false)

  • 分组测试@Test(groups={"a"})

超时测试@Test(timeOut=1)

后面再更新更多testNg 注解的使用方法和其他用法

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值