您的位置:首页 > 运维架构 > Linux

Windows命令行执行TestNG

2015-05-25 14:47 531 查看
1、首先,java已安装(自行搜索,网上诸多解决方案)

2、设置TestNG环境变量(自行搜索)

需要注意的是,光有一个testng.jar包是不够的,还需要它所依赖的一系列的文件,事先在eclipse上已配置过TestNG,找到testng.jar包所在的lib文件,将该lib文件的路径设置成系统变量TESTNG_HOME,再在CLASSPATH变量中加入 %TESTNG_HOME%\testng.jar;(注意有分号)下图为lib文件夹下的各类jar包



3、在E盘新建一个Test文件夹,创建一个java类,文件名为TestNGSample  E:\ > Test

import org.testng.annotations.Test;
importstatic org.testng.Assert.assertEquals;

publicclassTestNGSample{
             @Test
             publicvoid testAdd(){
                     String str="TestNG is working fine";
                      assertEquals("TestNG is working fine", str);
             }
}

 

4、 创建一个XML,文件名称testng.xml,用来执行测试用例  E:\ > Test

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >

<suitename="Suite">

<testname="test">

   <classes>

      <classname="TestNGSample"/>

   </classes>

</test>

</suite>


 

5、 编译TestNGSimpleTest

E:\Test >javac TestNGSample.java

 

6、 调用testng.xml看到的结果:

E:\Test >java org.testng.TestNG testng.xml

输入结果为

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

Suite1

Total tests run: 1, Failures: 0, Skips: 0

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

 

-----------------------------------------------------分割线----------------------------------------------------

TestNG参数化测试,各java类文件不在同一目录下

创建一个java类PrimeNumberChecker.java。路径为E:\ > Test > data

package data;
 
public
class PrimeNumberChecker {
    public Boolean validate(final IntegerprimeNumber) {
        for (inti = 2;i < (primeNumber / 2);i++)
{
            if (primeNumber %i == 0) {
                return
false;
             }
        }
        return
true;
    }
}

 

创建Java类文件名ParamTestWithDataProvider.java  路径为E:\> Test > main

package main;
 
import org.testng.Assert;
import org.testng.annotations.BeforeMethod;

4000
import org.testng.annotations.DataProvider;
import org.testng.annotations.Test;
import data.PrimeNumberChecker;
 
public
class ParamTestWithDataProvider {
    private PrimeNumberCheckerprimeNumberChecker;
 
    @BeforeMethod
    public
void initialize() {
        primeNumberChecker =
new PrimeNumberChecker();
    }
 
    @DataProvider(name =
"test1")
    public
static Object[][] primeNumbers() {
        return
new Object[][] { { 2, true }, { 6,
false }, { 19, true },
                 { 22, false }, { 23,true } };
    }
 
    // This test will run 4 times since we have 5 parameters defined
    @Test(dataProvider =
"test1")
    public
void testPrimeNumberChecker(Integer inputNumber,
        Boolean expectedResult) {
         System.out.println(inputNumber +" " +expectedResult);
         Assert.assertEquals(expectedResult,
                 primeNumberChecker.validate(inputNumber));
    }
}

 

创建testng.xml,路径为E:\ > Test

<?xmlversion="1.0"encoding="UTF-8"?>
<suitename="Suite1">
    <testname="test1">
         <classes>
             <classname="main.ParamTestWithDataProvider"/>  注意main.Param
             </classes>
    </test>
</suite>

 

打开cmd,在E:\ > Test >进行编译执行

E:\Test>javac data\PrimeNumberChecker.java  

E:\Test>javac main\ParamTestWithDataProvider.java

E:\Test>java org.testng.TestNG testng.xml 

输出结果

 


在linux下运行

利用Xftp将testng相关的jar包放到linux的某一个目录下  /home/hzyezi/local/testing-lib

设置环境变量:http://www.yiibai.com/html/testng/2013/0914293.html

                            http://blog.csdn.net/weiyidemaomao/article/details/7742605

 

在用户目录下的.bash_profile文件中增加变量【对单一用户生效(永久的)】

 

用VI在用户目录下的.bash_profile文件中增加变量,改变量仅会对当前用户有效,并且是“永久的”。

例如:编辑li用户目录(/home/li)下的.bashrc

$ vi /home/hzyezi/.bashrc

添加如下内容:

export TESTNG_HOME=/home/hzyezi/local/testng-lib

export CLASSPATH=$CLASSPATH:$TESTNG_HOME/testng.jar

 

注:修改文件后要想马上生效还要运行$ source /home/li/.bashrc不然只能在下次重进此用户时生效。

 

然后依据上文所述创建java文件和xml文件即可
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息