随笔分类 - junit5
摘要:一、需求背景 1、自动化测试:一个自动化测试脚本有成千上万条用例,每次执行的时间在小时级别,leader说为了能先于用户知道线上的问题,能否加快脚本的执行速度 2、功能测试:不使用jmeter等工具,使用junit5实现来测试接口是否存在线程安全以及分布式线程安全问题,是否有做幂等性处理 3、功能测
阅读全文
摘要:分层 脚本层 task层 apiObject层 数据层 幂等性 时间戳命名法 执行前后恢复环境 独立性 数据自给自足 逻辑解耦 容错性 尽量使用软断言 只对必要的检查点进行断言
阅读全文
摘要:问题现象 测试代码 @Test @Description("查询部门") @DisplayName("查询部门") void listDepartment() { String createName = "CreateName" + FakeUtils.getTimeStamp(); String
阅读全文
摘要:一、问题现象 在做自动化的时候,想使用参数化功能,数据源为CSV,但是遇到以下问题 Classpath resource [/data/department/createDepartment.csv] does not exist org.junit.platform.commons.Precond
阅读全文
摘要:一、需求背景 结合rest-asssured和junit5,对项目的增删改查实现了自动化测试,并且想让增删改查4个接口有序执行 二、解决方案 junit5的TestMethodOrder和@Order注解 三、具体步骤 1、官网定义 用于为注解的测试类配置测试方法执行顺序; 类似于 JUnit 4
阅读全文
摘要:一、Junit5框架构成 JUnit 5 = JUnit Platform + JUnit Jupiter + JUnit Vintage JUnit Platform: 是在jvm上启动测试框架的基础,定义了测试引擎的API,可以在cmd命令行启动这个平台 JUnit Jupiter:是新编程模块
阅读全文
摘要:一、按照业务分包管理 1、不同产品和模块进行分包 com.xx.featureA com.xx.fretureB 2、不同包下有对应用途相关的运行套件 com.xx.featureASuite 3、尽可能考虑并行 二、按照用途分组并用Suite管理 1、分组 冒烟测试 巡检测试 异常测试 安全测试
阅读全文
摘要:一、数据来源 CSV、yaml、xml、db、excel、json 二、本质 读取数据源返回数组,然后利用参数化进行数据与变量的对应 基于schema:List<Class> 纯数据:Array<Array<String,Object>> 三、数据格式 优点 缺点 Excel 生成数据方便 二进制文
阅读全文
摘要:一、前言 在我们做接口或者是app自动化的时候,有一个比较常见的场景就是测试流程一致,入参不同。而junit5也提供了很好的解决方案。 二、依赖的加入 maven方式,使用junit5参数化需要导入junit-jupiter-params库 <!-- https://mvnrepository.co
阅读全文
摘要:一、前言 在我们做自动化的时候,用例分类通常有冒烟测试用例和回归测试用例,或者是分环境的sit、uat和线上环境。那么我们怎么来实现此功能呢,junit5提供了一个比较好的解决方案。 二、pom文件依赖导入 <dependencies> <dependency> <groupId>org.junit
阅读全文
摘要:Junit5使用注解配置测试和扩展框架 @BeforeAll:表示在所有单元测试之前执行,只执行一次。 @BeforeEach:表示在每个单元测试之前执行,假如测试类有n个测试方法,则被执行n次。 @Test:表示方法是测试方法。但是与junit4的@Test不同,它的职责非常单一,不能声明任何属性
阅读全文
摘要:一、前言 一般来说,我们使用junit5单元测试框架进行编写自动化测试用例,而且我们是使用maven项目编写的,具体如下。 二、pom.xml <dependencies> <dependency> <groupId>org.junit.jupiter</groupId> <artifactId>j
阅读全文