前言
robotframework(简称robot)
robot是一款自动化测试的工具,能够实现接口自动化测试、UI自动化测试。 它的主要特色就是: 1、由 关键字 驱动来完成测试用例 2、测试用例格式可以为txt/html等,非代码的形式,支持中文哦 3、由python实现,开源 这里有2个重要的概念需要大家先掌握一下: 关键字、库 简单来说: ● 关键字是,已经实现的功能,可以直接拿来使用。 ● 库是:按功能领域,将关键字分门别类存放。 我们以商场的例子来做说明。 请看以下2个图:
![896390290ce02244cb184ee26997c7cf.png](https://i-blog.csdnimg.cn/blog_migrate/0ed2699d7f5755362d890db30f9c7f08.jpeg)
![adf3e3df6be39efdc848acf6718da0db.png](https://i-blog.csdnimg.cn/blog_migrate/309339322eed798ec79050610272b453.jpeg)
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用例如下:![6071344a91b5f04f848d49d9b9c7c7a7.png](https://i-blog.csdnimg.cn/blog_migrate/5dd515264f4f160270dc4cbe4b204a27.png)
问题: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选项中找)![874c27d22b881eeb0573c6cb780e5885.png](https://i-blog.csdnimg.cn/blog_migrate/78404a33a857f860f471f30cfc008365.jpeg)
![ce575f1e88df60c1a40d3e1ba135bad3.png](https://i-blog.csdnimg.cn/blog_migrate/2c8805c783285fb44ab26d8ed8511bc2.jpeg)
![666b6bde7c785dc0aab1bb26b0549e4d.png](https://i-blog.csdnimg.cn/blog_migrate/3dff07e9de796429d4673f5fff65543c.png)
![4747dcec38488e5bd5e5d3e20a3af4e9.png](https://i-blog.csdnimg.cn/blog_migrate/397f31381043767445e0a09d80431903.png)
![abd1683649d58a85d38d1aab7367d722.png](https://i-blog.csdnimg.cn/blog_migrate/634fba192d0592cc53fc17fa50614f69.jpeg)
3)按Ctrl +1 后,会有如下图所示的提示,双击:
![462ba927835a4fd50da2ced07fa2e94c.png](https://i-blog.csdnimg.cn/blog_migrate/fd3084fd08b64d22ae5dea90a72960e3.jpeg)
4)以上操作后,会自动打开robot工程的red.xml文件 ,保存文件即可
![31fc2148bab7fe91da7193fc3624fa6f.png](https://i-blog.csdnimg.cn/blog_migrate/351f18aed32e2938e293851226fcedc1.jpeg)
5)保存成功之后,可在robot工程当中,看到第三方库存在。
具体效果如下图所示:
![5255e622dce9fa785130e8b85be24001.png](https://i-blog.csdnimg.cn/blog_migrate/885f31fbfe1bbf2b6bf823caa2c77f4c.jpeg)
第三步:利用SeleniumLibrary当中的关键字,完成web用例
![7016a96de92eb63cd0b3ca3e95993d71.png](https://i-blog.csdnimg.cn/blog_migrate/f8ecf65ce34431cc09b02361741dc6fe.jpeg)
总结
从上面的简单示例当中,可以看到,使用现成的关键字,未用一行代码,就实现了自动化的用例实现。 robotframework当中,只要掌握了关键字的用法,就是这样轻松的做自动化测试! 当然,如果我们掌握了更多的测试思想和框架设计思想,可以更好的利用此工具完成自动化测试工作。疑惑
疑惑:那我还需要学代码吗?
既然robotframework这样的工具就可以实现自动化测试,那是不是没有必要学习代码 ? 答案是否定的。 1、工具不是万能的,始终都有局限性 很多时候,它现有的功能,并不能够完全适配我们的测试项目。 工具解决不了的问题,我们需要对它做扩展或另行处理。还好,robot本身支持python/java语言对它做扩展。 2、如果只会用工具,工具的局限性就是你的局限性 掌握代码,你可以做更多的事情。 工作当中,除了写用例之外,我们还要完成领导的各个小需求。比如自动收集数据?比如定制化的报告? 同时,也需要各种小手段来提高测试效率。 3、未来,要开发能够适应公司测试项目的通用型的测试平台呢 所以,工具要会,代码更要会。 本文由柠檬班小简老师原创,转载需注明出处!
转发到朋友圈是最高的赞赏
关注柠檬班微信公众号,获取最新技术文章
让软件测试学习变得更简单!
今日问题
自动化测试第一步:
如何搞定CSS?
想知道答案吗?
扫码即可解锁解题视频
暗号:公众号
既然在看了,就点一下吧!!