软件测试的分类
1. 按照方法划分:
(1) 黑盒测试:工作人员在不考虑任何程序内部结构和特性的条件下,检查程序的功能是否能够按照规范说明准确无误的运行(功能测试、界面测试属于黑盒测试)
(2)白盒测试:测试程序内部逻辑结构及相关信息(检查程序源代码)
(3)灰盒测试:灰盒测试则介于黑盒测试和白盒测试之间。灰盒测试除了重视输出相对于出入的正确性,也看重其内部表现(企业常用)
2. 按照方向划分:
(1)功能测试:功能测试就是对产品的各功能进行验证,检查产品是否达到用户要求的功能。
(2)性能测试:
a. 压力测试:给软件不断加压,强制其在极限的情况下运行,观察它可以运行到何种程度,从而发现性能缺陷,包括内部内存、CPU 可用性、磁盘空间和网络带宽。
b. 负载测试:逐步增加系统负载,测试系统性能的变化,并最终确定在满足性能指标的情况下,系统所能承受的最大负载量的测试
c. 并发测试:主要指当测试多用户并发访问同一个应用、模块、数据时是否产生隐藏的并发问题,如内存泄漏、线程锁、资源争用问题,
(3) 安全测试:安全测试是检查系统对非法侵入渗透的防范能力(渗透测试、流量攻击、SQL注入、跨域攻击)
(4) 兼容性测试:兼容性测试是指要测试的软件在不同的硬件平台上、不同的应用软件之间、不同的操作系统中、不同的网络环境中是否可以正常的运行、有无异常的测试过程。即是通常说的软件的可移植性。
a. Web兼容性测试:
v 浏览器上的兼容性(Google 、saferi、Firefox、opra、eadge、360、QQ、夸克、搜狗...根据市场所占份额,从高到低进行测试)
可以使用第三方工具:推荐IEtester(离线)、SuperPreview(离线)和Browsershots:
http://browsershots.org(在线)
v 操作系统:windows系列、Mac OS X系列、UNIX/Linux系列
v 屏幕尺寸和分辨率兼容性测试
b. APP兼容性测试:考虑操作系统兼容性测试
v Android:不同安卓设备、安卓版本、系统版本、屏幕分辨率、屏幕大小、屏幕形状等综合考虑情况下测试
注意:安卓机型较多,实际情况下怎样进行测试
公司提供部分型号的手机进行测试,如果覆盖率不够时,考虑同事之间众筹,大家凑一下啦,如果还是达不到覆盖率,最后还可以采用百度众测平台和云测平台,这两款测试工具里面包含了安卓和iOS的测试(收费)
v iOS兼容性:各个型号的iPhone手机上进行测试
5) UI测试:
界面是否好看、风格是否统一、布局是否合理、配色是否合理
6) 易用性测试:操作是否简单、学习成本越低越好
7) 稳定性测试:长时间运行会不会出问题
8) APP专项测试