前言
实际软件开发,大部分给出的功能还是比较宽泛。因此在开发过程中,需求统计不足,导致与测试同学产生不必要的争吵,
时有发生。 虽然这不可以完全避免的,但可以尽量少的给测试测发现问题,除非有什么情况,促使你产生大量的bug,
或者需求缺失。
需求
一旦开始开发,一定要沉得住气。
在需求阶段,一定得多花时间,考虑的场景越多,对开发过程越有利。
如果你也是一名数据库从业者。无论在兼容任何公司产品,除考虑要实现的功能外,该功能相关的内容我们也需要能考虑到。比如,游标属性%NOTFOUNFD,这是Oracle的语法,首先参照oracle官方文档进行测试,将测试功能一一列举。更进一步,其实这表达式在内核执行的结果是一个boolea值,因此关于boolean值操作的一系列用法都应该考虑。boolean常用的方法 NOT、IS NULL等,在需求分析时应该做好充足准备,不可盲目开发。因为需求文件既是写给自己看的,也是写给领导评审的,更是测试的一个依据,因此需求文档的成功能够减少不必要的争吵。
我也知道开发来做这个工作,可能还是有难度。原因有三:
(1)实际开发过程中,任务紧,缺乏时间分析;
(2)受限与开发人员对功能的解读;
(3)重中之重,受限于开发人员的经验。
设计
完美的需求文档已经写完了,剩余考虑的是怎么去正确实现相关功能。这一部分可能因为:
1)性能测试,导致方案重做;
2)需求考虑不完整,导致目前方面不能支持新功能的添加,及兼容性差。
这也可见需求文档的重要性,不光可以节约时间,也可规避测试出现的问题。
开发
有了前面的基石,开发可能很快完成,就算遇到问题,相信各位也有能力去解决。
在开发过程中,需要注意:能封装的过程尽量进行封装,使代码具有可扩展性和兼容性,修改时更加方便。为保证代码的高效性,注释也是不可缺少的步骤,特别是关键部分的代码必须注释。可能自己都忘了,把它删除后,重新追溯问题,费时费力。
自测
自测过程中,可以参照需求文档进行测试用例的设计,并将各个小部分的功能隔开,避免思路凌乱,浪费时间。
实测过程中,受限于开发人员的主观意识,测试往往围绕开发的功能进行测试,未与其他相关功能结合,导致需求缺失。
因此,一个优秀程序员的分水岭就出现了。开发时考虑异常情况,自测时更要收集到异常情况,写成用例测试。常见的可能就是空格、括号、分号、换行符、大小写问题、符号操作等问题。更进一步,就是结合语法、控制结构相关部分进行测试,打乱顺序是基础的测试方法,也是测试的万能钥匙。
这样做的目的,可以培养自己的系统思维的能力、专注的能力、自我自省的能力。
测试
测试只能靠他们的能力了,能测出多少问题,哈哈。不是测试出身,不能给予太多建议。
总结
开发中完善自我。
工作时认真,下班后自在。
最后一句,测试同学辛苦了。