聊一聊:Robot Framework被误会多年的秘密

简介: 聊一聊:Robot Framework被误会多年的秘密

1. 前言


相信大部分的忠实读者都误会了Robot Framework。

2. 聊一聊:Robot Framework被误会多年的秘密


今天我们主要聊一聊,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了。


3. Robot Framework RIDE 1.7.3+ 新特性


在Robot Framework IDE 1.7.3+版本中,显著增强的功能有:


  • 兼容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的日志级运行它们。


最新的RIDE版本已经到了1.7.4.1,详细可阅官网介绍:


https://github.com/robotframework/RIDE/releases


4. Robot Framework RIDE 1.7.3+ 安装、升级


最新版本1.7.3.1基于wxPython 4.0.4,此时的wxPython也是支持Python 3.x,安装过程也很简单。


1. 采用pip安装


(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 -obotframework-ride
通过pip安装指定版本:pip install robotframework-ride==1.7.3.1
通过pip安装所需依赖:pip install -U -r https://github.com/robotframework/RIDE/blob/master/requirements.txt
目录
相关文章
|
4月前
|
开发者
.NET生态的开源宝藏:探索参与开源项目的秘密路径与丰厚回报
【8月更文挑战第28天】本文介绍了.NET生态系统中开源项目的重要性和参与方法。.NET开源项目涵盖基础库到高级框架,促进技术交流与创新。参与项目可提升技能、建立品牌,并获得职业网络。选择合适项目需考虑兴趣、活跃度和难度。贡献流程包括了解项目、设置环境、查找问题和提交代码。开发者还可通过使用开源库、学习最佳实践和获得社区支持来受益。此外,有能力的开发者也可尝试维护自己的开源项目。希望本文能帮助更多.NET开发者参与开源项目。
43 5
|
4月前
|
前端开发 JavaScript C++
【绝技大公开】Webpack VS Rollup:一场前端工程化领域的巅峰对决,谁能笑到最后?——揭秘两大构建神器背后的秘密与奇迹!
【8月更文挑战第12天】随着前端技术的发展,模块化与自动化构建成为标准实践。Webpack与Rollup作为主流构建工具,各具特色。Webpack是一款全能型打包器,能处理多种静态资源,配置灵活,适合复杂项目;Rollup专注于ES6模块打包,利用Tree Shaking技术减少冗余,生成更精简的代码。Rollup构建速度快,配置简洁,而Webpack则拥有更丰富的插件生态系统。选择合适的工具需根据项目需求和个人偏好决定。两者都能有效提升前端工程化水平,助力高质量应用开发。
49 1
|
4月前
|
数据库 开发者 Python
Bottle 究竟藏着何种魔力?带你走进精彩世界,畅享 Web 开发新体验!
【8月更文挑战第31天】Bottle 是一款轻量级 Python Web 框架,以其简洁、灵活和高效著称,让开发者快速上手,自由组织代码,轻松应对从个人博客到企业应用的各种项目。尽管体积小巧,性能却不容小觑,同时拥有丰富的插件生态系统,便于扩展功能。
48 0
|
5月前
|
安全 Java 区块链
matic马蹄链合约DAPP项目系统开发技术(成熟语言)
Matic Network是一种基于侧链的公共区块链扩展解决方案。它的基础是Plasma框架的调整实施。Matic提供了可扩展性,同时以安全和分散的方式确保了卓越的用户体验。它在KovanTestnet上为Etalum提供了一个工作实现。Matic打算在未来支持其他区块链,这将使它能够提供互操作性功能,同时为现有的公共区块链提供可伸缩性。
|
7月前
|
Dubbo Java 中间件
探寻源码宝藏:介绍开源项目"source-code-hunter"
最近处于金三银四的面试黄金期,许多同学在面试中反映现在要求非常高,阅读源码几乎是必问项。然而,阅读源码时常常觉得晦涩难懂,令人头疼。今天在浏览 GitHub 时,我发现了一个名为 source-code-hunter 的宝藏项目。这个项目从源码层面深入剖析和挖掘互联网行业主流技术的底层实现原理,为广大开发者提供了便利,助其提升技术深度。目前该项目已经涵盖了 Spring 全家桶、Mybatis、Netty、Dubbo 框架,以及 Redis、Tomcat 等中间件的内容,恰好适合最近正在面试或希望提升技术深度的同学参考学习。
782 1
探寻源码宝藏:介绍开源项目"source-code-hunter"
|
存储 前端开发 区块链
DAPP公链质押LP项目系统开发(成熟案例)|DAPP技术
去中心化应用的开发需要考虑到它们所提供的服务的特点catch(InvocationTargetException it)
|
程序员 Android开发
一位Android大牛的BAT面试心得与经验总结,通用流行框架大全
一位Android大牛的BAT面试心得与经验总结,通用流行框架大全
一位Android大牛的BAT面试心得与经验总结,通用流行框架大全
|
Java 大数据 程序员
Framework掌握不熟?字节跳动大牛带你系统化学习
面试中Framework与Binder的重要性 Framework 通常作为一个Android APP开发者,我们并不关心Android的源代码实现,不过随着Android开发者越来越多,企业在筛选Android程序员时越来越看中一个程序员对于Android底层的理解和思考,这里的底层主要就是Android Framewok中各个组件的运行原理,例如Binder的运行机制、ServiceManager的作用等等。
Framework掌握不熟?字节跳动大牛带你系统化学习
|
调度
阿里云专家SDCC参会手札:Erlang之父表示开发人员更应该关注上层逻辑
本文为阿里云数据库技术专家黄大鹏参加SDCC后写的手札,他分享了一些见闻,比如:和Erlang之父Joe Armstrong聊天的内容——相对于性能软件开发人员更应该关注上层逻辑,从更高的层面去考虑优化这件事件,尽量考虑投入产出,另外性能优化从长远看应该交给硬件。
3290 0
|
移动开发 小程序 机器人
关于《自动化测试实战宝典:Robot Framework + Python从小工到专家》
互联网行业的工程师就好比运动员,要想在竞技场 上获胜,需要在训练场里长期刻苦地练习技巧,想要成为一个不被时代抛弃的技术人,就需要不断地更新迭代自己的知识体系。
1456 0