Selenium Robot Framework1.7.4.1 在 Python3.7.6 上的安装教程

gogily.liu · 2020年03月28日 · 1620 次阅读

首选来介绍一下什么是 Robot Framework:
Robot Framework 是一款基于 Python 的功能自动化测试框架。它具备良好的可扩展性,支持关键字驱动,可以同时测试多种类型的客户端(web、Android、iOS 等)或者接口,可以进行分布式测试执行。主要用于轮次很多的验收测试和验收测试驱动开发(ATDD)。

那就直入主题吧,先安装:(安装程序链接:https://pan.baidu.com/s/1Pyy4bS_xGtNlFnJm4HNn2w 提取码: 95pr )
1.安装 Python 环境,建议使用 3.7.6 最新版本(一般选择使用 RIDE 版本发布时间之前的 Python3.7.X,这样兼容性会更好)
2.安装或升级最新版本的 pip 和 setuptools 工具,目的是支持在线安装 Python 第三方功能插件
python -m pip install --upgrade pip
pip install --upgrade setuptools
3.安装 wxPython,由于 RIDE 的运行需要 wxPython 环境支持,故必须安装,安装之前至少需要如下软件支持
pip install Pillow【PIL is the Python Imaging Library 】
pip install numpy【NumPy is the fundamental package for array computing with Python】
pip install Pygments【Pygments is a syntax highlighting package written in Python.】
pip install six【Pygments is a syntax highlighting package written in Python.】
pip install wxPython(直接安装可自动安装上面的插件,不过经常会失败,所以先成功安装依赖插件,减少安装过程报错失败)
4.安装 RF 的底层自动化测试框架 robotframework,一般使用命令 pip install robotframework 可安装最新稳定版本
5.安装 RIDE,安装 RIDE 之前先安装 pywin32(pip 在线安装,这个时 RIDE 创建快捷方式会用到),之后再 pip install robotframework-ride 在线安装,RIDE 是 Robot Framework Test Data Editor,【有时启动 RIDE 失败,提示:“ImportError: No module named pubsub” 时,是应为要安装 PyPubSub 3.3.0】
6.安装 Selenium 的支持软件 urllib3、decorator 和 docutils,一般 pip install X 在线安装最新版本
7.安装 Selenium 自动化测试框架,这个是自动化的核心和灵魂!!!(首先要安装 urllib3,pip 在线安装请忽略)
8.安装 robotframework_selenium2library 库(先安装 robotframework_seleniumlibrary 库,pip 在线安装请忽略),是 RF 对 Selenium 自动化框架的二次封装支持的桥梁,其存在是将 RF 与 Selenium 完美结合起来
9.对 Windows 系统的自动化支持
依次安装 autoit-v3-setup(exe 文件安装)、robotframework-autoitlibrary(pip 在线安装或本地 python 安装)
10.对 Web 的自动化支持,将 IEDriverServer、chromedriver 放至 PYTHON_HOME\Scripts 目录
11.对 API 的自动化支持,pip 安装 pip install requests/pip install robotframework-requests【安装之前需要先装 idna、chardet、certifi】
12.对 App 的自动化框架 Appium 支持,pip 安装 pip install robotframework-appiumlibrary(对于非在线安装需要提前安装 Appium-Python-Client、kitchen 支持库)
13.第三方库自定义库的引入,将自定义库文件 OutLibrary.py 放至\Lib\site-packages 目录下即

注:
1.安装成功后,当测试用例的名称包含中文时,输出日志将显示乱码的解决方法:
修改文件\yourPythonHome\Lib\site-packages\robotide\contrib\testrunner\testrunnerplugin.py 中,将 encoding = {'CONSOLE': CONSOLE_ENCODING,
'SYSTEM': SYSTEM_ENCODING,
'OUTPUT': OUTPUT_ENCODING}改为 encoding = {'CONSOLE': CONSOLE_ENCODING,
'SYSTEM': OUTPUT_ENCODING,
'OUTPUT': OUTPUT_ENCODING}

标准库
Robot Framework 可以直接导入使用的库,包括:
Builtin:包含经常需要的关键字。自动导入无需 import,因此总是可用的
Dialogs:提供了暂停测试执行和从用户的输入方式。
Collections:提供一组关键词处理 Python 列表和字典。
OperatingSystem:允许执行各种操作系统相关的任务。允许执行各种操作系统相关的任务,使各种操作系统相关的任务在 robotframework 正在运行的系统中执行。
Remote:远程库接口的一部分。没有自己的任何关键字,作为 robotframework 和测试库之间的代理的特殊库。实际测试库可以在不同的机器上运行,可以使用任何编程语言支持 XML-RPC 协议的实现。
Screenshot:提供关键字来捕获和存储桌面的截图。
String:用于处理字符串并验证它们的内容的库,用于生成、修改和验证字符串
Telnet:支持连接到 Telnet 服务器上打开的连接执行命令。
XML:用于生成、修改和验证 XML 文件的库。
Process:系统中运行过程的库。
DateTime:日期和时间转换的库,支持创建和验证日期和时间值以及它们之间的计算

扩展库
Robot Framework 需要下载安装后才能使用的库,包括:
Android library:所有 android 自动化需要的测试库,内部使用的是 Calabash Android
iOS library:所有 iOS 自动化需要的测试库,内部使用 Calabash iOS 服务
appiumlibrary:Android 和 iOS 测试库,内部使用的是 appium
HTTP library (livetest):内部使用 LiveTest 工具的 HTTP 测试的库。
HTTP library (Requests):内部使用 request 工具的 HTTP 测试的库。
MongoDB library:使用 pymongo 和 MongoDB 交互的库。(MongoDB 是一个基于分布式文件存储的数据库)
Database Library (Java):基于 Java 的数据库测试库。也可使用 Jython 和 Maven central.
Database Library (Python):基于 Python 数据库测试库。支持任何 Python 解释器,包括 Jython。
watir-robot:使用 Watir 的工具的 Web 测试库。
seleniumlibrary:Web 测试库,内部使用比较流行的 selenium 工具。利用早期的 selenium1.0 和本身已经过时。
selenium2library:使用 selenium2 的 Web 测试库。替换了大部分老的 seleniumlibrary。
selenium2library java:selenium2library 的 java 接口
Django Library:为 Django 的库,一个 Python Web 框架。
sudslibrary:一种基于泡沫基于 SOAP 的 Web 服务的功能测试库,动态的 SOAP 1.1 的客户端。
Archive library:处理.zip 和.tar 压缩包的库。
Diff Library:比较两个文件的库。
FTP library:Robot Framework 上测试和使用 FTP 服务的库。
SSHLibrary:通过 SSH 连接的在远程机器上执行命令。还支持使用 SFTP 进行文件传输
rammbock:通用的网络协议测试库;提供简单的方法来指定网络数据包,并检查发送和接收数据包的结果。
imagehorizonlibrary:跨平台、基于图像识别的 GUI 自动化纯 Python 库。
autoitlibrary:Windows 的 GUI 测试库,使用 AutoIt 的免费工具作为驱动。
Eclipse Library:使用 SWT 窗口小部件测试 Eclipse RCP 应用程序的库。
robotframework-faker:一个服务 faker 的库,faker 的测试数据生成器。
swinglibrary:用 Swing GUI 测试 java 应用程序库
remoteswinglibrary:使用 swinglibrary 库测试和连接一个 java 进程,尤其是 java webstart 的应用。(Java Web Start 是基于 Java 技术的应用程序的一种部署解决方案,它是连接计算机和 Internet 的便捷通道,允许用户在完全脱离 Web 的情况下运行和管理应用程序)
MQTT library:测试 MQTT brokers 和应用的库。

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
暂无回复。
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册