Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Java自动化测试(allure 20)

Java自动化测试(allure 20)

作者头像
zx钟
发布于 2020-08-21 09:12:11
发布于 2020-08-21 09:12:11
1.4K00
代码可运行
举报
文章被收录于专栏:测试游记测试游记
运行总次数:0
代码可运行

allure官网:

https://docs.qameta.io/allure/

在项目中导入 testng 和 allure2 坐标和对应设置

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<properties>
    <maven.compiler.target>1.8</maven.compiler.target>
    <maven.compiler.source>1.8</maven.compiler.source>
    <!-- 文件拷贝时的编码 -->
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
    <!-- 编译时的编码 -->
    <maven.compiler.encoding>UTF-8</maven.compiler.encoding>
    <aspectj.version>1.9.2</aspectj.version>
</properties>


<!-- testng maven坐标 -->
<dependency>
    <groupId>org.testng</groupId>
    <artifactId>testng</artifactId>
    <version>6.8.8</version>
</dependency>

<!-- allure2 maven坐标 -->
<dependency>
    <groupId>io.qameta.allure</groupId>
    <artifactId>allure-testng</artifactId>
    <version>2.6.0</version>
    <scope>test</scope>
</dependency>

加入 maven-surefire-plugin 插件并进行配置

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<build>
    <plugins>
        <plugin>
            <!-- maven-surefire-plugin 配合testng/junit执行测试用例的maven插件 -->
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-surefire-plugin</artifactId>
            <version>2.22.1</version>
            <configuration>
                <!-- 测试失败后,是否忽略并继续测试 -->
                <testFailureIgnore>true</testFailureIgnore>
                <suiteXmlFiles>
                    <!-- testng配置文件名称  -->
                    <suiteXmlFile>testng.xml</suiteXmlFile>
                </suiteXmlFiles>
                <!--设置参数命令行 -->
                <argLine>
                    <!-- UTF-8编码 -->
                    -Dfile.encoding=UTF-8
                    <!-- 配置拦截器 -->
                    -javaagent:"${settings.localRepository}/org/aspectj/aspectjweaver/${aspectj.version}/aspectjweaver-${aspectj.version}.jar"
                </argLine>
                <systemProperties>
                    <property>
                        <!-- 配置 allure 结果存储路径  -->
                        <name>allure.results.directory</name>
                        <value>${project.build.directory}/allure-results</value>
                    </property>
                </systemProperties>
            </configuration>
            <dependencies>
                <!-- aspectjweaver maven坐标 -->
                <dependency>
                    <groupId>org.aspectj</groupId>
                    <artifactId>aspectjweaver</artifactId>
                    <version>${aspectj.version}</version>
                </dependency>
            </dependencies>
        </plugin>
    </plugins>
</build>

Maven

https://github.com/zx490336534/auto_api/blob/master/pom.xml

执行

执行内容

clean

首先双击clean进行清理

清理结果

test

双击test开始执行测试

测试结果

测试结果存放

allure-results

报告生成

安装插件

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
mvn io.qameta.allure:allure-maven:serve

报告

会自动打开报告页面

报告

报告查看

切换语言

在右下角有个按钮可以切换语言

切换语言

查看测试汇总

可以在总览页面查看测试执行通过情况,测试环境,前后运行的趋势,当前的运行器

测试汇总

查看各个测试的情况

测试套中可以查看对应接口的测试情况,可以查看它的参数化构建

测试套

查看耗时情况

时间刻度中可以看到每个接口执行的耗时情况

耗时

查看执行顺序

功能页面可以查看脚本执行顺序

执行顺序

报告内容拓展

用例描述

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
@Test(dataProvider = "datas", description = "管理员用户信息查询")

标题修改

用例步骤

在测试代码前增加Step

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
@Step("Type {caseInfo.id} - {caseInfo.url}")

测试步骤

报表断言

新增两个常量

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
public static final String ASSERT_SUCCESS = "PASSED";
public static final String ASSERT_FAILED = "FAILED";

