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

windows+tomcat+jenkins+maven+testng+cucumber+selenium 自动化持续集成的环境搭建目标:能够有一个自动触发自动化测试代码的平台,定时执行自动化测试用例,输出测试报告,发现错误则发报警邮件到指定邮箱,解放双手测试主流程首先,我们要实现jenkins+maven+testng+cucumber来实现自动化触发这个步骤 原理:jenkins能够通过svn获取你最新代码并且进行编译,然后通过构建任务的方式通过maven命令,配合Maven Surefire Pl... 阅读详情

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.youkuaiyun.com/hc_ttxs/article/details/79384535

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

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

Java+Selenium+TestNG构建Web UI自动化测试框架:从原理到实践 UI自动化测试是软件质量保障的核心技术之一,其核心原理是通过编程模拟用户对浏览器界面的操作,实现测试流程的自动化执行。这项技术的核心价值在于能够以极高的重复精度和速度执行回归测试,有效保障频繁迭代的互联网产品的交付质量。在工程实践中,Selenium WebDriver作为行业标准工具,通过浏览器驱动协议实现对主流浏览器的控制;而TestNG测试框架则提供了灵活的测试组织、数据驱动和报告生成能力。结合Java成熟稳定的生态,可以构建出分层清晰、易于维护的自动化测试框架,广泛应用于Web应用的冒烟测试、回归测 阅读详情

相关推荐

IDEA搭建Java+Python混合自动化框架:Selenium/TestNG与Pytest/Playwright集成指南

在软件测试与自动化开发领域,集成开发环境(IDE)是提升效率的核心工具。其核心原理在于通过统一的界面管理代码、依赖和构建流程,减少上下文切换。对于需要同时维护Java与Python技术栈的团队而言,这一价值尤为突出,它能有效解决工具链割裂导致的配置繁琐与协作低效问题。常见的应用场景包括Web自动化测试、API测试以及需要混合语言协作的持续集成流水线。本文聚焦于利用IntelliJ IDEA强大的插件生态,将其打造为统一的多语言自动化工作台,详细演示了如何在一个项目中并行管理基于Selenium与TestNG

weixin_33885676的博客 480

自动化测试平台搭建(selenium+testng+maven+svn+Jenkins)转载

首先创建一个Maven项目 1、打开eclipse,选择File-new-Other 2、选择Maven Project,点击“next” 3、直接点击“next” 4、在Catalog下拉选项中选择Internal,然后选择maven模板:maven-archetype-quickstart,再点击“next” 5、在Group Id文本框输入公司域名,Artifact Id文本框输入项目名称,点击“Finish” 6、创建好的项目如下图: 7、编辑pom.xml,添加tesng、

junior77的专栏 1388

WebDriverManager:5分钟搞定Selenium自动化测试环境搭建

在软件测试领域,自动化测试是提升效率和保障质量的关键技术。其核心原理是通过脚本模拟用户操作,对软件功能进行验证。Selenium作为主流的Web自动化测试框架,其价值在于能够跨浏览器、跨平台执行测试,实现高效的回归测试。然而,在实际工程实践中,浏览器驱动的版本管理和环境配置常成为阻碍团队协作和项目上线的痛点。WebDriverManager正是为解决这一痛点而生的工具,它通过自动检测浏览器版本、下载匹配的驱动并配置系统路径,实现了Selenium测试环境的“开箱即用”。该工具尤其适用于需要频繁进行浏览器兼容

jlins_you的专栏 370

自动化测试:Maven+Selenium+testNG+Jenkins构建数据驱动框架(一、搭建Java+Maven+Selenium环境)

一、JAVA环境配置 jdk:下载地址–链接:https://pan.baidu.com/s/1fnqfFnoONIyimWAYB4sY1A 提取码:ddvr 1、下载后,打开jdk的目录,如图所示: 2、配置Java环境,右击我的电脑–属性–高级设置–环境变量,在环境变量中添加Java所需要的环境: 添加JAVA_HOME,在变量值处添加,刚才的JAVA安装目录,如图所示: 添加CLASSPA...

一枝夏雨荷的博客 1204

Selenium+Java自动化测试实战:从架构设计到CI/CD集成

Web自动化测试是软件质量保障的关键环节,其核心原理是通过程序模拟用户操作,对Web应用进行功能验证。Selenium作为主流的自动化测试工具,结合Java语言强大的面向对象特性和企业级生态,能够构建出高可维护、可扩展的测试框架。这种组合的技术价值在于解决了自动化测试的工程化难题,例如通过Page Object Model设计模式提升代码复用性,利用TestNG实现数据驱动和并行测试以提高效率。在实际应用场景中,Selenium与Java的结合尤其适合大型、长期的项目,能够稳定集成到Maven、Jenkin

weixin_30568591的博客 444

自动化测试框架实战指南:从Pytest到Selenium的10大框架选型与应用

自动化测试框架是软件质量保障体系中的核心组件,它通过提供脚本组织、数据驱动、前置后置条件管理等工程化解决方案,将测试活动从手工操作提升为可重复、可维护的自动化流程。其核心原理在于分离测试逻辑与测试数据,通过模块化设计实现用例的高效管理与执行。在技术价值层面,一套优秀的框架能显著提升测试效率、降低维护成本,并确保测试结果的可靠性。当前,随着微服务与前后端分离架构的普及,接口自动化测试成为基石,而Web UI自动化、移动端测试及性能测试也各有其专业框架支撑。在实际应用场景中,针对Python技术栈,Pytest

weixin_30340819的博客 400

jenkins+testNg+maven+git+selenium自动化集成

准备环境,提前安装好Jenkins及git,maven插件 1、首先我们新建一个maven的工程,并且在pom.xml中配置好我们依赖的一些jar包 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="...

