zoukankan      html  css  js  c++  java
  • testNG参数化

    听说testNG比junit更好用,记录下

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

    一 安装

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

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

    二,基本功能

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

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

    三,参数化

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

    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怎么做呢?

  • 相关阅读:
    JavaScript备忘录-逻辑运算符
    CMake 构建项目教程-简介
    C++ 跨语言调用 Java
    Thrift-0.10.0 CenOS 7 编译错误 error: expected ')' before 'PRIu32'
    CentOS 7 安装 MySQL Database
    CentOS 安装 Wine
    FreeBSD 配置
    CentOS 6.5 升级 GCC 4.9.3
    Favorite Setting
    shell编程-1到100的求和与冒泡排序
  • 原文地址:https://www.cnblogs.com/xueli/p/10694205.html
Copyright © 2011-2022 走看看