![3479c38615a1b72ce2790bd041999df2.png](https://i-blog.csdnimg.cn/blog_migrate/56c016285ed600cf5c3ce7548a77e2b3.jpeg)
最近和别人探讨了一个问题,有人说基于脚本的自动化测试是未来测试的趋势,作为一个8年测试经验的工程师而言,我既同意更否定,看着是不是有点矛盾,哈哈,那听小编娓娓道来吧。
![f29cdb0f474348132ca9648988468ba1.png](https://i-blog.csdnimg.cn/blog_migrate/dff20ba780e1dd0a6b9cb393ac398250.jpeg)
说到这里,可能有些人不太理解什么是基于脚本的自动化测试,我们生活中哪些是这类测试方法,我先讲明白这些再来探讨为什么我即同意更否定。
基于脚本的自动化测试有两个关键词,其一是脚本,其二是自动化测试。
小编自己总结了基于脚本的自动化测试的定义:
基于脚本的自动化测试是通过脚本语言编写可以自动执行的测试序列,以达到无人值守测试的目的。基于脚本的自动化测试是很多年之前兴起的,而且行业上发展迅速,近两年基本已经是各大厂商测试的主要手段,不论是手机,航天,汽车都有应用。
使用脚本语言编写测试模块步骤,将各个模块进行组合排列形成过程,序列,并驱动硬件采集和输出,进而和被测对象进行交互,实现测试。
同时,小编自己总结了脚本的定义:
脚本(Script)是一种批处理文件的延伸,是一种纯文本保存的程序,一般来说的计算机脚本程序是确定的一系列控制计算机进行运算操作动作的组合,在其中可以实现一定的逻辑分支等。
![c171f5a1ed7b75eb7205703d4955e58f.png](https://i-blog.csdnimg.cn/blog_migrate/9d92744e320944d58856f67b826670c4.jpeg)
脚本是一种程序,是一个计算机文件,其一般可以通过如可以用记事本(或其它文本查看器)打开查看、编辑。
![bd258ecec53f071eded59a817060b06a.png](https://i-blog.csdnimg.cn/blog_migrate/a64897a805ea510c69daa8f5aca172e3.png)
脚本的主要特性有:
A 语法和结构通常比较简单;
B 学习和使用通常比较简单;
C 通常以容易修改程序的“解释”作为运行方式,而不需要“编译”;
D 程序的开发产能优于运行效能;
E 大大地提高了系统管理员的工作效率;
常见的脚本语言有: Scala、JavaScript,VBScript,ActionScript,MAX Script,ASP,JSP,PHP,SQL,Perl,Shell,python,Ruby,JavaFX,Lua,AutoIt等。
说到这里小编想吐槽一下,个人认为这些语言定义未脚本其实过于狭义,应该更加广义的看待脚本,例如,在matlab下,某些小程序,也可以称之为脚本,在我们现在用的比较多的Teststand,很多测试step也可以称之为脚本,我觉的脚本这个概念本应该更加广义。
再次,小编自己总结了自动化测试的知识:
一般是指软件测试的自动化,软件测试就是在预设条件下运行系统或应用程序,评估运行结果,预先条件应包括正常条件和异常条件。
自动化测试是把以人为驱动的测试行为转化为机器执行的一种过程。通常,在设计了测试用例并通过评审之后,由测试人员根据测试用例中描述的规程一步步执行测试,得到实际结果与期望结果的比较。在此过程中,为了节省人力、时间或硬件资源,提高测试效率,便引入了自动化测试的概念。
软件自动化测试一般不需要硬件,但要安装相应的程序,通过编写自动化测试代码进行自动测试。自动化代码可以是脚本编写的,也可以是某一个自动化测试软件编写的。但基本都离不开这样的过程:例如测试用matlab程序编写的ECU程序,那么需要通过脚本(或其它自动化软件)调用matlab自动化接口(ActiveX)实现,一般像excel,word等应用软件都有相关的自动化接口。这种方式我们测试上用的很多,而且很早之前就有了,原来在军工单位,还有现在汽车测试都很早就开始使用了,而且其实HIL测试台的工作类似于这个,只是不是用脚本语言实现自动化测试,但道理都一样。
如果说要做汽车控制器的测试,那么就要有相应的硬件环境,除了以上操作外,还要对硬件进行操作和控制,进而与被测对象进行交互,获取相关控制器结果。
本次这章就写道这里,后续,小编将说一下如何进行基于脚本的自动化测试,并且解释一下为什么小编既同意又否定基于脚本的自动化测试是未来趋势,最终小编将引出自己认为的未来测试发展趋势。
作者:逍遥肖楠