软件测试项目实战具体操作流程

2024-01-26 17:20

本文主要是介绍软件测试项目实战具体操作流程,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、测试需求分析阶段

测试需求分析阶段主要工作是获得测试项目的测试需求(测试规格)。
输出产物:《可测试性需求说明书》和《测试规格》

在实际过程中针对软件的安全性测评项目,甲方通常会提供安全功能测试需求,这就需要我们通过需求分析把甲方的安全测试需求对应到软件的信息安全性的六大子特性中。通常情况软件的安全功能应该是和我们的软件产品质量的信息安全性是对应的,但是在实际检测过程中,由于软件的差异性和各自的功能需求特性,软件产品可能无法包含所有的安全子特性的所有要求,就需要我们给甲方指出缺失项,并和甲方客户确认协商。

测试计划文档目录如下:

  1. 一、概述

  2. 1.1 需求分析目的

  3. 1.2 需求分析的依据

  4. 1.3 需求分析的方法

  5. 二、软件产品说明

  6. 2.1 项目背景

  7. 2.2 项目需求说明

  8. 2.3 项目整体设计说明

  9. 三、测试需求分析

  10. 3.1 原始需求

  11. 3.2 产品测试需求列表

  12. 3.2.1 功能测试需求

  13. 3.2.2 安全测试需求

  14. 3.2.3 性能测试需求

  15. 3.2.4 压力测试需求

  16. 3.3 测试类型确定

  17. 3.4 测试环境要求

  18. 3.4.1 硬件要求

  19. 3.4.2 软件要求

  20. 四、测试规格评估

  21. 4.1 测试类型评估

  22. 4.2 测试用例密度

  23. 4.3 需求覆盖率

二、测试计划阶段

以测试需求为基础,分析产品的总体测试策略。
输出产物:《产品总体测试计划》

当对需求有完整和全面的理解后,接下来我们需要制定详细的测试计划,为即将开始的测试工作做好充足的准备。

测试计划描述了要进行的测试活动的范围、方法、资源和进度的文档。它主要包括测试项、被测特性、测试任务、谁执行任务和风险控制等。

测试计划文档目录如下:

  1. 一、概述

  2. 1.1 项目说明

  3. 1.2 测试范围

  4. 二、测试目标

  5. 三、测试资源

  6. 3.1 软件资源

  7. 3.2 硬件资源

  8. 3.3 测试工具

  9. 3.4 人力资源

  10. 四、测试种类和测试标准

  11. 4.1 功能测试

  12. 4.2 性能测试

  13. 4.3 安全测试

  14. 4.4 易用性测试

  15. …………

  16. 五、测试要点

  17. 六、测试时间和进度

  18. 七、风险及对策

三、测试方案设计阶段

本阶段主要是以测试规格为基础获得特性测试方案,对于有自动化测试的项目,
进行自动化测试的分析,获得测试策略
输出产物:《产品或者版本总体测试方案》

测试方案是指描述需要测试的特性、测试的方法、测试环境的规划、测试工具的设计和选择、测试用例的设计方法、测试代码的设计方案。

