zoukankan      html  css  js  c++  java
  • robot framework-databaselibaray库使用(python)(转)

      公司做项目用到了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安装目录 etworkadmin nsnames.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的Libsite-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

  • 相关阅读:
    Linux 配置yum源(互联网)
    Linux SSH远程链接 短时间内断开
    loadrunner12安装教程
    Jmeter关联处理
    JMeter做http接口压力测试
    面试试题库
    Selenium基础之--01(将浏览器最大化,设置浏览器固定宽、高,操控浏览器前进、后退)
    索引(快速查询)
    视图是什么玩意
    mysql面试常见题目3
  • 原文地址:https://www.cnblogs.com/softidea/p/4911461.html
Copyright © 2011-2022 走看看