开始研究软件测试

时间:2014-03-17 08:22:56

标签: testing automated-tests

我将为一家公司的软件测试流程工作,该公司有几个项目(使用不同的技术),我正在计划改进和自动化软件测试过程。我知道一些概念,如黑盒子和白盒测试,以及它的一些技术,但我在该领域没有太多经验。我将能够访问项目文档,我希望更多地参与功能测试,而不是白盒测试(尽管我不完全确定)。

开始的“正确方法”是什么?我知道这取决于几个因素,所以我不希望得到一个完美的答案,但如果我能读懂其他人如何开始,那对我来说会很棒。

您从一开始就遵循什么样的指导方针? CMMI和IEEE829标准在哪里?是否值得注意其他任何标准/指南?

正确评估公司内部软件测试流程当前效率/生产力水平的最佳方法是什么?

1 个答案:

答案 0 :(得分:0)

测试生命周期的不同阶段

测试过程的生命周期与软件开发生命周期相交叉。什么时候测试开始会因公司而异。在一些公司中,测试与开发同时开始,而在其他公司中,测试在软件构建之后开始。这两种方法都有各自的优缺点。无论采用何种方法测试软件,所遵循的步骤或多或少都如下所述。

计划阶段 软件测试生命周期阶段的过程从测试计划阶段开始。建议在此阶段花费大量时间,以最大限度地减少其他软件测试阶段的麻烦。正是在这个阶段,创建了“测试计划”。它是一个文档,其中提到了要测试的项目以及要测试的功能,测试的通过/未通过标准,退出标准,要创建的环境,风险和突发事件。这为测试团队提供了精确的规范。

分析阶段 对需求进行分析,以便测试团队能够精通已开发的软件。正是在这个阶段,决定了在测试生命周期的不同阶段进行的测试类型。在某些情况下,测试可能必须是自动化的,而在其他情况下,必须进行手动测试。功能验证矩阵基于业务需求。它通常基于一个或多个测试用例。该矩阵有助于分析哪些测试用例必须自动化,哪些必须手动测试。

设计阶段 在软件测试生命周期中,这个阶段可以发挥重要作用。这里修改了测试计划,功能验证矩阵,测试用例等。这确保了它们中的任何一个都不存在问题。如果测试用例必须自动化,则在此阶段设计适合的测试用例。还生成了手动和自动测试用例的测试数据。

开发阶段 根据测试计划和测试用例,整个脚本在此阶段进行。如果测试活动随软件的开发活动一起开始,则单元测试也将在开发阶段实施。通常与单元测试一起,在此阶段生成压力和性能测试计划。

执行阶段 在完成测试脚本之后,它们将被执行。最初,执行单元测试,然后进行功能测试。在初始阶段,测试是在表面水平上进行的,即在最高水平上进行。这有助于识别顶层的错误,然后报告给开发团队。然后对软件进行深入测试。创建测试报告并报告错误。

重新测试和回归测试阶段 一旦确定了错误,就会将它们发送给开发团队。根据错误的性质,错误可能会被拒绝,推迟或修复。如果错误已被接受并立即修复,则必须重新测试软件以检查错误是否确实已修复。执行回归测试以确保在修复错误时不会在软件中创建新的错误。

<强>实施 检查系统后,开发人员进行最终测试。在这里进行负载,压力,性能和恢复测试。然后该软件在客户端实现。最终用户测试软件和错误(如果有任何报告)。生成相同的必要文件。

测试生命周期的阶段并未在实施阶段结束。这是在研究发现的bug时,以便将来排除这些问题。此分析有助于改进下一个软件的软件开发过程。