谈质量保证问题

1, 什么样的测试策略?是整个编码完成了才开始大规模测试?还是迭代式的,每次迭代完成就意味着已经测试过?还是当到了一定的里程碑就开始测试,例如完成了一半或者百分之几的编码有些特性可以用了就开始测试?
-- 开发是迭代式的,测试也应当是迭代式的。新洲的失败之一,是大量代码开发完后才进行测试。其实,测试和开发,在时间关系上应当更紧密,时间间隔更小,粒度“granularity”更小。粒度小,就更好控制。

2,测试大纲或者test case是谁来写?什么时候开始写?什么时候完成?如何保证测试覆盖率呢?
-- test team 根据 PM spec 和 dev spec 来编写测试计划,测试大纲。test plan review meeting 应当请 PM 和 dev 参加。

3,有多少种测试?例如单元测试,冒烟测试,回归测试….
你们执行哪些测试?
-- 很多。还有专门针对 performance 的测试,还有压力测试。还有 bug bash,专门用于发现隐藏在角落的错误,但这需要大量的人力资源。

4,如何判断产品已经到了某种状态?例如beta release,是根据缺陷率还是质量人员的感觉?用哪些数据来说话的呢?
-- 根据缺陷率。准确的说,是根据 “bug 发现”的曲线和 “bug fix”的曲线。如果是收敛的,说明进展良好。收敛到 0,就有希望发布。然后维持在 0 上下跳动一段时间,仍然很稳定,就可以发布了。

5,你们的开发人员和如何与测试人员合作的呢?例如一个新产品的开发,是一边开发新功能,一边测试,一边修bug
么?
-- 是的,如前所述,应当同时进行。包括写手工test 的规格说明;自动测试的代码等。

6,你们是如何保证用户满意度的呢?就是说你们是如何保证自己的产品是符合客户需求的呢?有产品经理的频繁交互?
-- 这一点我目前还没有在 microsoft 接触到。Redmond 有专门的 team 负责用户体验调查。手法很严格。通过大量的用户,使用随机对照的实验方法。此方法可以排除“人”的主观性。

软件质量的保证涉及到方方面面,很多内容。局限于我的认识,只提出了这些问题,以便交流。希望有人补充更多的问题。

你们单位在这些问题上是怎么处理呢?

原文地址:https://www.cnblogs.com/caoshenghe/p/1578990.html