RobotFramework,基于Python的自动化测试框架。近期学习中遇到过一些问题。

1.运行ride时,报错[ ERROR ] option --monitorcolors not recognized

原因:这是RobotFramework框架与一些扩展库的版本不兼容。

解决方案:使用 pip install --upgrade robotframework-ride  来更新到最新的版本。

2.运行时后台报错

Traceback (most recent call last):
File "C:\Python27\lib\site-packages\robotide\contrib\testrunner\testrunnerplug
in.py", line 370, in OnTimer
self._test_runner.get_output_and_errors(self.get_current_profile())
File "C:\Python27\lib\site-packages\robotide\contrib\testrunner\testrunner.py"
, line 250, in get_output_and_errors
stdout, stderr, returncode = self._process.get_output(), \
File "C:\Python27\lib\site-packages\robotide\contrib\testrunner\testrunner.py"
, line 305, in get_output
return self._output_stream.pop()
File "C:\Python27\lib\site-packages\robotide\contrib\testrunner\testrunner.py"
, line 400, in pop
return result.decode('UTF-8')
File "C:\Python27\lib\encodings\utf_8.py", line 16, in decode
return codecs.utf_8_decode(input, errors, True)
UnicodeDecodeError: 'utf8' codec can't decode byte 0xb2 in position 592: invalid
start byte

原因: 在更新robotframework-ride前,都没有报这个错。更新后运行ride,就会出现,每运行一次,都会报此错,必须重新启动ride。分析报错信息,应该是编码的问题。

解决:网上找到很多遇到类似问题的,有的说是版本问题,有的是说在py脚本文件头部加上

import sys
reload(sys)
sys.setdefaultencoding('utf-8')

有的说是要用Unicode("中文字符***") 。

寻着报错文件,一个个对着找到testrunnerplugin.py、testrunner.py、utf_8.py这几个文件,查看了对应行的代码,跟网友们给出的答案不太相符。有点无从修改。

在utf_8.py这个文件有这样一句:def decode(input, errors='strict'): 。

寻思着这个strict可能有问题,严格模式,大概对编码格式太过严苛。哈哈

最终解决方案:

还是决定通过UnicodeDecodeError: 'utf8' codec can't decode byte 0xb2百度一下,在stackoverflow找到一个。提到修改errors的赋值。原文地址:http://stackoverflow.com/questions/12468179/unicodedecodeerror-utf8-codec-cant-decode-byte-0x9c

改了后,成功解决了问题,没有再报该错了。

3.运行时报错

HTTP Error 403: Must access using HTTPS instead of HTTP
FAILED QTLibrary Importing test library 'QTLibrary' failed: ImportError: cannot
import name GLOBAL_VARIABLES
Traceback (most recent call last):
File "C:\Python27\lib\site-packages\robotide\lib\robot\utils\importer.py", lin
e 143, in _import
return __import__(name, fromlist=fromlist)
File "C:\Python27\lib\site-packages\robotframework_qtlibrary-1.0.0-py2.7.egg\Q
TLibrary\__init__.py", line 3, in <module>
from keywords import *
File "C:\Python27\lib\site-packages\robotframework_qtlibrary-1.0.0-py2.7.egg\Q
TLibrary\keywords\__init__.py", line 2, in <module>
from _logging import _LoggingKeywords
File "C:\Python27\lib\site-packages\robotframework_qtlibrary-1.0.0-py2.7.egg\Q
TLibrary\keywords\_logging.py", line 3, in <module>
from robot.variables import GLOBAL_VARIABLES

FAILED MyLibrary Importing test library 'MyLibrary' failed: ImportError: No modu
le named MyLibrary
Traceback (most recent call last):
File "C:\Python27\lib\site-packages\robotide\lib\robot\utils\importer.py", lin
e 143, in _import
return __import__(name, fromlist=fromlist)

