张工在希赛信息技术有限公司工作,被委派到了一个新的项目担任项目经理,为客户K公司开发用于支撑业务的信息系统。这是一个规模较小,复杂度较低的系统。由于市场竟争的原因,合同额很少。出于成本的考虑,公司分配给张工的人员并不多。为解决人力资源不足的问题,张工考虑,系统复杂度不高,可以一定程度上简化测试工作。于是张工在项目中做了如下安排:
1不进行单元测试和集成测试,仅进行系统测试。
2不安排专门的资源开发系统测试用例。因为程序员熟悉自己开发模块的业务,由程序员对自己开发的程序进行黑盒测试,对测试中发现的缺陷进行记录并跟踪,且立即修改。
3在测试过程中,每三天定义为一个测试周期,统计每个测试周期每个模块发现的缺陷数量。若连续两个测试周期没有发现的缺陷少于总缺陷的5%且发现缺陷的趋势基本平稳,则认为测试工作基本完成。
张工的理由如下:首先,随着系统中缺陷的减少,程序员会有越来越多的时间进行测试,以发现系统缺陷。其次,当系统中缺陷数量很少时,程序员发现的缺陷回变的越来越困难,总缺陷数几乎不再增加,这时发现缺陷的趋势变得很平稳,且发现的数量很少。
在测试阶段,张工统计到的数据如下表1所示。
表1:测试阶段统计数据
测试周期 周期内发现缺陷数 发现缺陷的总数 缺陷增加占总数的比例
1 32 32 100.00%
2 35 67 52.24%
3 42 109 38.53%
4 25 134 18.66%
5 16 150 10.67%
6 7 157 4.46%
7 6 163 3.68%
张工认为吃工作基本完成,决定进入系统发布阶段。
问题一:请逐一点评张工对测试工作进行的三点安排。
问题二:在人力资源有限的情况下,张工不可能找到专门的测试人员全程进行测试,那么张工应做哪些改进来提高测试工作的质量。
问题三:简要论述软件质量保证与软件测试的关系。 希望大家发表自己的意见就好

解决方案 »

  1.   

    个人觉得集合测试是必需的。没有从事过专门的软件测试工作。
    不过个人觉得虽然开发者对自己的代码比较熟悉,但是测试的局限性就比较大,边缘数据会考虑不周全。
    其次,开发者可以直接做白盒测试啊,为什么要进行黑盒测试?才疏学浅,不知道有没有说错
      

  2.   

    问题一:请逐一点评张工对测试工作进行的三点安排。
    1、没有单元测试会导致集成测试阶段代码定位的复杂度。
    2、可以结对编程或相互测试。
    3、没什么看法。
    问题二:在人力资源有限的情况下,张工不可能找到专门的测试人员全程进行测试,那么张工应做哪些改进来提高测试工作的质量。
    相互测试。问题三:简要论述软件质量保证与软件测试的关系。
    拒绝答论述题。