正在阅读:如何用正确的方法写出高质量软件的75条体会如何用正确的方法写出高质量软件的75条体会

2006-04-28 09:45 出处: 作者:MVM 责任编辑:xietaoming

  46. 你们有没有专职的软件测试人员?

  MVM:要有专职测试。如果人手不够,可以peer test,交换了测试。千万别自己测试自己的。

  47. 你们的测试有一份总的计划来规定做什么和怎么做么?

  MVM:这就是Test Plan。要不要做性能测试?要不要做Usability测试?什么时候开始测试性能?测试通过的标准是什么?用什么手段,自动的还是手动的?这些问题需要用Test Plan来回答。

  48. 你是先写Test Case然后再测试的么?

  MVM:应该如此。应该先设计再编程、先test case再测试。当然,事情是灵活的。我有时候在做第一遍测试的同时补上test case。至于先test case再开发,我不喜欢,因为不习惯,太麻烦,至于别人推荐,那试试看也无妨。

  49. 你是否会为各种输入组合创建测试用例?

  MVM:不要,不要搞边界条件组合。当心组合爆炸。有很多test case工具能够自动生成各种边界条件的组合——但要想清楚,你是否有时间去运行那么多test case。

  50. 你们的程序员能看到测试用例么?

  MVM:要。让Dev看到Test Case吧。我们都是为了同一个目的走到一起来的:提高质量。

  51. 你们是否随便抓一些人来做易用性测试?

  MVM:要这么做。自己看自己写的程序界面,怎么看都是顺眼的。这叫做审美疲劳——臭的看久了也就不臭了,不方便的永久了也就习惯了。

  52. 你对自动测试的期望正确么?

  MVM:别期望太高。依我看,除了性能测试以外,还是暂时先忘掉“自动测试”吧,忘掉WinRunner和LoadRunner吧。对于国内的软件测试的现状来说,只能“矫枉必须过正”了。

  53. 你们的性能测试是等所有功能都开发完才做的么?

  MVM:不能这样。性能测试不能被归到所谓的“系统测试”阶段。早测早改正,早死早升天。

  54. 你注意到测试中的杀虫剂效应了么?

  MVM:虫子有抗药性,Bug也有。发现的新Bug越来越少是正常的。这时候,最好大家交换一下测试的area,或者用用看其他工具和手法,就又会发现一些新bug了。

  55. 你们项目组中有人能说出产品的当前整体质量情况么?

  MVM:要有。当老板问起这个产品目前质量如何,Test Lead/Manager应该负责回答。

  56. 你们有单元测试么?

  MVM:单元测试要有的。不过没有单元测试也不是不可以,我做过没有单元测试的项目,也做成功了——可能是侥幸,可能是大家都是熟手的关系。还是那句话,软件工程是非常实践、非常工程、非常灵活的一套方法,某些方法在某些情况下会比另一些方法好,反之亦然。

  57. 你们的程序员是写完代码就扔过墙的么?

  MVM:大忌。写好一块程序以后,即便不做单元测试,也应该自己先跑一跑。虽然有了专门的测试人员,做开发的人也不可以一点测试都不做。微软还有Test Release Document的说法,程序太烂的话,测试有权踢回去。

  58. 你们的程序中所有的函数都有输入检查么?

  MVM:不要。虽然说做输入检查是write secure code的要点,但不要做太多的输入检查,有些内部函数之间的参数传递就不必检查输入了,省点功夫。同样的道理,未必要给所有的函数都写注释。写一部分主要的就够了。

  59. 产品有统一的错误处理机制和报错界面么?

  MVM:要有。最好能有统一的error message,然后每个error message都带一个error number。这样,用户可以自己根据error number到user manual里面去看看错误的具体描述和可能原因,就像SQL Server的错误那样。同样,ASP.NET也要有统一的Exception处理。可以参考有关的Application Block。

  60. 你们有统一的代码书写规范么?

  MVM:要有。Code Convention很多,搞一份来发给大家就可以了。当然,要是有FxCop这种工具来检查代码就更好了。

键盘也能翻页,试试“← →”键

关注我们

最新资讯离线随时看 聊天吐槽赢奖品