这年头,做软件测试,如果不会个自动化,到外面都不好意思开口。那么什么是自动化呢?为什么要进行自动化?自动化有哪些分类?哪些情况下我们能做自动化?自动化有哪些工具?
什么是自动化
自动化意义就是用机器代替人工去做重复工作。对于软件测试来说,就是让机器去做重复的软件测试工作。听上去非常的高大上。其实也没有多少难度。如果你觉得有难度,说明你缺一个好的老师。来吧,少年,我会手把手的教你,一学就会,当然这个......劳务费啥的,是吧。你看着给,上赶着不是买卖。给个十万八万不嫌多,一万两万不嫌少。什么?一毛没有?看来是碰到同道中人了。那好,我不装了,我也不会。
为什么要进行自动化呢?
为什么?问得好。因为省人工啊,节省成本啊,减少重复的工作啊。人呀,重复做一件事情次数太多的话,虽然可以熟能生巧,但是时间长了,就会产生疲劳。一疲劳,工作就容易疏忽,一疏忽,工作就容易出问题,工作出问题,后果不堪设想。你以为小题大做?但实际上恰恰是这些觉得没问题,没验证的功能到了现场出了问题。你说巧不巧?巧到家了。so,有些人就提出了自动化的概念,因为机器是不会偷懒的,它会%的执行,然后呢,另一帮人居然还给实现了自动化的框架,再然后就是我们的事情了,我们如何使用自动化工具的问题了。这就是自动化的好处。
自动化怎么分类呢?
一般我们说自动化分两大类:接口自动化,ui自动化。这是一般。二班的同学出门左走。
接口自动化的思路也简单,就是通过工具调用服务器的接口,验证服务器接口在各种规则下的响应是否符合预期。ui自动化说的是web自动化(b/s),做不同浏览器的兼容测试,迭代测试。还有c/s模式的,就是测试客户端程序。
哪些情况下能做自动化?
有一点,我一直牢记在心:自动化不是万能的。没有后半句啊。如果你们要恶补,那可是你们的事情了啊。不过,有些人把自动化给神话了,觉得什么都能进行自动化,一般都是不懂自动化的人才这么想。其实我们是否适合做自动化,除了测试人员的能力外,还有一个要考虑的就是自动化的成本:投入和产出是否成正比。如果你的项目是一次性的,不迭代维护,这种情况下做自动化的话,那就是瞎子点灯白费油,浪费。自动化在程序迭代,系统更新,版本迭代,这种情况下,效果是最好的,每一次迭代后,运行自动化脚本,确保之前的功能是正常的。
自动化工具有哪些?
web自动化工具有很多,我用过selenium。手机自动化有appium,robotium等等。
接口自动化工具有:jemter,postman,还可以自己编写代码进行测试。
cs模式的自动化工具是UFT,这个是收费的。以前好像不叫这个名字。
我在自动化的时候,有几次还用到了按键精灵。反正怎么能省事怎么来,拿来主义。不管黑猫白猫只要能提升效率工具的就是好猫。
感谢阅读,我是星光依旧灿烂,欢迎点赞
转载请注明:http://www.0431gb208.com/sjslczl/6679.html