测试方案文档目录如下:

  1. 一、引言

  2. 1.1 编写目的

  3. 1.2 项目背景

  4. 1.3 项目相关方

  5. 1.3.1 委托方与联系方式

  6. 1.3.2 承研单位与联系方式

  7. 1.3.3 测试机构与联系方式

  8. 1.4 测试目标及范围

  9. 1.5 引用文件

  10. 二、项目软件介绍

  11. 2.1 功能需求介绍

  12. 2.2 非功能需求介绍

  13. 2.2.1 性能效率需求

  14. 2.2.2 兼容性需求

  15. 2.2.3 易用性需求

  16. 2.2.4 可靠性需求

  17. 2.2.5 信息安全性需求

  18. 2.2.6 维护性需求

  19. 2.2.7可移植性需求测试需求

  20. 三、测试需求分析

  21. 3.1 测试总体要求

  22. 3.2 功能性测试

  23. 3.2.1 测试分析

  24. 3.2.2 测试内容

  25. 3.3 性能效率测试

  26. 3.3.1 测试分析

  27. 3.3.2 测试内容

  28. 3.4 兼容性测

  29. 3.4.1 测试分析

  30. 3.4.2 测试内容

  31. 3.5 易用性测试

  32. 3.5.1 测试分析

  33. 3.5.2 测试内容

  34. 3.6 可靠性测试

  35. 3.6.1 测试分析

  36. 3.6.2 测试内容

  37. 3.7 信息安全性测试

  38. 3.7.1 测试分析

  39. 3.7.2 测试内容

  40. 3.8 维护性测试

  41. 3.8.1 测试分析

  42. 3.8.2 测试内容

  43. 3.9 可移植性测试

  44. 3.9.1 测试分析

  45. 3.9.2 测试内容

  46. 3.10 用户文档集测试

  47. 3.10.1 测试分析

  48. 3.10.2 测试内容

  49. 3.11 静态分析

  50. 3.11.1 测试分析

  51. 3.11.2 测试内容

  52. 3.12 安全渗透测试

  53. 3.12.1 测试分析

  54. 3.12.2 测试内容

  55. 3.13 测试需求追踪

  56. 3.14 测试项标识说明

  57. 3.15 测试方法

  58. 3.15.1 功能测试

  59. 3.15.2 性能效率测试

  60. 3.15.3 兼容性测试

  61. 3.15.4 易用性测试

  62. 3.15.5 可靠性测试

  63. 3.15.6 信息安全性测

  64. 3.15.7 维护性测试

  65. 3.15.8 可移植性测

  66. 3.15.9 用户文档集测试

  67. 3.15.10 静态分析

  68. 3.15.11 内存检测

  69. 3.15.12 软件质量度量

  70. 3.15.13 安全渗透测试

  71. 3.16 测试充分性要求

  72. 3.17 测试终止要求

  73. 3.17.1 正常终止

  74. 3.17.2 异常中止

  75. 3.17.3 中止及重新启动

  76. 3.18 测试通过准则

  77. 四、测试环境

  78. 4.1 测试环境要求

  79. 4.2 静态测试环境

  80. 4.2.1 测试环境配置

  81. 4.3 功能测试环境

  82. 4.3.1 测试环境配置

  83. 4.3.2 环境差异影响分析

  84. 4.4 效率测试环境

  85. 4.4.1 测试环境配置

  86. 4.4.2 环境差异影响分析

  87. 4.5 测试工具配置

  88. 4.5.1 工具使用计划

  89. 4.5.2 测试工具介绍

  90. 五、项目团队架构及职责

  91. 5.1 团队组织架构

  92. 5.2 团队职责分工

  93. 六、测试计划进度

  94. 6.1 测试流程

  95. 6.2 进度计划

  96. 七、过程质量管理

  97. 7.1 配置管理

  98. 7.2 质量保证

  99. 7.2.1 质量目标和要求

  100. 7.2.2 质量保证任务

  101. 7.3跟踪与控制

  102. 八、测试交付成果

  103. 九、测试验收规范

  104. 十、风险分析应对

四、测试用例实现阶段

本阶段主要是完成各个特性的测试用例的编写和自动化脚本的编写。
输出产物:《产品自动化测试用例》和《手工执行测试用例》

用于描述测试用例的具体细节工作,测试用例一般根据测试计划及测试策略来编写

测试用例设计文档模板如下:

测试用例执行文档模板如下:

五、测试执行阶段

本阶段是根据测试策略开展测试执行和回归测试
输出产品:《产品或版本测试报告》和《缺陷分析报告》

《测试报告文档模板》如下:

  1. 一、测试基本信息

  2. 二、被测系统概述

  3. 三、测试资源

  4. 3.1 组织

  5. 3.2 测试环境及工具

  6. 3.2.1 测试环境一

  7. 3.2.2 测试环境二

  8. 四、测试规程

  9. 4.1 充分性评价

  10. 4.2 测试过程

  11. 五、测试结果

  12. 5.1 软件问题情况

  13. 5.2 测试执行结果

  14. 5.2.1 功能性测试

  15. 5.2.2 可靠性测试

  16. 5.2.3 易用性测试

  17. 5.2.4 效率测试

  18. 5.2.5 维护性测试

  19. 5.2.6 可移植性测试

  20. 5.2.7 用户文档测试

  21. 5.2.8 使用质量测试

  22. 5.2.9 产品说明测试

  23. 附录A 软件问题清单

  24. 附录B 效率测试结果

