robot_framewok自动化测试--(1)Robot Framework 环境搭建及常见日志问题解决办法
阅读原文时间:2023年07月11日阅读:3

一、Robot Framework 介绍

  Robot Framework 的架构是一个通用的验收测试和验收测试驱动开发的自动化测试框架(ATDD)。它具有易于使用的表格来组织测试过程和测试数据。

  它使用关键字驱动的测试方法。

  对于上面的例子来说,open browser 、input text、click button 和 close browser,都是“关键字”,这些关键字由 robotframework-selenium2library 类库所提供。当然,我们也可以自定义关键字。

  其检测能力可以通过测试库实现可以使用 Python 或 Java 的扩展,用户可以使用相同的语法,用于创建测试用例创建新的更高层次的现有的关键词。

  Robot Framework 的操作系统和应用独立框架。核心框架是使用 Python 和运行在 Jython(JVM)和IronPython(.NET)。

  不同的测试库完成不同的测试功能,Robot Framework 通过导入不同的库,就可以使用库中所提供的关键字,从而时行相关的测试。

  有几个标准库是和 Robot Framework 捆绑在一起,除此之外 Robot Framework 还有大量的被分别开发的外部库,你可以根据需要安装。当然,你也可以创建自己的测试库。

  下面是 Robot Framework 官方网站所提供的库:

  • web 自动化测试:SeleniumLibrary,Selenium2Library,Selenium2Library for Java、watir-robot 等。
  • Windows GUI 测试:AutoItLibrary。
  • 移动测试:Android library、iOS library、AppiumLibrary 等。
  • 数据库测试:Database Library (Java)、Database Library (Python)、MongoDB library 等。
  • 文件对比测试:Diff Library。
  • HTTP 测试:HTTP library (livetest)、HTTP library (Requests)等。

二、Robot Framework 环境搭建

  访问 Python 官方网站:https://www.python.org/

  由于 Robot Framework 框架是基于 Python 语言开发的,要想使用 Robot Framework 首先需要有 Python环境。在学习和使用 Python 时,首先会碰到 Python 版本的问题,这在其它编程语言中是不存在的,目前 Python分为 Python2 和 Python3 两个版本。之所以会有两个版本并存的情况,是因为随着近几年 Python 语言的逐渐流行起来,早期的 Python 为版本在基础的设计存在着一些不足之处,Python3 在设计的时候很好的解决这些遗留问题,并且在性能上也有了很大的提升,但同时带来了新的问题就是不完全向后兼容,所以就造成了两个版本并存的情况。

ride安装官方指导:https://github.com/robotframework/RIDE/

pip install robotframwork
pip install -U --pre robotframework-ride

安装成功后,桌面自动生成图标,如果双击打开图标没反应,参考解决问题:https://www.cnblogs.com/cyying/p/14366132.html

安装成功后打开的界面

三、Robot Framework日志输出乱码

CASE如下:创建一个list,值1和值2分别是中文“测试”和“中国”。

运行后,日志输出如下:中文部分全部乱码展示

Lib\site-packages\robotide\contrib\testrunnertestrunnerplugin.py中565行

将SYSTEM修改为OUTPUT,位置如图所示:

修改后重启RIDE,重新执行解决了。

四、

Robot Framework控制台乱码解决方法

一般python安装路径存在中文文件夹的情况会出现:

Lib\site-packages\robotide\contrib\testrunner目录下testrunner.py中将latinl修改为mbcs。

(mbcs为多字节字符集,会根据系统自动显示为对应的语言字符集,中文系统中展示GB2312)