0
点赞
收藏
分享

微信扫一扫

3.0什么是软件测试

船长_Kevin 2022-03-21 阅读 67
单元测试

3.1软件测试的定义

寻找软件出现的缺陷和问题,保证软件的质量

3.2软件测试分类

3.2.1按照阶段划分

3.2.1.1单元测试

单元测试定义:针对单个功能进行测试 例如:注册

3.2.1.2集成测试

集成测试定义:在单元测试的基础上,将模块组成一个子系统或者系统进行测试。也叫组装测试

3.2.1.3系统测试

系统测试定义:系统测试是对整个系统进行测试,将硬件和软件一起测试

3.2.1.4验收测试

验收测试定义:在软件发布之前所做的测试,检查项目是否符合预期。

验收测试又分为三类:

α测试:内测版本,bug较多

β测试:公测版本,bug相对较少

γ测试:候选发布版本

一般验收测试是由甲方或第三方或者甲方委托乙方进行测试

3.2.2按是否覆盖源代码

3.2.2.1白盒测试

白盒测试定义:针对于软件内部代码进行测试

3.2.2.2黑盒测试

黑盒测试定义:从用户输入数据与输出数据的对应关系出发进行测试,侧重于功能是否能实现

黑盒测试又分为功能测试和性能测试

3.2.2.2.1功能测试

3.2.2.2.1.1逻辑功能测试

3.2.2.2.1.2界面测试

3.2.2.2.1.3易用性测试

3.2.2.2.1.4安装测试

3.2.2.2.1.5升级及卸载测试

3.2.2.2.2性能测试

3.2.2.2.2.1时间性能

3.2.2.2.2.2稳定性能

连续运行较长时间,不会闪退,不会无响应

3.2.2.2.2.3负载测试

主要测试系统的处理能力

3.2.2.2.2.4压力测试

极限负载情况下,系统的各项性能指标在长时间运行下,能否稳定

3.2.2.3灰盒测试

灰盒测试定义:是黑盒测试与白盒测试的结合。不仅关注输入与输出的正确性,同时也关注程序的内部情况

3.2.3按照是否运行

3.2.3.1静态测试

静态测试定义:不运行被测软件的本身,通过分析源代码的正确性进行测试(测试对象:文档、代码)

3.2.3.2动态测试

动态测试定义:通过运行被测软件,检查运行结果与预期结果的差异进行测试

3.2.4按照是否自动化

3.2.4.1人工测试

人工测试定义:通过人手工测试软件

3.2.4.2自动化测试

自动化测试定义:将大量和重复的人工操作,由机器代替

工具自动化:postman等

代码自动化:java ui自动化,接口自动化

python ui自动化,接口自动化

Ruby

3.2.5其他

3.2.5.1冒烟测试

冒烟测试定义:在急于上线的情况下,进行接受性测试,测试最基本的功能和重要的功能。

3.2.5.2回归测试

回归测试定义:修改旧代码后,将重新测试修复的bug、修改的新需求和部分旧功能以确认没有新引入的缺陷

3.2.5.3幂等测试

幂等测试定义:

3.2.5.4随机测试

随机测试定义:通过随机点击,查看系统是否会出现异常

3.2.5.5探索测试

探索测试定义:

3.3测试的目的

项目早期:针对需求,设计做测试,发现其中的问题,规避更多的错误,处于缺陷预防

项目中期:及早的发现缺陷,及时修改缺陷,防止后期不便处理

项目后期:主要看软件是否可使用,功能是否实现,是否满足用户的需求

3.4开发测试工具

python,Django,flask

举报

相关推荐

什么是Web3.0

0 条评论