《缺陷分析报告模板》如下:

缺陷填写说明见附件一

六、评估与关闭阶段

只对前面的各个阶段的执行情况,完成对测试项目的关闭,同时提供完整的度量数据和项目总结报告
输出产物:《遗留问题风险分析报告》、《度量分析报告》和《测试关闭报告》

附件一:软件测试缺陷的定义级别、优先级及状态

1、缺陷的定义及主要类型

我们对软件缺陷分析一下,所谓"软件缺陷(bug)",即为计算机软件或程序中存在的某种破坏正常运行能力的问题、错误,或者隐藏的功能缺陷。一般来说,软件缺陷的属性包括缺陷标识、缺陷类型、缺陷严重程度、缺陷优先级、缺陷来源、缺陷原因等。

进行软件缺陷分析后,软件缺陷的主要可以分为以下几种类型:

(1)设计不合理;

(2)功能、特性没有实现或部分实现;

(3)运行出错,包括运行中断、系统崩溃、界面混乱等;

(4)与需求不一致,在执行TestCase时则为实际结果和预期结果不一致;

(5)用户不能接受的其他问题,如存取时间过长、界面不美观;

(6)软件实现了需求未提到的功能。

(7)软件存在安全漏洞

2、缺陷的级别、优先级及状态
2.1 缺陷级别

软件缺陷有四种级别,分别为:致命的(Fatal),严重的(Critical),一般的(Major),微小的(Minor)。

A类—致命的软件缺陷(Fatal):造成系统或应用程序崩溃、死机、系统挂起,或造成数据丢失,主要功能完全丧失,导致本模块以及相关模块异常等问题。如代码错误,死循环,数据库发生死锁、与数据库连接错误或数据通讯错误,未考虑异常操作,功能错误等

B类—严重错误的软件缺陷(critical):系统的主要功能部分丧失、数据不能保存,系统的次要功能完全丧失。问题局限在本模块,导致模块功能失效或异常退出。如致命的错误声明,程序接口错误,数据库的表、业务规则、缺省值未加完整性等约束条件

C类—一般错误的软件缺陷(major):次要功能没有完全实现但不影响使用。如提示信息不太准确,或用户界面差,操作时间长,模块功能部分失效等,打印内容、格式错误,删除操作未给出提示,数据库表中有过多的空字段等

D类—较小错误的软件缺陷(Minor):使操作者不方便或遇到麻烦,但它不影响功能过的操作和执行,如错别字、界面不规范(字体大小不统一,文字排列不整齐,可输入区域和只读区域没有明显的区分标志),辅助说明描述不清楚

E类- 建议问题的软件缺陷(Enhancemental):由问题提出人对测试对象的改进意见或测试人员提出的建议、质疑。

2.2 缺陷优先级

常用的软件缺陷的优先级表示方法可分为:立即解决P1、高优先级P2、正常排队P3、低优先级P4。立即解决是指缺陷导致系统几乎不能使用或者测试不能继续,需立即修复;高优先级是指缺陷严重影响测试,需要优先考虑;正常排队是指缺陷需要正常排队等待修复;而低优先级是指缺陷可以在开发人员有时间的时候再被纠正。

2.3 缺陷状态

(1)激活状态(Active或Open)。

(2)已修正状态(Fixed或Resolved)。

(3)关闭或非激活状态(Close或Inactive)。

总结:

感谢每一个认真阅读我文章的人!!!

作为一位过来人也是希望大家少走一些弯路,如果你不想再体验一次学习时找不到资料,没人解答问题,坚持几天便放弃的感受的话,在这里我给大家分享一些自动化测试的学习资源,希望能给你前进的路上带来帮助。

  1. 文档获取方式:

  2. 加入我的软件测试交流群:1007119548免费获取~(同行大佬一起学术交流,每晚都有大佬直播分享技术知识点)

