DatabaseLibrary –Oracle安装部署

   DatabaseLibrary是一个基于Robotframework的测试库,用来对数据库进行操作,基本上常见的数据库都可以用DatabaseLibrary。下面来介绍一下基于Oracle的DatabaseLibrary安装部署方法。

1、安装DatabaseLibrary

下载地址:https://pypi.python.org/pypi/robotframework-databaselibrary/0.6

下载后,解压到python安装目录中,打开命令窗口,进入上面目录(或可在安装目录中按住shift-右键-在此处打开命令窗口直接输入命令)进入安装目录,输入命令:python setup.py

install,等待安装完成。

2、安装cx_orcle支持库

下载地址:https://sourceforge.net/projects/cx-oracle/files

注意:

(1)根据自己的实际情况确定需要的文件。cx_orcle版本要与python版本和位数一致。怎么看Python位数,在命令行运行Python,查看提示信息:

Python2.7.13 (v2.7.13:a06454b1afa1, Dec 17 2016, 20:42:59) [MSC v.150064 bit(Intel)] on win32

其中,中括号MSC这一段64bit代表Python位数是64位的。如果写的是32bit那就是32位的。

(2)与Oracle数据库版本一致

cx_Oracle文件名明确了所需要信息,根据自己的需要,找到正确的文件。如:

cx_Oracle-5.2.1-11g.win-amd64-py2.7.exe

说明:cx_Oracle-5.2.1是cx_Oracle本身的版本号,11g表明这个安装包支持的Oracle数据库版本,win-amd64表明这是64位的,py2.7是指2.7系列的Python。

选对了cx_Oracle的安装文件,下载后运行安装就可以了。

3、安装instantclient

下载地址:

http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html

需重点关注dll,并不一定需要本机安装Oracle客户端,安装了也没关系,不需要卸载,只要保证放在site-packages里的dll是对的就可以。

Oracle数据库的dll一般都有对应的instant-client包,包里有需要的dll文件。

如果从首页进入是点这里:


DatabaseLibrary –Oracle安装部署_第1张图片

然后进入这个链接页面:


DatabaseLibrary –Oracle安装部署_第2张图片

如果选择Windows (x64)会进入如下页面:

DatabaseLibrary –Oracle安装部署_第3张图片

这里列出不同平台、不同位数的instant-client,同样的,要选择和你的Python位数对应包,而不是和Windows位数对应的。比如选择一个Windows64位的,进入下载页面,记得勾选Accept License Agreement同意才能下载。 这个页面下面列了很多个版本,每个版本下面还有很多不同的包,我们需要的是All files的这个包,也就是每个版本下面的第一个下载链接。这个页面有12.x和11.x,还有10.x的,也就对应着12c、11g、10g,每个大版本下面还有若干小版本的,一般选最新的就好,或者自己随便选。选择之后,可能需登录,没用户的可以注册一下。

下载完成之后,随便找个地方解压缩,在里面找到这几个dll,11g的需要3个,12g的需要4个:11g的3个dll,加上一个oraons.dll,我们要把这些dl放到site-packages目录下。

11g的需要这3个:


DatabaseLibrary –Oracle安装部署_第4张图片

4、连接数据库测试

(1)编写测试用例

DatabaseLibrary –Oracle安装部署_第5张图片

(2)运行测试用例

DatabaseLibrary –Oracle安装部署_第6张图片

出现如上界面,说明可成功连接数据库。

参考来源出自:http://mp.weixin.qq.com/s/UvX-fDI1Dwj7VVLyaSsuzA

常见问题

1、Dll load failed

如果在使用中出现“Dll load failed”,则需要到Oracle网站下载instantclient的压缩包,然后将其中的oraociei11.dll、oraocci11.dll、oci.dll这3个文件复制到python安装目录下。

2、cx_Oracle版本是和Python的位数去匹配而不是和Windows的位数,换言之,你的Windows是64位的,但是你装了32位的Python,那么你这里也是要用32位的cx_Oracle的。一般来说,Windows位数决定了Python可以安装什么位数,比如说64位的Windows可以装32位的Python也可以装64位的Python,但是32位的Windows就只能装32位的Python了。这里特别容易出错!

3、unable to acquire oracle environment handle

上文强调的版本不一致问题,请检查使其版本一致。

你可能感兴趣的:(DatabaseLibrary –Oracle安装部署)