目录
软件测试基础理论
一、软件测试的定义
判断软件的实际结果是否和预期结果相同。
二、软件测试的分类
1.软件测试方法
黑盒
把软件比作一个黑色的盒子,只去测试软件表面体现出来的功能。
白盒
与黑盒测试相反,白盒测试是把软件看作一个透明可视的盒子,我们能看到他的内部逻辑结构,是对软件的内部结构去做测试。
灰盒
是介于黑盒与白盒之间的一种测试,把盒子比作一个半透明的盒子,不仅关注输入输出的正确性,也要关注软件内部的结构。
2.软件测试阶段
单元测试
对代码块、函数、方法进行测试,一般由开发人员完成。
集成测试
测试代码块的连接、接口测试。
系统测试
对整个完整的软件进行测试
验收测试
主要协助领导或者甲方验收,内测和公测包含在验收测试中。
3.软件测试方向
功能测试
功能测试就是对产品的各功能进行验证,根据功能测试用例,逐项测试,检查产品是否达到用户要求的功能。
性能测试
1.压力测试
软件压力测试的基本思路很简单:不是在常规条件下运行手动或自动测试,而是在计算机数量较少或系统资源匮乏的条件下运行测试。通常要进行软件压力测试的资源包括内部内存、CPU 可用性、磁盘空间和网络带宽。
2.负载测试
使测试对象承担不同的工作量,以评测和评估测试对象在不同工作量条件下的性能行为,以及持续正常运行的能力。
ps:内存泄漏/溢出-导致软件崩溃
3.并发测试
主要指当测试多用户并发访问同一个应用、模块、数据时是否产生隐藏的并发问题
安全性测试
渗透测试;DDOS攻击;跨域攻击;SQL注入;暴力破解
UI界面测试
检查界面美观性;
界面风格是否保持一致;
界面的按钮大小是否保持一致;
界面是否和设计图保持一致;
兼容性测试
1.APP兼容性(根据市场占有率-百度流量研究院)
android:不同的系统;不同屏幕;不同分辨率;不同品牌
ios:一般不用测试,都能做到兼容
2.web端兼容
火狐;谷歌;新的edge;IE等
易用性测试
- 用户体验测试
- 学习成本越低越好
- 功能越简洁越好
稳定性测试
- 前端:保证3-5小时持续使用
- 后端:7*24h持续使用
APP专项测试
1.弱网测试
APP能不能在不同的网络下正常运行。(2G、3G、4G、5G、WIFI、热点)
2.场景交互测试
不同的APP互相切换;
前后端切换;
来电话、短信、微信语音;
分屏功能等。
3.资源征用测试
同类型的APP同时工作(qq音乐/酷狗音乐)
4.权限测试
比如关闭掉权限,是否影响其他的功能;
使用对应的功能,是否提示给权限;
5.离线测试
断开网络后还能不能使用
6.安装、卸载、更新
7.消息推送
APP关闭后还能收到消息推送吗;
断网后,在联网,之前的消息还能收到推送吗
8.资源监控
APP的大小;
流量;
电量;
内存;
cpu
4.软件测试对象
APP测试
WEB测试
小程序测试
接口测试
物联网测试
车联网测试
AI测试
大数据测试
5.软件测试状态
动态测试
静态测试
6.其他
回归测试:检查上一次测试发现的问题有没有被修改
冒烟测试:测试前的测试,检查软件是否具备可测试性
总结
以上就是软件测试的定义和分类的内容。