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

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

相关文章

Spring Boot项目部署命令java -jar的各种参数及作用详解

《SpringBoot项目部署命令java-jar的各种参数及作用详解》:本文主要介绍SpringBoot项目部署命令java-jar的各种参数及作用的相关资料,包括设置内存大小、垃圾回收... 目录前言一、基础命令结构二、常见的 Java 命令参数1. 设置内存大小2. 配置垃圾回收器3. 配置线程栈大小

Spring Boot项目中结合MyBatis实现MySQL的自动主从切换功能

《SpringBoot项目中结合MyBatis实现MySQL的自动主从切换功能》:本文主要介绍SpringBoot项目中结合MyBatis实现MySQL的自动主从切换功能,本文分步骤给大家介绍的... 目录原理解析1. mysql主从复制(Master-Slave Replication)2. 读写分离3.

Spring Security基于数据库的ABAC属性权限模型实战开发教程

《SpringSecurity基于数据库的ABAC属性权限模型实战开发教程》:本文主要介绍SpringSecurity基于数据库的ABAC属性权限模型实战开发教程,本文给大家介绍的非常详细,对大... 目录1. 前言2. 权限决策依据RBACABAC综合对比3. 数据库表结构说明4. 实战开始5. MyBA

Spring Boot + MyBatis Plus 高效开发实战从入门到进阶优化(推荐)

《SpringBoot+MyBatisPlus高效开发实战从入门到进阶优化(推荐)》本文将详细介绍SpringBoot+MyBatisPlus的完整开发流程,并深入剖析分页查询、批量操作、动... 目录Spring Boot + MyBATis Plus 高效开发实战:从入门到进阶优化1. MyBatis

MyBatis 动态 SQL 优化之标签的实战与技巧(常见用法)

《MyBatis动态SQL优化之标签的实战与技巧(常见用法)》本文通过详细的示例和实际应用场景,介绍了如何有效利用这些标签来优化MyBatis配置,提升开发效率,确保SQL的高效执行和安全性,感... 目录动态SQL详解一、动态SQL的核心概念1.1 什么是动态SQL?1.2 动态SQL的优点1.3 动态S

Pandas使用SQLite3实战

《Pandas使用SQLite3实战》本文主要介绍了Pandas使用SQLite3实战,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学... 目录1 环境准备2 从 SQLite3VlfrWQzgt 读取数据到 DataFrame基础用法:读

一文教你如何将maven项目转成web项目

《一文教你如何将maven项目转成web项目》在软件开发过程中,有时我们需要将一个普通的Maven项目转换为Web项目,以便能够部署到Web容器中运行,本文将详细介绍如何通过简单的步骤完成这一转换过程... 目录准备工作步骤一:修改​​pom.XML​​1.1 添加​​packaging​​标签1.2 添加

tomcat多实例部署的项目实践

《tomcat多实例部署的项目实践》Tomcat多实例是指在一台设备上运行多个Tomcat服务,这些Tomcat相互独立,本文主要介绍了tomcat多实例部署的项目实践,具有一定的参考价值,感兴趣的可... 目录1.创建项目目录,测试文China编程件2js.创建实例的安装目录3.准备实例的配置文件4.编辑实例的

springboot集成Deepseek4j的项目实践

《springboot集成Deepseek4j的项目实践》本文主要介绍了springboot集成Deepseek4j的项目实践,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价... 目录Deepseek4j快速开始Maven 依js赖基础配置基础使用示例1. 流式返回示例2. 进阶

SpringBoot项目启动报错"找不到或无法加载主类"的解决方法

《SpringBoot项目启动报错找不到或无法加载主类的解决方法》在使用IntelliJIDEA开发基于SpringBoot框架的Java程序时,可能会出现找不到或无法加载主类com.example.... 目录一、问题描述二、排查过程三、解决方案一、问题描述在使用 IntelliJ IDEA 开发基于