mac上使用robot测试postgresql问题

先介绍一下使用robot需要安装的环境。

-- mac默认安装了python
1.robot

2.wxpython 2.8.12.1 安装ride需要用到

3.ride

这样下完以后,打开ride提示需要python环境是32位的,现在mac默认的python是64位的,网上的教程是执行该段代码:
defaults write com.apple.versioner.python Prefer-32-Bit -bool yes

好了,但现在位置ride能正常启动了,也能编写测试用例了。

测试有时候还需要验证数据库信息,所以我们需要去下载一个robotframework_databaselibrary。直接pip install robotframework_databaselibrary
但是因为我使用的是postgresql数据库,所以还需要下载psycopy,直接pip install psycopy2。

现在开始创建一个测试例子,代码如下

*** Settings ***
Library DatabaseLibrary
*** Test Cases ***
Connect To Database psycopg2(dbapiModuleName) (数据库名称) (访问用户名) (访问密码) (数据库ip) 5432(数据库服务端口)
@{ids} Query (数据库脚本)
Disconnect From Database #端开数据库连接

但是run的时候报了这样的错误:

ImportError: dlopen(/Library/Python/2.7/site-packages/psycopg2/_psycopg.so, 2): Symbol not found: _PQbackendPID
  Referenced from: /Library/Python/2.7/site-packages/psycopg2/_psycopg.so
  Expected in: flat namespace
in /Library/Python/2.7/site-packages/psycopg2/_psycopg.so

这个问题的原因是python引起的,这个需要64位,但是我们前面设置32位的,所以现在需要重新设置一下python:
defaults write com.apple.versioner.python Prefer-32-Bit -bool no

但是发现设置完这个以后,ride打不开了,真是一个大坑啊。
这样的话,就直接用命令去执行:
pybot -s '*' -d output/ Suite-database.txt
发现可以了。
但是这两个东西确实是一个大坑,好像只能并存一下。。。。。

猜你喜欢

转载自wudijb.iteye.com/blog/2381025