Python3.7+Robot Framework+RIDE1.7.4.1安装使用教程

一、解惑:Robot Framewprk
今天我们聊一聊,Robot Framework被众多测试工程师误会多年的秘密。今天我们一起来揭秘一下,最近经常在各大群里听到许多同行,在拿Robot Framework与Pytest或其它同类测试框架作对比,我认为这个对比本质上是没有任何意义的,青菜萝卜、各有所爱,一百个心中有一百个哈姆雷特,只有找到适合自己的,并能用较低成本就能解决当前团队面临的问题,这才是关键所在。

至于框架之间的对比,笔者主张的观点:“存在即合理,每个框架既然它存在,必然在它存在的意义和价值,当然也有他们各自的优点以及劣势,当前市面上也并没有一款框架能做到十全十美,满足所有人的需求,只有明确自己的问题,找准靶心,以解决问题驱动才是王道!”

回归到今天的主题,大部分人在一开始用Robot Framework都存在一个误解,认为Robot Framework只支持Python 2,其实这是对Robot Framework兼容性存在的一个较大误区。Robot Framework其实很早就已经支持Python 3了。

之所以市面上一直有这样的误区,是因为Robot Framework对应的官方编辑器RIDE由于一些历史原因,只支持到了Python 2.7,那么也就导致如果你在使用Robot Framework时,如果是用RIDE来管理RF测试用例,那么之前的版本确实是只能用Python 2.x版本。但如果你并不是采用RIDE 而是用其它编辑器或插件比如Pycharm或VS Code,或者直接命令行的形式来运行RF测试用例,那么即使用Python 3也是可以的。

值得庆幸的是,在2019年1月20号,Robot Framework RIDE发布了1.7.3版本解决了此前RIDE一直无法兼容Python 3的问题。也就意味着Robot Framework不管是采用何种编辑器,都已经是可以支持Python 3了。

二、在Robot Framework IDE 1.7.4+版本中,新功能:

兼容Python 2.7 and >=3.6。
运行任何wxPython版本(2.8.12.1、3.0.2在Python 2.7上)和4.0.4用于Python 2.7和> = 3.6。
得益于wxPython的AUI模块、窗格、标签、工具栏是可拆卸和可重新定位的。
文本编辑器现在具有自动补全功能。
树窗格上的测试用例,具有新的官方图标,并在运行或暂停时设置动画。
树窗格上的测试用例名称过长的名称用“…”进行缩短。并且在工具提示上可见。
在测试套件级别的树窗格上,上下文菜单允许在文件管理器中打开文件夹,并删除只读文件属性。
如果未选择任何测试,将确认继续运行所有测试。
像快捷键F8一样可以运行测试,现在快捷键F9可以用debug的日志级运行它们。

三、Robot Framework RIDE 1.7.4+ 安装、升级

安装方法千千万,pip大法最简单。直接使用pip安装ride就可以了,Robot Framework、wxPython等依赖库都会自动安装好。

(1)打开命令行提示行,安装或更新Robot Framework版本:

pip install -U robotframework

(2)安装wxPython 4.0.4版本:

pip install wxPython==4.0.4

(3)安装或更新Robot Framework RIDE版本:

通过pip安装指定版本:pip install robotframework-ride==1.7.4.1

四、安装路上踩的坑:

  1. 启动ride.py 遇到如下错误:


    在这里插入图片描述
  2. 提示当前环境没有pub模板,通过pip安装
pip   install PyPubSub==3.3.0
  1. 再次启动ride.py,打开如下界面:


    在这里插入图片描述

五、RIDE的使用:

我们说ride是一个简单的小工具,就不一个个菜单一个个功能地介绍了,直接说它一般怎么用。

我们前面说Robot Framework的功能就是把代码文件中的函数抽象成所谓的关键字,我们直接看这主要功能如何实现。

1.新建项目及测试用例
主菜单----File----New Project

主要是填写项目名称(比如我这里是test),其他默认即可。Type/Format这种东西无非是存放格式的区别不必太在意。


在这里插入图片描述

在新建的项目上鼠标右键---New Test Case---输入测试用例(我这里是testCase1)名称点击OK。

在这里插入图片描述

经以上步骤项目和测试用例都已创建好,当前界面如下:

在这里插入图片描述

2.导入自定义库函数
对我们这里页言,自定义库就是前面的test_lib.py,库含数就是其中的get_url_source_code。

左侧窗格选中项目,右侧窗格选中Edit选项卡,点击Library按钮

在这里插入图片描述

通过Browse选中我们的test_lib.py,其他不用填,点击OK。

在这里插入图片描述

回到主窗口上可以看到导入了一个库(如果呈红色说明导入报错,一般是脚本代码有问题,可借助cmd窗口的输出进行定位)

在这里插入图片描述

在上边界面中使用F5键,唤出关键字搜索对话框,Source中下拉选中test_lib。

如无意外,可以看到如下图我们脚本中的get_url_source_code被抽取成了Get Url Source Code关键字,注释这些也都有展现在上面(url那行没换行是\n和\r\n的问题)。

在这里插入图片描述
  1. 使用自定义库函数
    经过前面几步我们已经将自己写的函数导入了进来,下来看如何调用,这步也是Robot Framework(或者RIDE)的主要用法。

回到主窗口,左侧窗口选中测试用例,右侧窗口选中Edit选项卡,界面如下。

测试用例就真的是测试用例,其中的1、2、3、4、5就是测试步骤,其中第一列是关键字(即本质上的函数),其后各列用于输入参数。

在这里插入图片描述

我们输入我们要使用的关键字“Get Url Source Code”(可使用Ctrl+Alt+Space获取补全提示),此时界面如下图。

一列为粉红底色,表示需要一个参数;其余后续列为灰色表示不使用(但如果想的话可以把自己的注释写在这些灰色格子上)。

在这里插入图片描述

我们把参数设置成“https://www.baidu.com”,此时再看界面如下,白色底表明填写上没有错误。

如果自己的测试用例后续还有各步,就继续在2、3、4、5那些行继续写下去即可。

4.运行测试用例及查看其报告
运行很简单,左侧窗格钩选要运行的测试用例,右侧窗格切换到Run选项卡,点击Start按钮。

底部窗格的输出其实就只是我们在get_url_source_code函数中的打印。

在这里插入图片描述

点击Report和Log按钮查看生成的报告,可以看到主要仍旧只是把打印记录到文件里。

在这里插入图片描述
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 214,313评论 6 496
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,369评论 3 389
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 159,916评论 0 349
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,333评论 1 288
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,425评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,481评论 1 292
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,491评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,268评论 0 269
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,719评论 1 307
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,004评论 2 328
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,179评论 1 342
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,832评论 4 337
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,510评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,153评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,402评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,045评论 2 365
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,071评论 2 352

推荐阅读更多精彩内容