如何加速和提升单元测试覆盖率
- 方法体尽量小,一入一出,不要使用变量传递。
将private方法可以改成友好型,就可以同包下单独方法进行用例测试。 - 用static方法,可以使用powermock,如不行,使用spring单例模式来避免static的使用。
- 尽量避免使用三目运算符,多IF条件判断,可以使用枚举+工厂类来规避,减少单元测试编写难度。
- 尽量不要自己写util方法,使用大基金会(apache、spring)、大厂(google、facebook、twitter、阿里等等)、github星级比较高的提供的util方法,copy Util方法的同时,同时copy他提供的单元测试。
- 数据库单元测试使用H2本地数据库Mock来加快速度,数据库中单元测试脚本要命中索引,不要进行一些无谓的性能开销。
各层之间使用MockITO进行模拟测试。 - Spring Controller测试可以使用WebApplicationContext、MockMvc来进行mock。
- 文件数据等测试,加快速度可以一次性加入内存跑。
- activemq测试可以使用本地vm://localhost:61616来进行测试。
- 有些测试比较重要,但又影响速度(高并发,多线程,高计算,高频访问redis,memcached等等),可以考虑自己跑完后,直接@Ignore或者拆分小方法,慢的部分Ignore,毕竟单元测试为了代码质量,而不是为了覆盖率。

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
深入理解阿里分布式消息中间件
什么是分布式消息中间件 什么是分布式消息中间件? 对于分布式消息中间件,首先要了解两个基础的概念,即什么是分布式系统,什么又是中间件。 分布式系统: “A distributed system is one in which components located at networked computers communicate and coordinate their actions only by passing messasges.”——《Distributed Systems Concepts and Design》 从上面这个解释可以得到分布式系统的两个特点: 组件分布在网络计算机上 组件之间通过消息来协调行动 中间件: Middleware is computer software that provides services to software applications beyond those available from the operating system. It can be described as "software glue". Middlew...
- 下一篇
C# 判断用户是否对路径拥有访问权限
如何获取当前系统用户对文件/文件夹的操作权限? 1.获取安全信息DirectorySecurity DirectorySecurity fileAcl = Directory.GetAccessControl(folder); 通过Directory.GetAccessControl获取文件夹的权限/安全信息 详细介绍,可参考MSDN官方文档 对文件/文件夹权限的详细操作,可参考一篇博客C#文件夹权限操作 2. 获取文件夹访问权限列表FileSystemAccessRule var rules = fileAcl.GetAccessRules(true, true, typeof(System.Security.Principal.NTAccount)).OfType<FileSystemAccessRule>().ToList(); GetAccessRules()方法返回的是AuthorizationRule集合,此处只需要获取文件权限。 FileSystemAccessRule继承自AuthorizationRule,并新增俩个属性 AccessControlType...
相关文章
文章评论
共有0条评论来说两句吧...