在测试的最后一行增加:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Assert.assertEquals(assertResult, Constants.ASSERT_SUCCESS);

增加断言后重新执行

测试结果

后续和Jenkins组合执行可以看到测试趋势

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-08-15,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 测试游记 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Allure–自动化测试报告生成
之前尝试使用过testNG自带的测试报告、优化过reportNG的测试报告,对这两个报告都不能满意。后经查找资料,发现有个神器:
全栈程序员站长
2022/09/06
8440
Allure–自动化测试报告生成
testng-result中文乱码问题
背景 执行完用例查看报告,发现testng-result.xml文件中关于中文的都是乱码 解决方法 eclipse已设置了utf-8去编译,所以直接运行run as testng ,在console栏输出中文是没有问题的 通过mvn去执行的时候用的是maven-surefire-plugin插件,所以需要修改这里新增 <argLine>-Dfile.encoding=UTF-8</argLine> <plugin> <groupId>org.apache.maven.plugins</g
千往
2018/01/24
7150
Allure测试报告完整学习笔记
假如你想让测试报告变得漂亮一点,那你一定会在搜索引擎中找到Allure测试报告的。Allure官方给出了个在线网站,访问以下链接就能一睹为快:
dongfanger
2022/05/09
1.6K0
Allure测试报告完整学习笔记
JUnit 5 集成 Allure 测试报告
利用这个单元测试框架完成单元测试来帮助提高代码质量,但是对于测试结果而言 JUnit 5 提供的测试报告不够美观,所以我们可以使用专门的测试报告框架 Allure 来生成“高大上”的报告展示。
TestOps
2022/04/07
2.3K0
JUnit 5 集成 Allure 测试报告
自动化测试报告必会神器Allure使用
之前用过testNG自带的测试报告、优化过reportNG的测试报告、extentreport、ZReport(大飞总原创),这些是我之前都用过的,也是在去年雯姐和我说过Allure2这个报告不错,一直没时间,正巧最近有用到,接触下发现确实是个神器。
软件测试君
2019/06/03
1.7K0
UnitTest:maven中使用Jacoco计算代码覆盖率
jacoco 官网 https://www.eclemma.org/jacoco/
测试邦
2019/08/09
1.5K0
UnitTest:maven中使用Jacoco计算代码覆盖率
Appium系列|Appium测试框架完善(四)
在IDE里执行测试脚本执行完后可以将测试结果导出成JUnit或者html格式的都可以,但后续我们做持续集成的时候期望一步到位执行可以生成这两种格式的报告,那怎么让执行后直接生成呢?我们现在来具体看下。
测试邦
2019/07/24
5180
Java自动化测试(Maven 8)
待转化:[{"name": "张三","age": 18},{"name": "李四","age": 16}]
zx钟
2020/07/20
6330
搭建自动化测试持续集成项目
首先您需要了解maven、testNG、jenkins、tomcat、git。源代码放在github上。
测试邦
2019/08/19
7120
搭建自动化测试持续集成项目
Java自动化测试框架-05 - 来给你的测试报告化个妆整个形 - (上)(详细教程)
  前边通过宏哥的讲解和分享想必小伙伴们和童鞋们都已经见过testng框架生成的测试报告,是不是它的样子和长相实在是不敢让大家伙恭维。那么今天宏哥就当一回美容师,由宏哥来给它美美容;当一回外科医生,做一名整形医生。由宏哥来主刀,给它整整形。让她变得丰满、美丽、可爱一些。
