自动化测试robotframework环境搭建及常用库

来源:互联网 发布:优酷视频for mac 编辑:程序博客网 时间:2024/05/29 02:36

1.安装python,常用的版本为2.7.11,官网地址:https://www.python.org/downloads/

2.安装完成后,将python的安装路径加入path,这样就可以直接在cmd中执行python命令了

3.安装pip: python安装目录下有../Scripts/easy_install.exe,可直接到此目录下执行easy_install.exe pip.也可自己到http://pypi.python.org/pypi/pip#downloads下载,进入目录python setup.py install 进行安装

4.安装wxpython,安装wxpython是为了支持ride的运行库,安装wxpython可直接命令行用pip安装:pip install -U wxPython,也可到https://wxpython.org/pages/downloads/下载安装

5.安装robotframework,可直接命令行用pip安装:pip install robotframework,也可到https://pypi.python.org/pypi/robotframework下载安装

6.安装robotframework-ride,可直接命令行用pip安装:pip install robotfraemwork-ride,也可到https://pypi.python.org/pypi/robotframework-ride下载安装

7.至此rf的环境已安装完成,以下列举下进行自动化测试需要用的常见库,及安装方式

1.pip install robotframework-selenium2library

2.pip install robotframework-databaselibrary(前提是安装xc_Oracle)

3.pip install requests,pip install robotframework-requests (前提安装requests)

4.pip install robotframework-httplibrary

5.pip install robotframework-ExcelLibrary 

6.pip install robotframework-autoitlibrary(win32识别处理)

6.pip install chardet (格式转化)

7.pip install openpyxl (增强弄excel处理,可处理xlsx,xlsm)

8.cx_oracle安装:python -m pip install cx_Oracle --upgrade,也可自行到https://oracle.github.io/python-cx_Oracle/下载安装

安装完成后,需要确认本地的oracle client位数与cx_oracle位数是一致,不然会报:importError: DLL load failed: 不是有效的Win32程序

安装相同位数的oracle instantclient,下载地址http://www.oracle.com/technology/software/tech/oci/instantclient/index.html,下载完成后解压便可

完成后,进行环境变更配置:ORACLE_HOME,TNS_ADMIN配置为instantclient的解压目录,path中增加instantclient的解压目录

将instantclient目录下的:oci.dll,oraocci11.dll,oraociei11.dll的三个dll文件复制到python目录的..\Lib\site-packages下

import cx_oracle
class OracleTest():
def test(self):
db=cx_Oracle.connect(${dbname}/#{dbpassword}@172.19.14.42/${sid})
cr=db.cursor()
cr.execute("select * from dual")
rs=cr.fetchall()
cr.close()

以上代码进行测试是否可成功连接

8.其他常用库:

标准库 
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 web 
start的应用。(Java Web Start 是基于 Java 技术的应用程序的一种部署解决方案,它是连接计算机和 Internet 
的便捷通道,允许用户在完全脱离 Web 的情况下运行和管理应用程序)
MQTT library:测试MQTT brokers和应用的库。


阅读全文
1 0