成为自动化测试大神就靠这个了

发布于 更新于

技术文章

robot是一款自动化测试的工具,能够实现接口自动化测试、UI自动化测试。它的主要特色就是:1、由 关键字 驱动来完成测试用例2、测试用例格式可以为txt/html等,非代码的形式,支持中文哦3、由python实现,开源这里有2个重要的概念...

robot是一款自动化测试的工具,能够实现接口自动化测试、UI自动化测试。


它的主要特色就是:


1、由 关键字 驱动来完成测试用例


2、测试用例格式可以为txt/html等,非代码的形式,支持中文哦


3、由python实现,开源


这里有2个重要的概念需要大家先掌握一下:关键字、库


简单来说:


● 关键字是,已经实现的功能,可以直接拿来使用。


● 库是:按功能领域,将关键字分门别类存放。


我们以商场的例子来做说明。


假设我现在进入此商城,我要做的事如下:


第一步:去护肤品区域(库 ) 买 MAC口红(使用某一功能)


第二步:去餐饮区域(库) 吃 么子烤肉(使用某一功能)


第三步:去休闲区域(库) 电影院 看哪吒之魔童降世(使用某一功能)


我要做的事,可以认为是robot中一个测试用例,此用例分为三个步骤,每一个步骤都是使用某一现有的功能。


总结下来:


● 商场 == RobotFramework


● 餐饮/休闲/服务/护肤品/饰品 == 库


● 费大厨/电影院/adidas/MAC == 关键字


所以,robotframework当中,有非常丰富的库,并且每一个库当中都有对应的关键字集。


robot测试用例=按业务需求组合关键字


想对关键字和库有更多专业的了解,请擢博客:


https://www.cnblogs.com/Simple-Small/p/9641643.html


Robot环境搭建


1、python环境+robotframework第三方库:


由于robotframework是python实现的,是一个python第三方库,所以需要安装python版本。


robotframework完美支持python2和python3。


建议安装python3.7+,编码处理非常友好。 


2、安装编写用例的工具


编写robot用例的工具比较多,有ride、notepad++、sublime、eclipse等。


无论用哪种工具,对于robot脚本而言,语法都是一样的,可以在任意其它工具中打开。


使用ride的朋友们请注意:ride工具现在也支持python2和python3,但兼容性有待考察。


个人更倾向于使用eclipse,关键字展示、高亮、自动提示等体验非常友好。


具体安装和工具使用请擢博客:


https://www.cnblogs.com/Simple-Small/p/9229397.html

实现自动化用例


Robot—轻松实现自动化用例


以web自动化为示例,演示robotframework的用法。


使用的用例编写工具:eclipse+RED插件。


要实现的自动化web用例如下:




问题:robotframework如何实现web自动化?


答案:关键字!!


在robotframework当中,想做任何事情,首先想到的就是关键字。


找到web网页操作的关键字,然后去使用它。 


第一步:安装SeleniumLibrary,具备web自动化操作的能力


在robotframework当中,由SeleniumLibrary(非robot自带,需要安装)库提供对网页的操作关键字(功能)。


1) 安装SeleniumLibrary:


pip install --upgrade robotframework-seleniumlibrary


第二步:创建Robot工程,引入SeleniumLibrary库


1、创建robot工程:


在eclipse当中,File -> New -> Robot Project(没显示则要去Other选项中找)



2)创建robot测试用例:


3) 在robot工程中中导入SeleniumLibrary(导入了才有可以使用关键字)


注意:库名不能错,大小写敏感。


1)引入方式:在robot脚本中,settings区域当中,引入外部资源。


2)引入时,库名下会有红色波浪线,如下图所示,选中它,按Ctrl+1


3)按Ctrl +1 后,会有如下图所示的提示,双击:


4)以上操作后,会自动打开robot工程的red.xml文件 ,保存文件即可


5)保存成功之后,可在robot工程当中,看到第三方库存在。


第三步:利用SeleniumLibrary当中的关键字,完成web用例



总结


从上面的简单示例当中,可以看到,使用现成的关键字,未用一行代码,就实现了自动化的用例实现。


robotframework当中,只要掌握了关键字的用法,就是这样轻松的做自动化测试!


当然,如果我们掌握了更多的测试思想和框架设计思想,可以更好的利用此工具完成自动化测试工作。


疑惑


疑惑:那我还需要学代码吗?


既然robotframework这样的工具就可以实现自动化测试,那是不是没有必要学习代码 ?


答案是否定的。


1、工具不是万能的,始终都有局限性


很多时候,它现有的功能,并不能够完全适配我们的测试项目。


工具解决不了的问题,我们需要对它做扩展或另行处理。还好,robot本身支持python/java语言对它做扩展。


2、如果只会用工具,工具的局限性就是你的局限性


掌握代码,你可以做更多的事情。


工作当中,除了写用例之外,我们还要完成领导的各个小需求。比如自动收集数据?比如定制化的报告?


同时,也需要各种小手段来提高测试效率。


3、未来,要开发能够适应公司测试项目的通用型的测试平台呢


所以,工具要会,代码更要会。


本文由柠檬班小简老师原创,转载需注明出处!


继续阅读