testNG参数化

据说testNG比junit更好用,记录下java

环境:springboot2.0+testNG6.8+maven+myeclipsespring

一 安装springboot

(1)m'yeclipse安装testNg包,下载testNg包,拷贝到myeclpse目录下eclipse

(2)pom.xml导入testNg的依赖包maven

 

二,基本功能ide

(1)一些标注@BeforeClass,BeforeSuite,BeforeMethod,@Test(enabled=false)的执行顺序和junit基本一致的原理测试

(2)经过配置文件suite.xml执行suite,这里有个groups分组,包括类分组和方法分组,来灵活制定运行哪些测试case,也和本来预计的没啥区别ui

三,参数化spa

比较感兴趣额是参数化,2中经常使用的传参方式code

1)suite.xml配置文件配置parameters,直接执行suite.xml

注意:这种方法必须执行xml文件,而不是java文件,不然报错

Parameter 'username' is required by @Test on method pamameterUse1 but has not been marked @Optional or defined

java代码

    @Parameters({ "username","password" })
    @Test
    public void pamameterUse1(String username,String password){
        System.out.println(username+password);
    }

suite.xml配置文件

<?xml version="1.0" encoding="UTF-8"?>
<suite name="Suite">
      <test name="myparam">
            <parameter name="username" value="mili"/>
            <parameter name="password" value="123455"/>
            <classes>              
                <class name="com.summit.suite.Parameter"></class>
            </classes>
      </test>
</suite>

执行suite.xml结果

mili123455

===============================================
(2)@DaraProvider注解实现传参,可直接执行java文件

 

    @DataProvider(name="milidata")
    public Object[][] providerData(){
        return new Object[][]{{"wangli","33333"},{"lixiao","44444"}};
        
    }
    @Test(dataProvider = "milidata")
    public void testDataProvider(String name,String pwd){
        System.out.println(name+pwd);
    }

wangli33333
lixiao44444
PASSED: testDataProvider("wangli", "33333")
PASSED: testDataProvider("lixiao", "44444")

===============================================

(3)平常中须要把参数和脚本分离开,testNg怎么作呢?

相关文章
相关标签/搜索