[自动化测试 - 环境搭建] ANT + Selenium2 + TestNG 整合详细介绍

1.    环境配置

Apache  Ant:        http://ant.apache.org/
TestNG:                http://testng.org/doc/index.html
Selenium:                  http://docs.seleniumhq.org/


2.    新建项目
Eclipse :   File  ->  New  ->  Java Project





3.    新建项目下所需要的文件夹,并将需要用到文件copy过去,并在Eclipse中导入相关的包
Eclipse:  右键项目,选择 New  ->   Folder


[1] 根目录下新建  - [ lib ]
        解压缩testng-xslt-1.1.2.zip 并将  testng-xslt/lib 下的saxon-8.7.jar和SaxonLiaison.jar拷贝到项目的lib目录下
       将下载的testng-6.9.10.jar 和 selenium-server-standalone-2.52.0.jar包拷贝到项目的lib目录下

[2] 根目录下新建  - [  test-output ]
        解压缩testng-xslt-1.1.2.zip 并将  testng-xslt/src/main/resources下的testng-results.xsl拷贝到项目的test-output目录下




[3] 将包导入到项目中
Eclipse:  右键项目,选择 Build Path    ->   Configure Build Path...


点击  Add JARs... ,选择项目lib目录下的jar包并确定



4.    新建测试类
Eclipse:  右键项目,选择  New   ->   Class


填入相关参数后点击完成



5.    编写测试类
     
     
package demo.test;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.testng.annotations.AfterClass;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.Parameters;
import org.testng.annotations.Test;
 
import com.beust.jcommander.Parameter;
 
public class testPara {
private WebDriver dirver;
@BeforeClass
public void BeforeClass(){
dirver = new FirefoxDriver();
}
@Parameters({"url"})
@Test
public void GoToLink(String url){
dirver.get(url);
}
@AfterClass
public void AfterClass(){
dirver.close();
}
}

6.    在根目录下新建testng.xml 并进行编写
     
     
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="DemoTest1" verbose='1'>
<test name="testPara">
<parameter name="url" value="http://www.baidu.com"/>
<classes>
<class name="demo.test.testPara"/>
</classes>
</test>
</suite>
截止此处,已经可以直接运行testng.xml
Eclipse:  右键testng.xml,选择 Run As    ->   TestNG Suite


7.    在根目录下新建build.xml 并进行编写
将项目整合到ANT中,使得项目不受平台和IDE的限制而更快的被部署, 一般Eclipse都自带ANT,无需另外安装。
     
     
<?xml version="1.0" encoding="UTF-8"?>
<project name="TestNG" default="testoutput" basedir=".">
 
<property name="srcdir" location="${basedir}/src" />
<property name="libdir" location="${basedir}/lib" />
<property name="testng.output.dir" location="${basedir}/test-output" />
<property name="testng.file" value="testng.xml" />
 
<path id="classpath">
<fileset dir="${libdir}" includes="*jar" />
<fileset dir="${libdir}" includes="*zip" />
<pathelement location="${basedir}/bin" />
</path>
 
<!-- Define <testng> task -->
<taskdef name="testng" classname="org.testng.TestNGAntTask">
<classpath>
<pathelement location="./lib/testng-6.9.10.jar"/>
</classpath>
</taskdef>
 
<!-- Before compile,delete the previous folder -->
<target name="clean">
<delete dir="${basedir}/bin" />
</target>
<!-- Compile file in 'srcdir' to 'destdir' -->
<target name="compile" depends="clean">
<mkdir dir="${basedir}/bin" />
<javac srcdir="${srcdir}" encoding="UTF-8" destdir="${basedir}/bin" classpathref="classpath" includeantruntime="off" debug="on" debuglevel="lines,vars,source" />
</target>
<!-- use testng.xml to run the test -->
<target name="runtest" depends="compile">
<testng outputdir="${testng.output.dir}" classpathref="classpath">
<xmlfileset dir="${basedir}" includes="${testng.file}"/>
</testng>
</target>
<!-- Use xslt to modify the report -->
<target name= "testoutput" depends="runtest" >
<xslt in= "${testng.output.dir}/testng-results.xml" style= "${testng.output.dir}/testng-results.xsl"
out= "${testng.output.dir}/index1.html " >
<param name= "testNgXslt.outputDir" expression= "${basedir}/test-output/" />
<param name="testNgXslt.showRuntimeTotals" expression="true" />
<classpath refid= "classpath" />
</xslt>
</target>
 
</project>

8.    利用ANT执行build.xml
Eclipse:  右键testng.xml,选择 Run As    ->   Ant Build



9.    执行结果


10.    TestNG报告
美化前:

美化后:



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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值