RobotFramework学习-问题的更多相关文章

  1. robotframework学习

    下载地址: https://pypi.python.org/pypi/robotframework Installation If you already have Python with pip i ...

  2. RobotFramework学习笔记-Web自动化

    一.窗口关键字使用 1.当前浏览器弹出新的窗口 使用Select Window和Close Window处理弹出窗口.实际使用中Select Window不一定会一次选中,通常会结合Wait Unti ...

  3. Robotframework学习笔记之一Common Resource导入的Library库显示红色(导入失败)

    第一次使用Robotframework,所以也遇到了很多的坑,导入项目后 ,一些自带的库显示红色,导入失败!(ps:自带的库也显示红色) Ride日志如下(Tools--view ride log): ...

  4. robotframework学习笔记(七)------筛选执行用例

    第一种:手动勾选用例 可勾选用户,然后点击运行,这样就只运行到勾选的用例.如果不勾选的点击运行就会运行所有用例. 第二种 菜单中去筛选 可在菜单中去筛选勾用例,然后点击运行 Select All Te ...

  5. Robotframework学习笔记之—Rrobotframework运行报错“command: pybot.bat --argumentfile”

    Rrobotframework运行报错"command: pybot.bat --argumentfile" 解决方案: 1.可能是缺失文件: 1.1.检查python安装目录下的 ...

  6. [Robot Framework] 学习资料

    https://www.cnblogs.com/pachongshangdexuebi/category/981644.html Robot Framework学习笔记(一)------环境搭建 Ro ...

  7. Robotframework Web自动化实战课程

    想学习的小伙伴,现在可以报名了!!!7月1日正式开课本期课程主要是web自动化为主,根据平时工作经验整理的一套流程以及使用过程中常见的问题总结.学完后能很快上手,即学即用,课后遇到问题在线解答,远程协 ...

  8. robot_framewok自动化测试--(8)SeleniumLibrary 库(selenium、元素定位、关键字和分层设计)

    SeleniumLibrary 库 一.selenium 1.1.Selenium 介绍 Selenium 自动化测试工具,它主要是用于 Web 应用程序的自动化测试,但并不只局限于此,同时支持所有基 ...

  9. robotframework安装与配置--学习第一天

    刚刚入职公司,之前学的是Java+selenium自动化测试,但公司要求使用robot framework,所以找了些资料学习.刚开始觉得为什么不用java.python等开发语言+selenium做 ...

随机推荐

  1. idea 类注释,方法注释设置

    类头注释:打开file->setting->Editor->Filr and Code Templates->Includes->File Header 直接在右边的文件 ...

  2. Appium+python自动化23-Android夜神模拟器

    前言 Android SDK虽然也自带了模拟器,但是那速度会让你怀疑人生,并且不稳定经常卡死异常.夜神模拟器可以说是android模拟器里面的一个神器. 环境安装 1.官网下载地址:https://w ...

  3. java代码------实现从控制台输入整型,

    总结:主要是方法的调用不能错,比如浮点型,整型,字节型,so.on int ====hasNextInt() float--------hasNextfloat() short ====hasNext ...

  4. Java-Runoob-高级教程:Java 实例

    ylbtech-Java-Runoob-高级教程:Java 实例 1.返回顶部 1. Java 实例 本章节我们将为大家介绍 Java 常用的实例,通过实例学习我们可以更快的掌握 Java 的应用. ...

  5. Lock分析

      Lock接口是锁的实现,用来控制多个线程访问共享资源的方式,是在java 1.5的时候引入的,在此之前,只能通过synchronized的方式来取得对象的锁. synchronized中的锁是隐式 ...

  6. JPA基本介绍以及使用

      JPA即Java Persistence Architecture,Java持久化规范,从EJB2.x版本中原来的实体Bean分离出来的,EJB3.x中不再有实体Bean,而是将实体Bean放到J ...

  7. Linux 设备总线驱动模型

    尽管LDD3中说对多数程序员掌握设备驱动模型不是必要的,但对于嵌入式Linux的底层程序员而言,对设备驱动模型的学习非常重要.     Linux设备模型的目的:为内核建立一个统一的设备模型,从而又一 ...

  8. List、Set、Map下各类型的对比

    1.List和Set: List: 元素有放入顺序,元素可重复,查找效率高,插入删除效率低: Set: 元素无放入顺序,元素不可重复,(元素虽然无顺序,但元素在Set中的位置是由该元素的HashCod ...

  9. Tkinter Listbox(列表框)

    Python - Tkinter Listbox(列表框): 列表框部件用于显示一个项目列表,用户可以选择的项目数   列表框部件用于显示一个项目列表,用户可以选择的项目数. 语法: 这里是一个简单的 ...

  10. C++常见错误坑洞

    指针没初始化就使用*解引用运算符; 连续delete释放new指针; 使用delete 是否常规普通变量内存; 地址直接复制给制作