spring boot 单元测试这么慢有什么解决办法?
8 个回答
我觉得单元测试更多的用在自动化的集成流程中的,把所有的用例一起跑一遍。这样context只会初始化一次(如果没有@DirtyContext之类的话),就节省时间了。
开发里还是直接跑吧。把devtool加进来,改了直接编译一下都就,都不用重启。肯定要比跑UT方便
推荐 UnitAuto,跑起来后想测多少次都行。
机器学习零代码单元测试平台,零代码、全方位、自动化 测试 方法/函数 的正确性、可用性和性能。
腾讯 IEG(互动娱乐事业群)、WXG(微信事业群) 两大事业群多个部门的多个项目以及快手广告使用中。
已被 互联网教育智能技术及应用国家工程实验室 收录。
UnitAuto-机器学习零代码单元测试平台
特点优势
相比 JUnit, JTest, Mockito, Mockk 等一堆 Compiling testing 工具:
1.其它工具需要每个方法都写一大堆测试代码,需要开发成本、需要解决测试代码的 bug、业务代码更改后需要同步修改测试代码等; UnitAuto 不需要写任何代码,直接读取方法的属性,自动注入参数,拿到返回值和类成员变量,机器学习自动化校验。
2.UnitAuto 这种 Runtime testing 工具无需 Mock 环境(Application, Context 等), 更不用为 无法有效地 Mock 环境相关类、第三方登录未提供 Mock 支持 等而头疼, 只要被测方法满足 有 return 值、有 interface 回调、改变成员变量 field 这 3 点中至少一点就能测。
质效无双线上技术访谈-零代码智能测试工具实践介绍-第11期
https:// testwo.cn1.quickconnect.cn /vs/sharing/iiP8VK1C#!aG9tZV92aWRlby0xMQ==
原理说明
被测项目不需要写任何单元测试代码(逻辑代码、注解代码等全都不要), UnitAuto 会自动生成测试参数,并执行方法,拿到返回值等进行校验。 泛型、接口等自动模拟,异步执行方法自动记录回调过程,都是零代码。 UnitAuto-Admin 是类似 APIAuto 的机器学习零代码测试工具(查看、上传、执行、测试 后端项目中的方法等), UnitAuto-Java 提供扫描所有方法、执行某个方法两个 API (主要引入 MethodUtil.java 这个类,里面已实现)。
通过扫描项目中的可访问的 package, class, method 来生成和导入测试用例
HTTP 远程调用被测服务/App,转至内部 构造/获取 实例来 invoke 动态执行方法
获取参数、成员变量等前后状态,拦截方法被调用过程并可视化展示
通过简单配置自动调整参数组合,拿到返回结果后通过 前后结果对比 或 机器学习校验模型 来自动断言
后端不再需要像以下示例一样编写和维护大量单元测试用例代码(逻辑代码、注解代码等):
客户端可作为 HTTP Server 来为 UnitAuto 网页工具 提供远程调用的接口,效果同样:
演讲视频
UnitAuto-机器学习自动化单元测试平台简介
https://www. bilibili.com/video/BV1T k4y1R7Yo
UnitAuto-异步回调方法的零代码单元测试
https://www. bilibili.com/video/BV1k k4y1z7bW
关于作者
https:// github.com/TommyLemon
创作不易,右上角点⭐Star 支持下本项目吧,谢谢 ^_^