遇到的问题和解决办法:
1.用官方网下载的DataBase Library python拓展库,按照文档写一个testsuite
*** Settings ***
Library DatabaseLibrary
*** Test Cases ***
Use database
Connect To Database MySQLdb gdrive_dbp_gb root sd-9898w 10.10.199.26 3306
运行后报错,
==============================================================================
Database
==============================================================================
Use database | FAIL |
NoSectionError: No section: 'default'
------------------------------------------------------------------------------
Database | FAIL |
1 critical test, 0 passed, 1 failed
1 test total, 0 passed, 1 failed
==============================================================================
改用配置文件方式:
*** Settings ***
Library DatabaseLibrary
*** Test Cases ***
Use database
Connect To Database dbConfigFile=default.cfg
default.cfg文件内容如下,
[root@xunlei16 lx_user_permission]# cat default.cfg
[default]
dbapiModuleName=MySQLdb
dbName=test
dbUsername=root11
dbPassword=123
dbHost=10.10.10.10
dbPort=3306
执行后,上述的报错没了,又有新的错误
==============================================================================
Database1
==============================================================================
Use database | FAIL |
OperationalError: (2002, "Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)")
------------------------------------------------------------------------------
Database1 | FAIL |
1 critical test, 0 passed, 1 failed
1 test total, 0 passed, 1 failed
==============================================================================
经过调式,发现这个拓展库代码有些问题,修改拓展库的代码后。运行成功。修改文件,及内容如下
首先到拓展库DatabaseLibrary的安装目录,打开文件connection_manager.py
将这一行connect_to_database(self, dbapiModuleName=None, dbName=None, dbUsername=None, dbPassword=None, dbHost='localhost', dbPort="5432", dbConfigFile="./resources/db.c
fg"):
改成
connect_to_database(self, dbapiModuleName=None, dbName=None, dbUsername=None, dbPassword=None, dbHost=None, dbPort=None, dbConfigFile="./resources/db.c
fg"):
即可
最后运行结果
==============================================================================
Database1
==============================================================================
Use database | PASS |
------------------------------------------------------------------------------
Database1 | PASS |
1 critical test, 1 passed, 0 failed
1 test total, 1 passed, 0 failed
==============================================================================
结语,官网的拓展出现这么明显的问题,显然是使用这个库的人很少。其实这样的库可以自己写,但我比较懒,就将就用吧。不知道是否还有其他问题。