自动化测试~报告篇

简介:
  • 介绍

不管是自动化还是手工测试,只是个手段,最终都是为了出一个报告(结果)。由此可见报告才是我们要的结果,而不是什么NB的技术。

对于自动化测试报告,可能还需要测试人员加工,或者报告只是提供给测试人员进一步分析的材料。简单来说,如果不结合实际业务的话可能无法直接把报告结果发送到JIRA等管理系统中。

使用本框架(PhoenixAutotest)的报告功能,需确保您已经阅读过《自动化测试~模块篇》。

  • 类型

目前框架提供了Excel和MySQL、Jira等类型的报告。Excel是针对单次测试流程的报告,包括每个模块以及其中的方法,还有测试环境信息(可自定义):截图如下:

而MySQL类型的测试报告,是为了能够从每次运行的结果中获取历史信息做统计分析。例如:分析每个模块的失败率(稳定性)等。

  • Excel

想要使用该类型的报告,只需要在您的pom.xml中添加下面的依赖:

<dependency>
	<groupId>com.surenpi.autotest</groupId>
	<artifactId>autotest.report.excel</artifactId>
	<version>1.0.0-20170618</version>
</dependency>

然后在测试流程的启动类(加了注解@AutoApplication)添加@EnableExcelReport即可。

另外,phoenix.shutdown(); //不调用该方法的话,excel报告文件无法保存

Excel插件的源码托管地址为https://github.com/LinuxSuRen/autotest.report.excel

  • 数据库

想要使用该类型的报告,只需要在您的pom.xml中添加下面的依赖:

<dependency>
    <groupId>com.surenpi.autotest</groupId>
    <artifactId>autotest.report.database</artifactId>
    <version>1.0.0-20170618</version>
</dependency>

添加配置文件report.database.properties到类根路径中(maven工程的话在src/main/resources),然后在测试启动类中添加注解@EnableDataBaseReport。下面给出一个数据库截图:

下面是MySQL数据库的配置示例:

jdbc.username=root
jdbc.password=root
jdbc.url:jdbc:mysql://localhost:3306/phoenix_report?serverTimezone=UTC

如果要使用SQLite的话,先添加一下依赖:

<dependency>
	<groupId>org.xerial</groupId>
	<artifactId>sqlite-jdbc</artifactId>
	<version>3.16.1</version>
</dependency>

然后在配置文件中添加如下配置:

jdbc.driver=org.sqlite.JDBC
jdbc.url=jdbc:sqlite:phoenix_report.db

数据库插件的源码托管地址为https://github.com/LinuxSuRen/autotest.report.database

  • Jira

Jira插件,会把测试过程中发现的问题推送到Jira系统中。然后,测试人员就可以根据Jira中的信息来进一步判断是否为bug,并进行分配。

同样地,需要先添加maven依赖:

<groupId>com.surenpi.autotest</groupId>
<artifactId>autotest.report.jira</artifactId>
<version>0.0.1-SNAPSHOT</version>

下一步,在配置文件report.jira.properties中添加Jira地址、用户、标签、默认优先级、默认经办人等信息:

jira.url=http://localhost:9080
jira.username=suren
jira.password=suren
jira.assignee=admin
jira.labels=phoenix autotest test
jira.priority=Low

Jira插件的源码托管地址为https://github.com/LinuxSuRen/autotest.report.jira

  • 自定义

如果上述的报告格式都不能满足您的需求,可以添加下面的maven依赖,然后实现接口com.surenpi.autotest.report.RecordReportWriter即可。

<dependency>
	<groupId>com.surenpi.autotest</groupId>
	<artifactId>autotest.report</artifactId>
	<version>1.0.0-20170618</version>
</dependency>
  • 参考

自动化测试,从入门到放弃

自动化测试~模块篇

自动化测试~数据源

自动化测试~参数化

自动化测试~元素定位

自动化测试~配置

自动化测试~报告篇

自动化测试~课程

自动化测试~注解篇

自动化测试框架介绍

