测试就是为了寻找缺陷,那具体什么是缺陷呢,所谓软件缺陷,即为计算机软件或程序中存在的某种破坏正常运行能力的问题、错误,或者隐藏的功能缺陷。缺陷的存在会导致软件产品在某种程度上不能满足用户的需要。缺陷有一个标准的定义:从产品内部看,缺陷是软件产品开发或维护过程中存在的错误、毛病等各种问题;从产品外部看,缺陷是系统所需要实现的某种功能的失效或违背。

    对于功能测试来说,寻找缺陷,就是看系统是否满足了用户的需求。比如需求提到了某个功能但开发人员没有实现这个功能;需求有这个功能但开发人员实现的不正确;还有某些功能需求中没有提到但开发人员却实现了等,这些都是软件的缺陷(Bug)。

   一个完整的测试流程包括需求分析,测试计划,测试执行,测试总结等。

今天主要讲的是怎么执行测试计划。首先我们必须根据需求编写测试用例,测试用例的编写从需求出发,它要求系统应该实现什么功能,它的预期结果是什么,实际结果功能是否都已经正确实现呢。我们必须要进行提测,通过对功能进行测试,一是出现的问题是我们测试用例没有编写正确,我们可以在测试的过程中发现自己没有关注到的点,从而补充测试用例;二是我们发现的问题是系统的问题,也就是缺陷,是开发人员没有实现或实现错误的功能问题,这就是Bug。

   从拿到开发人员编写的系统第一个版本,我们需要根据测试用例进行测试,看界面是否实现了功能,如果我们发现了Bug,我们需要和开发人员进行交流,让开发人员修改Bug,当我们拿到了开发人员修改完Bug的系统,首先我们需要对第一个版本中发现的Bug进行验证,看开发人员是否修改正确。如果把Bug验证没问题,我们还要对第一版本测试没有问题的功能进行回归测试,也就是复测,避免出现修改Bug后出现其他新的问题。

    对于我们在JIRA上提交Bug时,有几个点要关注,一是Bug的位置要清楚;二是操作的步骤要详细,出现的实际结果是什么;三是期望的结果是什么等,这些都要清晰,Bug的主题要简洁清晰明了。