13|集成测试(二):携手开发,集测省力又省心
- 深入了解
- 翻译
- 解释
- 总结
集成测试是软件开发中至关重要的一环,本文介绍了集成测试的重要性以及如何携手开发,省力又省心地进行集成测试。作者首先介绍了集成测试轻量化的概念,包括Mock服务和Happy Path的重要性,并指出在实际应用中可能面临的困难。接着,文章详细讲解了接口与Mock的关系,以及如何通过Interface来生成Mock Class,降低Mock的成本。另外,还介绍了如何高效地寻找Happy Path,包括代码结构、层次和调用关系的要求。最后,文章提出了从结果上观测Happy Path的思路,即如何直观地看到调用链条。整体而言,本文强调了集成测试的重要性,并提供了实用的方法和技巧,对于开发人员和测试人员来说具有很高的参考价值。文章内容涵盖了集成测试环境搭建、Docker构建随时可测的数据库以及集成测试环境搭建神器等方面,为读者提供了丰富的技术知识和实践经验。
《自动化测试高手课》,新⼈⾸单¥59
全部留言(8)
- 最新
- 精选
- 羊羊老师在数据库版本化管理的清单中,有一个“集成契约”,想问下具体是什么? 实际工作中,我们公司搭建测试环境都是测试自己弄,在数据库搭建这块,因为不是很专业,也遇到过很多问题: 1. 导出生产环境数据库结构的SQL后,在测试环境执行,会遇到创建表先后顺序的问题,因为表之间有依赖关系。需要测试自己去整理创建数据库的脚本的顺序。 2. 导入数据的时候,也存在这个问题。而且数据量大的时候,很话费时间。 希望老师能在git给出一个“数据库版本管理”清单的具体例子,想学习一下。
作者回复: 你的问题提到2个知识点 1. 数据库的版本管理 2. 测试环境的仿真生产环境 这2个知识点是独立的,先说版本管理,你可以参照martin fowler的文章 https://www.martinfowler.com/articles/evodb.html 测试环境仿真生产环境,这个也有不少方法,可以采用export,import像你提到的这种方式,也可以采用定期同步的方式,复杂点,也可以采用ETL方式。
2022-07-31归属地:日本 - sqnv_geek增量sql如何patch到prod?apply git diff吗?
作者回复: 你说的增量sql,是指的是数据的增量么?抱歉我不太清楚这个提法。对于数据库的版本化管理,“All database changes are migrations” 这是martin fowler在它的网站https://www.martinfowler.com/articles/evodb.html里提到的观点。值得一读
2022-05-29 - swordman这段时间正在做C++产品的集成测试,需要开发mock,整理调用链,找Happy path,最关键的正如老师所说 —— 和开发一起梳理代码,提升软件的可测试性。
作者回复: 是的!这才是高效的自动化测试!
2022-05-17 - 太匆匆先去了解一下这些工具,带着工具去试试TDD
作者回复: 具体工具实践,可以参考我在专栏里建立的github repository,https://github.com/sheng-geek-zhuanlan/awesome-test-automation
2022-04-19 - ifelse学习打卡2024-02-17归属地:浙江
- 鑫宝曾经使用过docker 来构建测试环境。当时的场景是被测的系统,姑且称之为S 。 S 依赖A系统的,同时也依赖mysql 和redis 。 本地调试时 和真正端到端的测试环境有网络壁垒。 故将S A 和2个数据库都进行了mock,整体打包。 这样的好处是 每次的变量只有S 。 坏处是 由于S 依赖的比较多, 在真正的正式环境遇到的问题比在mock 环境多很多。2023-07-10归属地:上海
- lerame个人觉得测试还是得懂docker如何部署运行,代码里调用部署没有那么灵活,而且出问题了也不懂排查。2022-12-19归属地:广东
- 格干货满满,测试领域的导师2022-10-19归属地:广东