weixin_30482383的博客 211

Selenium环境配置全攻略:从零搭建自动化测试基础环境

Web自动化测试是软件质量保障的关键技术,其核心原理是通过程序模拟用户操作浏览器,实现测试用例的自动执行。Selenium作为该领域的标准工具,其价值在于提供了跨浏览器、跨平台的统一API,极大提升了测试效率和可重复性。在实际应用中,环境配置是自动化测试的“第一公里”,直接关系到后续脚本的稳定运行。本文聚焦于Selenium环境配置的完整流程,深入解析了浏览器驱动版本匹配、环境变量配置等核心难点,并提供了Python与Java两种主流技术栈的详细实操方案。通过理解Selenium Client、WebDri

weixin_30851867的博客 401

Maven安装testNG

1.Maven安装testNG (1)打开网站:http://testng.org/doc/maven.html (2)复制如下代码,粘贴到项目的pom.xml文件: 1 <dependency> 2 3 <groupId>org.testng</groupId> 4 5 <artifactId&gt...

weixin_34378767的博客 246

Web自动化测试框架与工具选型指南:从Selenium到Cypress的实战解析

Web自动化测试是软件工程中提升测试效率与可靠性的关键技术,其核心原理是通过程序模拟用户在浏览器中的操作行为,实现测试用例的自动执行与验证。从技术价值看,它不仅能替代大量重复性手工测试,还能集成到CI/CD流程中实现持续验证,是现代敏捷开发和DevOps实践中不可或缺的一环。在应用场景上,无论是电商网站的功能回归测试、SaaS平台的跨浏览器兼容性验证,还是企业后台系统的业务流程自动化,都离不开稳健的自动化测试体系。本文聚焦于当前主流的Web自动化测试工具链,深度解析Selenium WebDriver作为行

weixin_33726313的博客 334

WebDriverManager终极指南:自动化管理Selenium浏览器驱动,告别版本匹配烦恼

在Web自动化测试和爬虫开发中,浏览器驱动管理是开发者常遇的痛点,涉及驱动版本匹配、环境配置等繁琐问题。其核心原理在于通过自动化工具实现浏览器版本探测、驱动解析、下载与路径配置,从而将开发者从手动维护中解放出来。这一技术显著提升了开发效率和环境一致性,尤其在持续集成和跨平台部署场景下价值突出。通过自动管理ChromeDriver、GeckoDriver等主流驱动,开发者可以专注于业务逻辑实现,而无需担忧驱动与浏览器版本不兼容导致的脚本失败。本文以WebDriverManager为例,深入解析其如何通过智能探

weixin_33901641的博客 383

maven使用TestNG

maven配置TestNG如需要使用TestNG,需要在工程里添加依赖(可以替换你想使用的版本)<dependencies> [...] <dependency> <groupId>org.testng</groupId> <artifactId>testng</artifactId> <version>6.9.8</version> <s

约会远行的专栏 1万+

selenium+java+testng+maven

封装Selenium原有API,使用更简洁。封装TestNG,使用验证结果更简单。 加入reportNG测试报告,批量执行用例后,查询结果更直观。

从零构建Web自动化测试框架:Selenium+TestNG实战与POM模式详解

Web自动化测试是现代软件工程中保障产品质量、提升迭代效率的关键实践。其核心原理是通过脚本模拟用户操作,对Web应用进行功能验证与回归测试。在技术选型上,Selenium WebDriver因其跨浏览器兼容性和庞大的社区生态,成为理解自动化底层原理的经典选择。结合TestNG测试框架,可以实现灵活的生命周期管理和数据驱动测试,显著提升测试用例的组织效率和可维护性。采用Page Object Model设计模式,将页面元素与操作逻辑封装成独立对象,是实现代码高内聚、低耦合的最佳实践,能有效应对UI频繁变更带来

weixin_30410119的博客 405

jenkins+testng+reportng+maven+java环境搭建

帮助测试人员搭建jenkins+testng+reportng+maven+java环境

jenkins基本介绍与maven项目的实现

Jenkins是一个可扩展的持续集成引擎。 主要用于:持续、自动地构建/测试软件项目。监控一些定时执行的任务。 Jenkins拥有的特性包括: 易于安装-只要把jenkins.war部署到servlet容器,不需要数据库支持。 易于配置-所有配置都是通过其提供的web界面实现。 集成RSS/E-mail通过RSS发布构建结果或当构建完成时通过e-mail通知。 生成JUnit/TestNG测试报告。 分布式构建支持Jenkins能够让多台计算机一起构建/测试。 文件识别:Jenkins能够跟踪哪次构建生成哪些jar,哪次构建使用哪个版本的jar等。 插件支持:支持扩展插件,你可以开发适合自己团队使用的工具。

Java+Selenium自动化测试环境搭建:从零到实战详解

自动化测试是提升软件质量与回归效率的核心技术,其原理是通过脚本模拟用户操作,实现测试用例的自动执行。在Web自动化领域,Selenium WebDriver作为行业标准工具,提供了跨浏览器、跨平台的操作API。结合Java生态的稳定性与丰富库支持,Java+Selenium成为企业级自动化测试的优选方案,广泛应用于Web应用的功能验证与回归测试。本文聚焦于环境搭建这一关键实践环节,针对常见的版本兼容性与驱动配置问题,详细拆解了JDK、Maven、Selenium库及浏览器驱动的配置步骤,并深入讲解了WebD

weixin_34175509的博客 425

java+selenium+maven+testng自动化测试框架实例(实际项目)

java+selenium+maven+testng自动化测试框架实例(实际项目)

上一篇: git 本地工程传到远程服务器:
下一篇: 程序员+测试学习资料地址
无心_1
博客等级 码龄19年 12粉丝 17原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值