软件测试是使用人工或自动的手段来运行或测定某个软件系统的过程,其目的在于检验它是否满足规定的需求或将预期结果与实际结果之间做对比。
把程序看作一个不能打开的黑盒子,着眼于程序外部结构,不考虑内部逻辑结构,主要针对软件界面和软件功能进行测试。
白盒指的是盒子是可视的,即清楚盒子内部的东西以及里面是如何运作的,在弄清软件的内部结构和代码细节的基础上,逐步检查语句和条件、代码的路径、数据流、以及各种有效或无效的输入,验证程序是否能按照预期输出结果。
灰盒测试,是介于白盒测试与黑盒测试之间的一种测试,不仅关注输出、输入的正确性,同时也关注程序内部的情况。
对代码块、函数、方法等进行测试(白盒测试),一般由开发人员自己进行测试。
也可以叫接口测试,检查各个模块接口是否连接成功(一般是灰盒测试)。
对整个完整的系统进行测试(一般是黑盒测试)。
分为α测试(内测)和β测试(公测),在这一阶段测试人员只需协助领导或者甲方进行验收,自己并不直接参与。
功能测试就是对产品的各功能进行验证,根据功能测试用例,逐项测试,检查产品是否达到用户要求的功能。
测试软件运行的极限(例如测试新开业的餐厅最多能容纳多少人吃饭,不断加人直到到达一个极限)。
测试软件在极限情况下能持续运行多久(例如在餐厅的极限是300人的情况下,工作人员和餐厅设施能持续工作多久),当用户数据不断积累却没有空间存放就会发生内存泄漏。
测试多个用户在同一时间进行同一操作时的并发问题。
模拟黑客手段对软件进行攻击,分为渗透测试、DDOS攻击、跨域攻击、SQL注入、暴力破解等。
android:不同系统、不同屏幕、不同分辨率、不同品牌等,根据市场占有率进行选择。
ios:ios系统的手机基本类似,只测试一种即可。
主要对谷歌、新的Edge、火狐、IE等浏览器进行测试。
后端:7*24h持续使用
前端:3-5h持续使用
APP能否在2G、3G、4G、5G、WIFI、热点等不同的网络下正常运行
同一类型的APP同时工作(例如QQ音乐和网易云)。
断开网络后能否正常使用。
检查上次测试发现的问题有没有被修改。