基础功能测试的一些实质建议

简介:
 1、对于旧的稳定的程序,一旦新添加功能,尤其是调用旧模块的功能的,回归测试工作量大而枯燥,不可避免

  针对此条,对于LEADER而言,最大的难处在于时间风险的估算。最好的解决方式是和开发人员开会,共同探讨模块的复杂性和测试时间。一般,开发,测试,修复,再测试的周期中,开发和测试的时间是1:2左右。甚至更多。

  对于测试用例的设计人员而言,最大的难处并不在于新功能本身,而是如何设计覆盖路径,新旧版本之间的问题将非常严重。怎样设计组合用例,将是测试的重中之重。

   活生生的例子: 我们的测试用例中没有设计到横向子模块的兼容性测试,因为旧版本没有该问题,而新版本也仅仅是调用这个模块。结果,在冒烟测试中,就发现,这个被调用的公 用模块,在某一个相对特殊的子模块中,会发生菜单项无效的问题。随后再想到要设计横向模块的兼容性测试,并和旧版本做比较,浪费了很多时间。

  2、一定要和旧版本一起,做至少一轮的随机测试

   尤其是涉及到自定义的数据保存功能的情况下,用新版本的程序读取旧版本保存的数据看看。接口之间的古怪问题,一定会让你颇有成就感。另外,去有规律的做 一些古怪的随机测试,比如,程序中产生报表或者示例图之后,最小化窗口,再还原看看。很有可能,图片和数据就变了,或者消失,或者残缺了。这种怪事就在我 的测试中实际发生了。因此,这一轮的随机测试一定要做,思路越古怪越好。

  3、不要嫌重复劳动麻烦

  亲身经历了令人沮丧的事情。在某3天,我不停地测试一个功能,单元测试证 明代码和算法没有错误,我也看过,的确不可能出错。前台依赖这个算法而显示的数据上万。不过还是出于负责而一条一条的检查,一直没有出现问题。最终,想放 弃的时候,发现,这将近2万条数据,最后的10条果然出现了问题。你说妖怪不?早知道就应该从尾巴开始测试。哎。所以,不能放弃,知道不,测试就是要负责 的。

  4、关于不可重现的BUG

  唯一能够告诉新手的就是,你每做一个动作,都必须保持脑子清晰。当你发现某些一定是不可重现BUG时(比如内存溢出,花屏等),别着急关闭你的屏幕,直接叫开发过来看,或者打开任务管理器,并截取图片保存。因为这是你的业绩。


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

目录
相关文章
|
1月前
|
新零售 供应链 小程序
复购见单模式小程序开发系统|细节方案
人们之所以喜欢在网上购物,最主要的是价格便宜,而且还能够在短时间内就拿到手
|
1月前
|
vr&ar 图形学
2D丨3D元宇宙游戏系统开发详细规则/需求步骤/逻辑方案/源码步骤
Developing a 2D/3D metaverse game system involves multiple aspects, including game design, graphics engines, virtual world construction, social interaction, and economic systems. The following is a summary of a development plan:
|
6月前
|
存储 缓存 监控
《优化接口设计的思路》系列:第二篇—接口用户上下文的设计与实现
大家好!我是sum墨,一个一线的底层码农,平时喜欢研究和思考一些技术相关的问题并整理成文,限于本人水平,如果文章和代码有表述不当之处,还请不吝赐教。 作为一名从业已达六年的老码农,我的工作主要是开发后端Java业务系统,包括各种管理后台和小程序等。在这些项目中,我设计过单/多租户体系系统,对接过许多开放平台,也搞过消息中心这类较为复杂的应用,但幸运的是,我至今还没有遇到过线上系统由于代码崩溃导致资损的情况。这其中的原因有三点:一是业务系统本身并不复杂;二是我一直遵循某大厂代码规约,在开发过程中尽可能按规约编写代码;三是经过多年的开发经验积累,我成为了一名熟练工,掌握了一些实用的技巧。
51 0
|
18天前
|
C++ Python
量化交易系统开发详细步骤/需求功能/策略逻辑/源码指南
Developing a quantitative trading system involves multiple steps, and the following is a possible development process
|
7月前
|
API
api一键自动合约跟单模式 | 程序化交易系统开发讲解【附样板源码实例分析】
“量化交易”有着两层含义:一是从狭义上来讲,是指量化交易的内容,将交易条件转变成为程序,自动下单;二是从广义上来讲,是指系统交易方法,就是一个整合的交易系统。
|
3月前
|
安全 前端开发 测试技术
【测开方法论】当老功能代码命名不规范的时候...如何安全增加新功能
【测开方法论】当老功能代码命名不规范的时候...如何安全增加新功能
|
6月前
|
敏捷开发 测试技术
推三返一开发稳定版丨推三返一项目系统开发详细指南/方案需求/步骤逻辑/流程功能/案例设计/技术架构/源码程序
推三返一系统开发是一种软件开发模式,也被称为迭代增量开发模式。它是一种敏捷开发方法的一种,通过将整个开发过程分为多个迭代周期,每个周期都会增加新的功能和特性,并在每个迭代周期结束后进行测试、反馈和修改。推三返一系统开发的核心思想是“推进三步,反馈一步”。
|
BI 数据处理 Scala
报表统计_执行框架_旧模块改造 | 学习笔记
快速学习报表统计_执行框架_旧模块改造
76 0
报表统计_执行框架_旧模块改造 | 学习笔记
|
敏捷开发 测试技术
【测试基础】三、为什么要做自动化测试?哪种项目合适?
【测试基础】三、为什么要做自动化测试?哪种项目合适?
【测试基础】三、为什么要做自动化测试?哪种项目合适?
|
JSON JavaScript 搜索推荐
项目重构后,如何利用Postman快速对比出新旧接口之间的差异
最近接了一个项目,在现有的项目基础上,购买了一个新的数据源,需要将底层的数据进行更换,为了后续能够更好的扩展和维护,在替换的时候,会重新设计表结构。