10|单元测试(一):原来测试可以这么高效
制定单元测试策略
- 深入了解
- 翻译
- 解释
- 总结
单元测试策略对于软件开发至关重要。本文以实际业务场景为例,深入探讨了单元测试的重要性及制定策略。首先介绍了单元测试的概念,并通过Order服务的案例展示了具体实施过程。在制定单元测试策略时,强调了需要考虑编写多少个Test Class以及选择孤立型或社交型测试方式。随后详细介绍了OrderService的单元测试过程,包括编写测试代码以及单元测试相对于UI和接口测试的优势。通过本文,读者可以了解单元测试的重要性,以及如何在实际项目中进行有效的单元测试,从而提高代码质量和开发效率。文章还提到了单元测试的ROI高、速度快,但在实际中测试人员对此领域相对陌生。因此,文章承诺将继续探讨如何推动单元测试的“可测试性”。整体而言,本文为读者提供了深入了解单元测试策略的机会,以及如何将其应用于实际项目中的指导。
《自动化测试高手课》,新⼈⾸单¥59
全部留言(6)
- 最新
- 精选
- 太匆匆Oh Yeah,有多少开发人员愿意做单元测试,又有多少项目经理允许开发人员有时间去做单元测试
作者回复: 领域逻辑复杂而重的软件产品,一定要做好单元测试,目标是明确的。怎么推动,可以灵活一点,尊重人性的认知过程,比如,你可以把老大重视的bug和开发团队过一遍,讨论一下这些bug能够最早发现的阶段,获得共识后,找小一块单元测试的试验田,获得实践后,推广到更大范围。
2022-04-118 - swordman@DataProvider public static Object[][] FinalPrice() { return new Object[][]{ {1111, 2222, "佛跳墙", 200, -20, 180}, {1112, 2223, "珍珠翡翠白玉汤", 100, -10, 90} }; } @DataProvider("FinalPrice") @Test public void shouldFinalPrice(FinalPrice finalPrice) { int price = orderService.determineFinalPrice(finalPrice); //验证order是否在数据库里创建成功 verify(比较price和finalPrice的最后一个常量是否相等); }
作者回复: 👍 正确又干净!
2022-04-1148 - Sarah在项目中一直在实践单元测试和UI自动化测试结合的方式让整个自动化测试更高效,单元测试覆盖细粒度的功能单元,UI自动化来达到串起整个用户流程的验证
作者回复: 希望能看到你更多的分享!
2022-04-192 - 胡小天OrderService的单元测试应该是需要拉起整个项目才能进行测吧,本地跑没办法加载Spring注解和配置文档,还是有其他的办法?
作者回复: 单元测试是动态测试。怎么动起来呢,有两种思路,第一种思路,Spring应用本身就是注解驱动的,先启动应用,再启动单元测试。另外一种思路呢,通过单元测试,来驱动被测单元,比如算法,Utility等。
2022-05-221 - On单元测试是必须得做的,虽然实际情况是迫于交付进度的压力或者开发的不良习惯等等原因,单元测试不做或者做不到位,给测试和项目质量埋下缺陷的隐患。这里想到另一个问题:单元测试和tdd到底有什么区别?是不是后者更彻底、更能保证开发的代码的质量!?谢谢。
作者回复: TDD是Test Drive Development,是方法论,单元测试是TDD的实现基础。TDD一般指的是先设计测试案例,再开发代码,所以叫做测试驱动开发。 非常理解您的工作实际,单元测试必须要推动,但是从哪个地方入手,范围多大,可以讲点策略,灵活一点。
2022-05-081 - lisa领域知识泄漏存在的很大原因是在运行某个测试之前,输入是在这次测试时才确定,所以我们在写测试用例的时候并知道输出是什么,所以就没办法一开始确定。2023-02-20归属地:广东1