这份文档,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!

以上均可以分享,只需要你搜索vx公众号:程序员雨果,即可免费领取

这篇关于软件测试项目实战具体操作流程的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/647511

相关文章

springboot项目中整合高德地图的实践

《springboot项目中整合高德地图的实践》:本文主要介绍springboot项目中整合高德地图的实践,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一:高德开放平台的使用二:创建数据库(我是用的是mysql)三:Springboot所需的依赖(根据你的需求再

SpringBoot整合Flowable实现工作流的详细流程

《SpringBoot整合Flowable实现工作流的详细流程》Flowable是一个使用Java编写的轻量级业务流程引擎,Flowable流程引擎可用于部署BPMN2.0流程定义,创建这些流程定义的... 目录1、流程引擎介绍2、创建项目3、画流程图4、开发接口4.1 Java 类梳理4.2 查看流程图4

一文详解如何在idea中快速搭建一个Spring Boot项目

《一文详解如何在idea中快速搭建一个SpringBoot项目》IntelliJIDEA作为Java开发者的‌首选IDE‌,深度集成SpringBoot支持,可一键生成项目骨架、智能配置依赖,这篇文... 目录前言1、创建项目名称2、勾选需要的依赖3、在setting中检查maven4、编写数据源5、开启热

Python并行处理实战之如何使用ProcessPoolExecutor加速计算

《Python并行处理实战之如何使用ProcessPoolExecutor加速计算》Python提供了多种并行处理的方式,其中concurrent.futures模块的ProcessPoolExecu... 目录简介完整代码示例代码解释1. 导入必要的模块2. 定义处理函数3. 主函数4. 生成数字列表5.

SpringBoot项目配置logback-spring.xml屏蔽特定路径的日志

《SpringBoot项目配置logback-spring.xml屏蔽特定路径的日志》在SpringBoot项目中,使用logback-spring.xml配置屏蔽特定路径的日志有两种常用方式,文中的... 目录方案一:基础配置(直接关闭目标路径日志)方案二:结合 Spring Profile 按环境屏蔽关

java Long 与long之间的转换流程

《javaLong与long之间的转换流程》Long类提供了一些方法,用于在long和其他数据类型(如String)之间进行转换,本文将详细介绍如何在Java中实现Long和long之间的转换,感... 目录概述流程步骤1:将long转换为Long对象步骤2:将Longhttp://www.cppcns.c

MySQL版本问题导致项目无法启动问题的解决方案

《MySQL版本问题导致项目无法启动问题的解决方案》本文记录了一次因MySQL版本不一致导致项目启动失败的经历,详细解析了连接错误的原因,并提供了两种解决方案:调整连接字符串禁用SSL或统一MySQL... 目录本地项目启动报错报错原因:解决方案第一个:第二种:容器启动mysql的坑两种修改时区的方法:本地

springboot项目中使用JOSN解析库的方法

《springboot项目中使用JOSN解析库的方法》JSON,全程是JavaScriptObjectNotation,是一种轻量级的数据交换格式,本文给大家介绍springboot项目中使用JOSN... 目录一、jsON解析简介二、Spring Boot项目中使用JSON解析1、pom.XML文件引入依

使用vscode搭建pywebview集成vue项目实践

《使用vscode搭建pywebview集成vue项目实践》:本文主要介绍使用vscode搭建pywebview集成vue项目实践,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地... 目录环境准备项目源码下载项目说明调试与生成可执行文件核心代码说明总结本节我们使用pythonpywebv

Java Spring 中的监听器Listener详解与实战教程

《JavaSpring中的监听器Listener详解与实战教程》Spring提供了多种监听器机制,可以用于监听应用生命周期、会话生命周期和请求处理过程中的事件,:本文主要介绍JavaSprin... 目录一、监听器的作用1.1 应用生命周期管理1.2 会话管理1.3 请求处理监控二、创建监听器2.1 Ser