只是会用一些自动化工具,并不是实际意义上的自动化测试工程师,只是工具小子。
高手来说,是独立开发测试工具,解决工作中实际的问题。要有很强的编程能力。是测试人员比较稀缺的能力 。
自动化分三个层级,倒三角,收益从高到低,单元-接口-UI。
单元测试效果70%,涉及的代码少,容易定位问题。开发人员做的多。
接口测试,更改很少,因为涉及到各方面协调,通知使用的各方。所以增加和删除较多。变化少,适合自动化。
UI变化多,给测试带来很大麻烦,目前做的较好的是华为,几十分钟跑几万个case,他们有超大的分布式系统。社会培训班,UI自动化多,可以看到界面,但是工具最多,难度最大。需要很好的测试框架才能做好。
关于测试框架:
1. 分布式,多个测试用例,并行并发的执行。
2.行为驱动框架。cucumber,测试用例映射到测试方法,通常用在敏捷中。
3.关键字驱动 三要素:1)做什么操作 2)操作谁 3)操作值是什么
4.数据驱动框架。操作步骤不变,数据是变动的。适合少点的测试用例的测试。
5.混合式的测试框架。数据+关键字。
在大公司,做接口和服务器端测试的人员比较多,接口测试关注与输入和输出,服务器端更关注与算法实现的细节。类似白盒,有的称之为灰盒测试。
功能测试转到自动化测试,要具有很强的编程能力,技术的理解,开发架构理解,需要知识的积累,包括算法,数据库,linux,数据结构。。。先来1W代码。