testNG+selenium+maven+jenkins windows 安装及配置过程

1. 环境准备:

     1.1 安装JDK

      本文采用jdk-8u111-windows-x64.exe;

    1.2 配置tomcat

   本文采用tomcat8,无需安装,配置JAVA_HOME及JRE_HOME环境变量即可;

   启动tomcat: %tomcat_home%/bin/shutdown.bat

    1.3 安装maven

  本文采用maven3.3.9,无需安装;环境变量配置如下:

    1.4 安装Jenkins

  下载地址https://jenkins.io/download/,仅下载war包,

启动jenkins: 两个方法,

  1. 启动tomcat

  2. java -jar jenkins.war, 出现下图则启动成功


通过127.0.0.1:8080访问jenkins 首页,第一次打开会显示出来一个空的页面,我的这个图已经有一个任务了。


2. 下载驱动:geckodriver.exe,放在根目录:


3. 配置maven pom.xml

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>

  <groupId>com.yktest.pctest</groupId>
  <artifactId>pctest</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <packaging>jar</packaging>

  <name>pctest</name>
  <url>http://maven.apache.org</url>

  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  </properties>

  <dependencies>
 <dependency>
    <groupId>junit</groupId>
    <artifactId>junit</artifactId>
    <version>4.11</version>
</dependency>
<dependency>
    <groupId>org.testng</groupId>
    <artifactId>testng</artifactId>
    <version>6.8.21</version>
</dependency>

<dependency>
    <groupId>org.seleniumhq.selenium</groupId>
    <artifactId>selenium-java</artifactId>
    <version>2.53.1</version>
</dependency>

<dependency>
<groupId>net.sf.json-lib</groupId>
<artifactId>json-lib</artifactId>
<version>2.4</version>
<classifier>jdk15</classifier>
</dependency>
<dependency>
<groupId>commons-beanutils</groupId>
<artifactId>commons-beanutils</artifactId>
<version>1.7.0</version>
</dependency>
<dependency>
<groupId>commons-collections</groupId>
<artifactId>commons-collections</artifactId>
<version>3.1</version>
</dependency>
<dependency>
<groupId>commons-lang</groupId>
<artifactId>commons-lang</artifactId>
<version>2.5</version>
</dependency>
<dependency>
<groupId>net.sf.ezmorph</groupId>
<artifactId>ezmorph</artifactId>
<version>1.0.3</version>
</dependency>
  </dependencies>
    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <configuration>
                    <encoding>UTF-8</encoding>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-surefire-plugin</artifactId>
                <version>2.7.1</version>
                <configuration>
                    <!--<testFailureIgnore>true</testFailureIgnore>-->
                    <suiteXmlFiles>
                        <suiteXmlFile>testng.xml</suiteXmlFile>
                       <!--此处testng.xml即为要运行的testng.xml文件-->
                    </suiteXmlFiles>
                </configuration>
            </plugin>
        </plugins>
    </build>

</project>

4. 编写父类:每个子类执行时,会自动执行beforeclass和afterclass

package com.yktest.pctest.pctest;

import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.testng.annotations.AfterClass;
import org.testng.annotations.BeforeClass;

public class PcCommon {
	static WebDriver driver;

	public PcCommon(){
		String driverPath = System.getProperty("user.dir") + "\\geckodriver.exe";
		System.setProperty("webdriver.gecko.driver", driverPath);
	}
	
	@BeforeClass
	public void startFF() {
		driver = new FirefoxDriver();
		driver.manage().window().maximize();
		System.out.println("@BeforeClass start: ----------");
	}

	public void startChrome() {
		driver = new ChromeDriver();
		driver.manage().window().maximize();
	}
	
	@AfterClass
	public void closeDriver(){
		System.out.println("@AfterClass start: ----------");
		driver.quit();
		
	}
}

5. 添加测试类:

package com.yktest.pctest.pctest;

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

public class ABtest extends PcCommon {
	@Test
	public void testAB(){
		driver.get("http://so.youku.com/search_video/q_波兰");
		System.out.println("test class start: ----------");
		Assert.assertTrue(driver.getTitle().equals("波兰"), "Title is not right! ");
	}

}

6. 编写testng.xml, 此时已经可以在本地通过mvn clean test 运行了

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >
<suite name="worldcupSuite" verbose="1" >
<test name = "worldcupPackage" >
   <classes>
      <class name = "com.yktest.pctest.pctest.WordCupTest"/>
      <class name = "com.yktest.pctest.pctest.ABtest"/>
   </classes>
</test>
</suite>

7. jenkins配置及插件安装

   系统管理->全局工具配置(注: 一定取消自动安装,防止插件不稳定)




插件安装: 系统管理->插件管理

需要安装的插件:TestNG 


8. 创建jenkins任务:

  首先,创建一个自由风格的任务:





9. 结果查看:



9. 参考文档:

http://www.51testing.com/html/63/n-3722563.html

https://blog.csdn.net/hc_ttxs/article/details/79384535

https://blog.csdn.net/cyjs1988/article/details/72780982?locationNum=15&fps=1

https://www.cnblogs.com/unknows/p/8521931.html

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值