robot framework-databaselibaray库使用(python)(转)

简介:   公司做项目用到了databaselibaray,刚开始使用时碰到了很多问题,网上也查阅了很多资料终于是可以用了,现在整理记录下来,有需要的同学可随意使用: 另,本文主要是databaselibaray的使用,RF环境搭建可以看我另一篇:robot framework环境搭建 1、databa...

  公司做项目用到了databaselibaray,刚开始使用时碰到了很多问题,网上也查阅了很多资料终于是可以用了,现在整理记录下来,有需要的同学可随意使用:

另,本文主要是databaselibaray的使用,RF环境搭建可以看我另一篇:robot framework环境搭建

1、databaselibaray环境准备:

  a)     安装cx_Oracle: http://sourceforge.net/projects/cx-oracle/files/

  b)     安装DBlibrary: https://github.com/franz-see/Robotframework-Database-Library

  c)     安装oracle(以下两个选一个即可):

                 i.          安装oracle客户端:http://www.oracle.com/

                ii.          安装instant client: http://www.oracle.com/technology/global/cn/software/tech/oci/instantclient/index.html

 

注意:cx_Oracle的版本要与oracle的版本一致

 

二、使用DBLibrary 

复制代码
    Connect To Database Using Custom Params    cx_Oracle    'scott','tiger','oral'
    @{data}    query    select * from dept
    log many    @{data}
    log    ${data[0][1]}
    ${row}    row count    select * from dept
    log    ${row}
    ${count}    Get length    ${data}
    log    ${count}
    Execute Sql String      delete from dept d where d.id='1'
    Disconnect From Database
复制代码

说明:

1、 Connect To Database Using Custom Params:

  a)     第一个参数我使用的是cx_Oracle,就写这个

  b)     第二个参数由三部分组成:user,pwd,tns

2、关于tns多说两句:我安装的是oracle客户端,可以在oracle安装目录\network\admin\tnsnames.ora中配置你的TNS,我的如下:

  • oral=(DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST =192.168.1.10)(PORT = 1526)) (connect_data = (sid =oral)))

因为我的tnsnames.ora文件配置了tns所以使用时可以直接使用它的sid即oral。如果没有配置的话,直接使用(DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST =192.168.1.10)(PORT = 1526)) (connect_data = (sid =oral)))代替上面例子中的oral也是可以的。

 

三、遇到的阻碍问题及解决办法:

在家里使用DBLibrary时没有任何问题,但是到公司用时出问题了,主要有以下两个问题,折腾了好久:

  1、 ImportError: DLL load failed:这个问题把oci.dll拷贝到python的Lib\site-packages目录下就可以解决。

  2、 InterfaceError: Unable to acquire Oracle environment handle:这个问题需要拷贝另外两个dll: oraocci11.dll和oraociei11.dll

 

 

参考:

http://www.51testing.com/html/15/246015-853524.html

http://blog.sina.com.cn/s/blog_654c6ec70100u9fr.html

http://www.cnblogs.com/puresoul/p/3868638.html

相关文章
|
2月前
|
存储 Web App开发 前端开发
Python + Requests库爬取动态Ajax分页数据
Python + Requests库爬取动态Ajax分页数据
|
1月前
|
数据采集 存储 Web App开发
Python爬虫库性能与选型实战指南:从需求到落地的全链路解析
本文深入解析Python爬虫库的性能与选型策略,涵盖需求分析、技术评估与实战案例,助你构建高效稳定的数据采集系统。
207 0
|
2月前
|
存储 监控 安全
Python剪贴板监控实战:clipboard-monitor库的深度解析与扩展应用
本文介绍如何利用Python的clipboard-monitor库实现剪贴板监控系统,涵盖文本与图片的实时监听、防重复存储、GUI界面开发及数据加密等核心技术,适用于安全审计与自动化办公场景。
77 0
|
11月前
|
Python
pip批量安装Python库 requirement.txt 离线环境无互联网环境下pip安装Python库
pip批量安装Python库 requirement.txt 离线环境无互联网环境下pip安装Python库
588 3
|
开发工具 git Python
安装和使用`libnum`是一个用于数字理论函数的Python库
【6月更文挑战第19天】`libnum`是Python的数字理论函数库。安装可通过`git clone`,进入目录后运行`python setup.py install`,也可用`pip install libnum`。示例:使用`int_to_hex`将十进制数42转换为十六进制字符串'2a'。注意,信息可能已过时,应查最新文档以确保准确性。如遇问题,参考GitHub仓库或寻求社区帮助。
254 1
确保你已经安装了`python-barcode`库。如果没有,可以通过pip来安装:
确保你已经安装了`python-barcode`库。如果没有,可以通过pip来安装:
|
Python
Anaconda虚拟环境安装Python库与Spyder
本文介绍在Anaconda中,为Python的虚拟环境安装第三方库与Spyder等配套软件的方法~
637 1
Anaconda虚拟环境安装Python库与Spyder
|
Linux Python
不可出外网的主机如何快速、方便、优雅的安装Python库?
不可出外网的主机如何快速、方便、优雅的安装Python库?
604 0
不可出外网的主机如何快速、方便、优雅的安装Python库?
|
Linux 计算机视觉 Python
Windows下使用Pycharm安装python GUI库Kivy教程
Windows下使用Pycharm安装python GUI库Kivy教程
955 0
Windows下使用Pycharm安装python GUI库Kivy教程

热门文章

最新文章

推荐镜像

更多