碎碎念——让人头疼的单元测试

简介:

做单元测试的过程,我们兴奋过,低落过,冷静过,改革过,现在良性发展中,刚开始做的时候很兴奋,一天只知道写啊写啊,到头来写了很多单元测试用例,但到现在扔掉的也很多。

  当然原因也很多,主要还是测试目的的不明确,测试范围的不明确,测试标准不明确,对模块本向在产品中为何存在,为什么是这样存在没有弄清楚,走了很多湾路。

  当然接到一个模块的测试任务时,应该与开发人员,系统测试人员和产品人员,了觖这个模块为什么存在,有什么功能,在产品中是怎么样的一个位置和作用。

  要多读开发的代码,测试用例写完后,一定要调试一次测试案例,跟到开发的代码里面去,一行一行的看状态是不是正确,一般都会发现很多bug的。

  测试一个模块不光要看是否正确实现了想要的功能,还要看开发这样写是不是合理,有没有改进的地方,并提出改进方案,开心的就是我们周围的一群同事常常在测试一个模块的时候就会写一封改进方案的邮件发给开发人员,并抄送给相关上级,在算法的简单,性能的提高,成本的减少都引到了很好的作用。这也是人们的开发人员很尊重我们测试人员提出的任务意见的原因,原因他们知道这个模块还有一个测试人员和他们自己一样对这个模块里的每一行代码都很熟悉。

  测试的标准很难,怎么样才算这个模块测试好了,因为上级不用看你写的测试用例,他只要数据,但是给什么他才有说服力,我们在案例数,bug数等很多数据里选了代码覆盖率做为标准,虽然这个数据也不能充分说明测试的完整性,但相对来说还是比较有信服性。

  测试用例在后期维护的时候,我们就头疼过,而且是很头疼,模块内部实现变了,接口变了,在产品里的位置变了,数据结构变了,我们的用例就天天跟着开发也在变。目前没有特别好的办法,只能看具体问题具体处理,在写用例的时候还是有一点点技巧的。

  可恨的setup和teardown,之前对它的理解就是测试前的事情和测试后做的事情,所以不太注意这个地方,就引起测试用例一个一个运行是正常的,一批一批运行就失败了;一个人写的案例运行是正常的,两个写的案例在一起运行就失败了。一失败就是几百个,要找出是那个用例引起的测试环境的破坏,很痛苦。真的很痛苦!!!“吃掉自己的狗食”这句话用到这里绝对合适,不要仅把自己的setup做好,自己的teardown比setup更重要。

  测试用例常失败的几个原因:

  1、行为敏感性 如果系统的行为发生变化,如需求变了,这时测试就会失败。

  2、接口敏感性

  3、数据敏感性测试

  4、上下文敏感。

  突然想写,写的比较乱多见凉。

本文出自seven的测试人生公众号最新内容请见作者的GitHub页:http://qaseven.github.io/

目录
打赏
0
0
0
0
177
分享
相关文章
Jmeter工具使用:HTTP接口性能测试实战
希望这篇文章能够帮助你初步理解如何使用JMeter进行HTTP接口性能测试,有兴趣的话,你可以研究更多关于JMeter的内容。记住,只有理解并掌握了这些工具,你才能充分利用它们发挥其应有的价值。+
330 23
接口测试新选择:Postman替代方案全解析
在软件开发中,接口测试工具至关重要。Postman长期占据主导地位,但随着国产工具的崛起,越来越多开发者转向更适合中国市场的替代方案——Apifox。它不仅支持中英文切换、完全免费不限人数,还具备强大的可视化操作、自动生成文档和API调试功能,极大简化了开发流程。
2025接口测试全攻略:高并发、安全防护与六大工具实战指南
本文探讨高并发稳定性验证、安全防护实战及六大工具(Postman、RunnerGo、Apipost、JMeter、SoapUI、Fiddler)选型指南,助力构建未来接口测试体系。接口测试旨在验证数据传输、参数合法性、错误处理能力及性能安全性,其重要性体现在早期发现问题、保障系统稳定和支撑持续集成。常用方法包括功能、性能、安全性及兼容性测试,典型场景涵盖前后端分离开发、第三方服务集成与数据一致性检查。选择合适的工具需综合考虑需求与团队协作等因素。
391 24
除了postman还有什么接口测试工具
最好还是使用国内的接口测试软件,其实国内替换postman的软件有很多,这里我推荐使用yunedit-post这款接口测试工具来代替postman,因为它除了接口测试功能外,在动态参数的支持、后置处理执行sql语句等支持方面做得比较好。而且还有接口分享功能,可以生成接口文档给团队在线浏览。
176 2
Socket.IO介绍,以及怎么连接测试Socket.IO接口?
Socket.IO 是一个用于浏览器和服务器间实时双向通信的库,支持低延迟消息传递、跨平台运行及自动重连。文章介绍了其特点与调试需求,并详细说明如何使用 Apifox 工具创建、连接、发送/接收 Socket.IO 事件,以及团队协作和调试技巧。掌握这些技能可提升实时应用开发效率与质量。
Python测试淘宝店铺所有商品接口的详细指南
本文详细介绍如何使用Python测试淘宝店铺商品接口,涵盖环境搭建、API接入、签名生成、请求发送、数据解析与存储、异常处理等步骤。通过具体代码示例,帮助开发者轻松获取和分析淘宝店铺商品数据,适用于电商运营、市场分析等场景。遵守法规、注意调用频率限制及数据安全,确保应用的稳定性和合法性。
微信公众号接口测试实战指南
微信公众号接口测试是确保系统稳定性和功能完整性的重要环节。本文详细介绍了测试全流程,包括准备、工具选择(如Postman、JMeter)、用例设计与执行,以及常见问题的解决方法。通过全面测试,可以提前发现潜在问题,优化用户体验,确保公众号上线后稳定运行。内容涵盖基础接口、高级接口、微信支付和数据统计接口的测试,强调了功能验证、性能优化、安全保护及用户体验的重要性。未来,随着微信生态的发展,接口测试将面临更多挑战和机遇,如小程序融合、AI应用和国际化拓展。
以项目登录接口为例-大前端之开发postman请求接口带token的请求测试-前端开发必学之一-如果要学会联调接口而不是纯写静态前端页面-这个是必学-本文以优雅草蜻蜓Q系统API为实践来演示我们如何带token请求接口-优雅草卓伊凡
以项目登录接口为例-大前端之开发postman请求接口带token的请求测试-前端开发必学之一-如果要学会联调接口而不是纯写静态前端页面-这个是必学-本文以优雅草蜻蜓Q系统API为实践来演示我们如何带token请求接口-优雅草卓伊凡
203 5
以项目登录接口为例-大前端之开发postman请求接口带token的请求测试-前端开发必学之一-如果要学会联调接口而不是纯写静态前端页面-这个是必学-本文以优雅草蜻蜓Q系统API为实践来演示我们如何带token请求接口-优雅草卓伊凡
大前端之前端开发接口测试工具postman的使用方法-简单get接口请求测试的使用方法-简单教学一看就会-以实际例子来说明-优雅草卓伊凡
大前端之前端开发接口测试工具postman的使用方法-简单get接口请求测试的使用方法-简单教学一看就会-以实际例子来说明-优雅草卓伊凡
205 10
大前端之前端开发接口测试工具postman的使用方法-简单get接口请求测试的使用方法-简单教学一看就会-以实际例子来说明-优雅草卓伊凡
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等