Q1:什么是软件?
软件是计算机的灵魂,软件可分为两大类:系统软件和应用软件。
系统软件:系统软件是生成、准备和执行其他程序所需的一组文件和程序。如操作系统Windows,数据库SQL-Server,驱动程序,java语言系统编译环境等。
应用软件:计算机用户为了解决某些具体问题而购买、开发或研制的各种程序或软件包。如APP、QQ、微信等。
Q2:什么是软件测试?
为了发现程序中的错误而执行程序的过程。
软件测试分类
1.按测试执行阶段划分:
单元测试、集成测试、系统测试、验收测试(正式验收测试、Alpha测试、Beta测试)
2.按测试技术划分:白盒测试、黑盒测试、灰盒测试
3.被测试对象是否运行划分:动态测试、静态测试(文档检查、代码走查、界面检查)
4.按不同的测试手段划分:手工测试、自动化测试
5.按测试包含的内容划分:功能测试、界面测试、安全测试、兼容性测试、易用性测试、性能测试、压力测试、负载测试、恢复测试
6.其他测试:冒烟测试、回归测试、探索性测试/自由测试(测试思维)
软件的生命周期
1.问题的定义及规划
主要确定软件的开发目的及其可行性(市场调研),指定项目总体开发计划
2.需求分析
在确定软件开发可行的情况下,对软件需要实现的各个功能进行详细分析,明确客户的需求,输出需求规格说明书初版(原型图),提交评审。
3.设计
把需求分析得到的结果转换为软件结构和数据结构,形成系统架构。
概要设计:主要是架构的实现,指搭建架构、表述各模块功能、模块接口连接和数据传递的实现等项事务(需要多少个表)
详细设计:对概要设计中表述的各模块进行深入分析等,其中需要包含数据库设计说明(表中的字段)。
4.编码
按照详细设计好的模块功能表,编程人员编写出计算机可运行的程序代码。
5.软件测试
在软件设计完成后要经过严密的测试,以发现软件在整个设计过程中存在的问题并加以纠正。测试的方法主要有白盒测试和黑盒测试两种,建立详细的测试计划并严格按照计划进行。
单元测试:主要是测试程序代码,为的是确保各单元模块被正确编译,比如有具体到模块的测试,也有具体到类、函数、方法的测试等。------一般是开发来完成
集成测试:单元测试后,将各单元组合成完整的体系,测试软件单位之间的接口是否正确、数据能否正常传递。-----比如说注册和充值这两个功能是否能够连通
系统测试:把软件系统搭建起来,按照软件规格说明书中所要求,测试软件其性能功能等是否和用户需求相符合,在系统中运行是否存在漏洞等。-----根据测试用例进行完整的系统测试
验收测试:主要就是用户在拿到软件的时候,在使用现场,会根据前边所提到的需求,以及规格说明书来做相应测试,以确定软件达到符合效果的。----用户对软件进行验收
6.运行维护
软件维护是软件生命周期中持续时间最长的阶段。在软件开发完成并投入使用后,由于多方面的原因,软件不能继续适应用户的需求。要延续软件的使用寿命,就必须对软件进行维护。软件的维护主要包括纠错性维护和改进性维护
软件测试的工作流程
来源:CSDN
作者:皇姐
链接:https://blog.csdn.net/qq_41769615/article/details/103483128