本帖最后由 韶光暗淡 于 2022-9-5 14:00 编辑
一、软件的生命周期: 软件定义时期: 1、项目计划:立项,公司上层领导人确定开发的总目标,考虑开发成本,开发所需技术,开发进度,产生效益,所需资源等。 2、需求分析:产品经理或需求工程师根据市场调研或用户定制进行需求分析,输出《需求规格说明书》SRS。 软件开发时期: 3、软件设计:设计是软件工程的核心,设计工程师(一般都是公司技术和经验并存的大佬)根据需求设计成可实现的架构,输出概要《概要设计说明书HLD》和《详细概要设计说明书LLD》。 4、软件编码:开发工程师(程序员)使用不同的编程语言(java,python,c,c++,php等),根据设计说明书,输出源代码,软件系统。 5、软件测试:测试工程师需对《需求规格说明书》、《设计说明书》等文档和软件系统(单元测试,集成测试,系统测试,验收是)进行测试,确保软件到达用户的实际需求和减少缺陷bug的产生。 软件运维时期: 6、软件运维:运维工程师通过日常的软件运行维护升级,提示用户体验。 二、软件测试的定义: 1983年,IEEE提出的软件工程标准术语,软件测试定义为: “使用人工和自动化工具来测试或运行某个系统的过程,其目的是在于检验它是否满足规定的需求或者弄清预期结果与实际结果之间的差别” 三、软件测试的目的和内容: 目的:尽可能的找到更多bug 内容:“验证软件与需求之间的一致性,确认开发出来的软件是否符合用户的实际需求” 四、软件测试的流程:分为两个测试流程,一是软件测试的全流程,二是版本测试流程 1、软件测试的全流程:
- 立项
- 编写测试计划
- 进行测试设计
- 编写测试用例
- 执行单元测试
- 执行集成测试
- 执行系统测试
- 项目验收测试
- 软件上线
- 迭代回归测试
- 下线
2、软件版本测试流程:
- 领取测试任务,从SVN服务器(虚拟网络服务器)中获取待测试软件包和最新的需求规格说明书SRS,原型图,效果图
- 组长编写《版本测试计划》,组员搭建测试环境
- 组长编写《版本测试方案》,组员进行冒烟测试(对软件进行基本功能的简单测试)
- 小组分工结对,编写模块的测试用例《测试用例库》,组长筛选测试用例,并分配给测试工程师
- 执行测试(执行测试用例,执行测试方法,执行探索性测试,执行随机性测试)
- 发现并提交bug,进行缺陷分析及跟踪
- 进行测试总结,编写《版本测试报告》
- 把输出的测试文档,归档到SVN服务器中,还原测试环境《测试计划说明书》《测试方案》《测试用例》《测试报告》《操作文档》
- 版本更新,修复bug,进行回归测试,迭代测试
|