自动化测试基础--1.软件测试分类

大家好,我是教UI自动化技术的william老师,今天我们来学习第一章软件测试的分类

同学们思考一下,对于软件测试的分类大家都知道有哪些分类的?

我们从三个角度来看

第一个从代码可见面来看,分为黑盒、白盒、灰盒

那什么叫做黑盒?

我们来打开xmind看一下

黑盒就是把被测软件看作是一个黑盒子, 我们不去关心盒子里面结构是什么,只关心输入的数据 和输出的结果 比如 你看这个a 从这个盒子里面进去 b从盒子里面出来,a就是输入,b是输出,我们需要检查的是输入a得到的结果b和预期结果是不是一样的,是不是满足需求的黑盒测试的侧重点是外部结构,而不用去考虑内部代码结构

那什么是白盒测试?

白盒测试不同于黑盒测试,白盒测试完完全全打开盒子,看里面的代码,做代码走查,逻辑覆盖,单元测试,白盒的侧重点在代码上

那白盒和黑盒都有了。什么是灰盒?

灰盒是临界于白盒和黑盒之间

既关心输入输出的结果,又关心内部结构,不过没有白盒测试那样对代码的严格程度,相比起白盒每行

代码都看的话,灰盒测试的效率会高很多,

讲了从代码可见面分析的黑盒、白盒、灰盒。那么下面我们来讲第二个角度,从不同的测试面来说 分为功能、性能、安全

功能测试来讲,主要测试的就是功能是否正常,有没有按照需求来,满足用户对其功能的要求,测试的大部分工作都是围绕功能进行的,市面上,功能测试还是占绝大部分比例的,然后性能和自动化为辅

什么是性能测试?

大家平常玩游戏什么的,有没有遇见过人一多,服务器就很卡,甚至挂掉的情况,这个时候我们就需要对软件进行性能测试,确保预期人数一多的情况下,服务器还能平稳的运行。我国对性能测试的重视,还是要从很多年前12306抢票系统奔溃开始,然后国内开始重视性能测试,我们来画个图让大家理解一下

用户1对服务器发送请求 服务器处理请求,给出响应,然后用户2、用户3...都开始请求了,这个时候服务器的cpu,内存,带宽什么的就扛不住了。所以会导致卡顿,

然后就有了性能调优,首先会部署一个代理服务器Nginx,然后负载均衡,服务器1处理一部分,服务器2处理一部分,然后再对代码进行调优等方式来处理

什么是安全测试?

安全测试就是对产品、项目,验证其安全功能,是否对项目有进行保护,信息是否泄漏,从而使之不被黑客攻击,保证系统安全,常用的策略是安全扫描,SQL注入,Script注入,渗透测试等,有部分同学想研究黑客技术,切记做个有道德的人,不要做损人害己的违法行为,为中华之崛起而努力

下面我们来看第三个角度,根据自动化程度来划分的手工和自动化

手工测试就是我们平常写好用例,然后按照用例一条一条手动执行用例,输入参数,查看输出结果,重复性工作大,是市面上主要的测试方式

区别于手工的就是自动化测试,减少人工成本,改用机器自动执行测试用例,具体的操作都是录制或者编写代码,形成用例,再自动执行,可以减少人工成本,时间,资源等,不过自动化测试并不能完全代替手工测试,虽然有公司招全职自动化的测试工程师,但是公司里面还是会存在大部分做手工测试的工程师,性能、自动化、安全是测试转型的三个方向,当然你说你只会自动化不会性能也不行,还是需要懂一些的,为了大家的高工资还是得多学,一线城市的二十,三十万年薪在向你招手,难道你们不会心动吗?只要同学们踏踏实实干,家里没矿,不是拆迁户,学it是通向社会中层为数不多的方式了。当然it的前景也很好,社会在发展,大数据,算法,AI,人工智能等,都是一大批一大批优秀的工程师默默在背后付出的。

你可能感兴趣的:(自动化测试基础--1.软件测试分类)