本文为原创,如果您当前访问的域名不是surenpi.com,请访问“素人派”。

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。 &nbsp; 相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情:&nbsp;https://www.aliyun.com/product/rds/mysql&nbsp;
目录
相关文章
|
Python 缓存
Python ChainMap:链式映射的妙用与实战解析
【4月更文挑战第1天】Python中的`collections`模块提供了一个名为`ChainMap`的类,它实现了多个字典的链式查找。`ChainMap`将多个字典组织成一个逻辑上的单一字典,允许你像操作单个字典一样来访问这些字典。当在`ChainMap`中查找一个键时,它会按照字典被添加的顺序从前向后依次查找,直到找到匹配的键为止。如果找不到,就会抛出`KeyError`。
水果软件flstudio设置成中文版本的操作步骤
再也用不着给编曲软件FL Studio安装汉化补丁了,今天FL Studio官方不声不响地悄悄更新了FL Studio 20中文版,但一些朋友装完Mac中文版后发现还是英文版,这是怎么回事呢?今天就俩讲一讲正确安装并设置FL中文版的方法。
2355 0
|
11月前
|
传感器 监控 物联网
智慧家居环境监测与控制系统研发与应用的目标分析
- **背景**:随着物联网技术的发展和智能家居市场的快速增长,人们对居住环境的舒适性、安全性及能源使用效率的要求日益提高。 - **目的**:通过研发和应用智慧家居环境监测与控制系统,实现住宅环境中温度、湿度、空气质量等关键参数的有效管理和自动化调节。
634 21
|
Linux
Avalonia应用在基于Linux的国产操作deepin上运行
Avalonia应用在基于Linux的国产操作deepin上运行
442 0
|
Kubernetes Linux 开发者
【实战秘籍】从零开始:用.NET与Docker打造现代化容器化应用之旅
【8月更文挑战第28天】本文详细介绍如何使用 .NET 框架构建并部署 Docker 容器化应用程序,涵盖环境搭建、项目创建、Dockerfile 编写等关键步骤。首先安装必要软件,如 Visual Studio 2022 及 Docker Desktop。接着创建 .NET Core 控制台应用,并在项目根目录编写 Dockerfile 文件。使用 .NET 运行时基础镜像,复制二进制文件,指定入口点。运行命令构建镜像并测试容器。为实现通信,映射端口。最后,标签化镜像并推送到 Docker Hub,为生产环境部署做好准备。掌握这些步骤,即可轻松应对从小型项目到大规模应用的各种需求。
782 0
|
消息中间件 存储 RocketMQ
Docker安装多主多备rocketMQ集群之Docker-compose方式
Docker安装多主多备rocketMQ集群之Docker-compose方式
1607 0
Docker安装多主多备rocketMQ集群之Docker-compose方式
|
Linux 网络安全 开发者
深入探索Linux命令:`dmesg`
`dmesg`是Linux命令,用于显示和控制内核环形缓冲区的系统消息,包含驱动加载、硬件错误和启动消息。基本用法包括:无参数运行以显示所有内核消息,使用`-c`清除消息,`-n`限制显示数量,以及`-T`按时间戳排序。适用于系统启动诊断、硬件问题排查和内核模块调试。注意,内核消息可能因新消息覆盖而丢失,及时查看很重要。
【简洁】三步开启QQ邮箱SMTP服务并获取授权码
【简洁】三步开启QQ邮箱SMTP服务并获取授权码
|
Rust 测试技术 开发工具
Rust中的Cargo:依赖管理与项目构建
本文将深入探讨Rust编程语言中的Cargo工具。Cargo不仅用于构建Rust项目,还是管理项目依赖的关键组件。我们将了解如何使用Cargo创建新项目、添加依赖项、以及如何通过Cargo进行构建和测试,从而确保项目的顺利开发与部署。
|
Shell 索引
shell脚本变量详解(自定义变量、环境变量、变量赋值、变量运算、变量内容替换)
shell变量 shell变量是指用一个特定的字符串去表示不固定的内容 1.变量的类型 1.1自定义变量 一般情况下不怎么使用环境变量,如果需要在其他文件中引入某个文件的变量则在脚本最开始的位置使用source 或者. 执行下该脚本即可
3956 0
shell脚本变量详解(自定义变量、环境变量、变量赋值、变量运算、变量内容替换)