北京-宏哥
2019/11/04
9660
用Java如何实现接口测试
关于接口测试, 我们之前介绍过很多方法了, 有postman, soapUI, Jmeter等, 他们各有优势和劣势, 今天和大家分享的是如何用java TestNG来实现接口测试.
louiezhou001
2020/03/25
2K0
TestNG环境搭建(一)
在Java的编程语言中,单元测试框架早期主要使用的为Junit,后面产生了TestNG的单元测试框架,那么具体怎么理解TestNG测试框架了?TestNG测试框架可以理解为下一代单元测试框架。或者更加官方的说,就是:NG代表的是下一代的含义,设计TestNG的灵感来自Junit的设计思想,单元测试框架可用于单元测试,以及自动化测试(UI自动化测试和接口自动化测试),以及集成测试和端到端的测试。TestNG在很短的时间内就得到了普及(目前也是各个公司招聘测试必须要具备的单元测试框架之一的一个框架)。它主要使用Java的注解来配置和编写测试用例。在TestNG的测试框架中,具备了前置测试条件和后置测试条件的处理,依赖性测试,测试分组性的测试,参数化的测试,多线程执行,以及可以和Allure整合后的测试报告,当然它本身就内置了测试报告。TestNG主要是通过XML配置文件来指定被需要执行的测试套件(测试类以及测试方法),默认的情况下,文件名称为testng.xml,当然我们可以自定义成其他的名字,但是我个人建议还是使用默认的名字比较好,这样更加具备通用型。TestNG测试框架的特点可以具体描述为:
无涯WuYa
2021/02/05
7510
利用Jenkins pipeline配置测试工具
最近学习了翟志军老师写的《Jenkins 2.X实践指南》书中的第5章:代码质量一节,发现两方面问题:
顾翔
2020/02/19
3.5K0
利用Jenkins pipeline配置测试工具
持续集成三 maven配置jacoco、checkstyle、findbugs、pmd
在build中配置了checkstyle中配置了生效时期段后,会在相应的周期执行,执行失败,则编译失败
用针戳左手中指指头
2021/01/29
3.2K0
持续集成三 maven配置jacoco、checkstyle、findbugs、pmd
测试开发基础 mvn test | 利用 Maven Surefire Plugin 做测试用例基础执行管理
这个时候就需要 Maven 登场了,利用 Maven 的Maven-Surefire-Plugin插件可以帮助我们完成上述的目标!它可以通过命令行的形式来管理我们要执行的用例。
霍格沃兹测试开发
2020/09/13
2.3K0
Web项目接口自动化测试框架搭建
一、原理及特点 参数放在XML文件中进行管理 用httpClient简单封装一个httpUtils工具类 测试用例管理使用了testNg管理,使用了TestNG参数化测试,通过xml文件来执行case。 测试报告这里用到第三方的包ReportNG 项目组织用Maven 二、准备 使用工具:eclipse,maven 用到的第三方jar包:dom4j、reportng、testng 理解难点:httpUtils和xmlUtil工具类的封装;dom4j使用;CookieStore的应用
用户1257215
2018/01/30
1K0
Web项目接口自动化测试框架搭建
Jenkins多参数执行测试套件
工作中在使用Java+Selenium+TestNG+Maven+Jenkins做WebUI自动化测试的过程中,想要配置两个参数化构建。第一个就是执行Testng的XML文件参数;另一个参数就是环境参数,该参数对应WebUI自动化测试的环境。
Meccer
2021/07/08
1K0
【Java 进阶篇】Maven 使用详解:打造便捷高效的项目构建利器
在软件开发的道路上,项目构建是一个不可避免的过程。而Maven,作为一个强大的项目管理和构建工具,为开发者提供了一套标准化的项目结构和构建流程。本文将围绕Maven的使用详解,手把手地带你探索Maven的世界,让你在项目构建的征途上更加得心应手。
繁依Fanyi
2024/01/02
1.5K0
【Java 进阶篇】Maven 使用详解:打造便捷高效的项目构建利器
Maven 常用配置
我需要让整个项目统一字符集编码,就需要设定<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>;
Java编程指南
2019/08/02
2.2K0
Maven 常用配置
jacoco 生成单测覆盖率报告
jacoco 是一个开源的覆盖率工具,它针对的开发语言是 java。其使用方法很灵活,可以嵌入到 ant、maven 中;可以作为 Eclipse 插件;可以作为 javaAgent 探针监控 java 程序等等。
JMCui
2020/05/09
3.6K0
jacoco 生成单测覆盖率报告
相关推荐
Allure–自动化测试报告生成
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验