首页
›
移动端与Android应用开发
›
011-Android测试夹具分层
›
《TestRule自定义夹具实战》
VIP20
本课程属于:011-Android测试夹具分层
移动端与Android应用开发 · 共 20 门相关课程,组合学习更完整。
查看所属VIP全部课程 →
← 返回所属目录
咨询 / 购买
TestRule自定义夹具实战
共计 30 章节
点击此处阅读海量试读课程:100+行业、1000+细分领域
01
理解TestRule接口
接口定义 · apply方法签名 · Statement对象作用
TestRule
理解
02
搭建Maven工程并配置JUnit4依赖
pom.xml配置 · Maven Surefire插件 · JUnit4版本选择
Maven
JUnit4
03
编写第一个自定义TestRule
实现TestRule接口 · 重写apply方法 · 包装Statement
TestRule
编写第一个自定义
04
Statement执行流程详解
evaluate方法调用链 · before/after逻辑插入点 · 异常传播路径
Statement
执行流程详解
05
实现计时规则(TimingRule)
记录测试耗时 · System.currentTime… · 结果打印或日志输出
TimingRule
实现计时规则
06
实现异常捕获规则(ExceptionCatcherRule)
捕获特定异常并记录堆栈 · 断言异常类型 · 测试失败后处理
ExceptionCat…
实现异常捕获规则
07
实现资源清理规则(ResourceCleanupRule)
自动关闭数据库连接 · 文件流 · 网络资源
ResourceClea…
实现资源清理规则
08
实现日志记录规则(LoggingRule)
在每个测试前后打印方法名 · 参数 · 耗时
LoggingRule
实现日志记录规则
09
实现重复执行规则(RetryRule)
多次执行测试直到成功或达到次数上限 · 配置重试间隔 · 记录失败次数
RetryRule
实现重复执行规则
10
实现随机数据规则(RandomDataRule)
在测试前注入随机值 · 使用ThreadLocal保证线程安… · 支持种子控制
RandomDataRu…
实现随机数据规则
11
实现测试上下文规则(ContextRule)
共享配置对象 · 通过静态变量或ThreadLocal… · 生命周期管理
ContextRule
实现测试上下文规…
12
使用@ClassRule静态规则
静态规则作用范围 · 与@Rule区别 · 在类加载前后执行once逻辑
ClassRule
使用@
13
组合多个规则
使用链式规则或RuleChain类 · 顺序影响 · 声明式组合与编程式组合对比
组合多个规则
RuleChain
14
规则优先级与排序
按注解顺序 · 使用@Order注解(JUnit4.… · 自定义排序规则实现
规则优先级
排序
15
规则异常处理策略
吞异常继续执行 · 抛出异常中断测试 · 收集异常列表统一断言
规则异常处理策略
吞异常继续执行
16
规则中的断言与假设
使用Assert.assertTha… · Assume.assumeTrue · 组合条件跳过测试
规则
断言
17
规则参数化
通过构造方法传递参数 · 使用@Parameterized.P… · 参数化规则工厂
规则参数化
通过构造方法传递…
18
规则与mock框架集成
在规则中初始化Mockito moc… · 注入@InjectMocks · 清理mock状态
mock
规则
19
规则与Spring TestContext集成
在规则中获取ApplicationC… · 自动注入Bean · 事务回滚规则
Spring
TestContext
20
规则与JUnit5扩展模型对比
JUnit4 TestRule与JU… · 迁移思路 · 兼容方案
JUnit5
规则
21
编写规则单元测试
对自定义规则本身编写测试 · 使用JUnit规则嵌套测试 · 模拟Statement行为
编写规则单元测试
对自定义规则本身…
22
规则性能优化
最小化反射调用 · 缓存对象 · 避免重复创建资源
规则性能优化
最小化反射调用
23
规则最佳实践
遵守单一职责 · 无状态设计 · 清晰命名
规则最佳实践
遵守单一职责
24
规则调试技巧
在规则中插入断点 · 打印调用栈 · 使用IDE的测试运行器查看规则顺序
规则调试技巧
规则
25
规则与并行测试兼容性
ThreadLocal变量 · 共享资源锁 · 规则内部线程安全性
规则
并行测试兼容性
26
规则报告输出
在规则中收集测试结果 · 生成HTML/XML报告 · 与CI集成
规则报告输出
规则
27
规则扩展点
使用ExternalResource · Verifier · TestWatcher基类简化实现
规则扩展点
ExternalReso…
28
规则替代方案
@Before/@After方法 v… · 当规则不适合时的替代方案 · 对比分析
规则替代方案
Before
29
规则在大型项目中的应用案例
统一超时控制 · 分布式测试数据准备 · 多环境切换规则
规则
大型项目
30
课程实战项目
综合使用多种自定义规则 · 编写可复用的规则库 · 打包为jar并在其他项目引用
课程实战项目
综合使用多种自定…
所属VIP或分类
同VIP:Android测试夹具设计案例解析
同VIP:Compose-UI测试夹具隔离实战
同VIP:Compose夹具环境快速配置指南