如何在临时 sql server 上使用带有 Robot Framework 的数据库库
Posted
技术标签:
【中文标题】如何在临时 sql server 上使用带有 Robot Framework 的数据库库【英文标题】:How to use database library with Robot Framework on temporary sql server 【发布时间】:2012-06-08 14:19:33 【问题描述】:我正在使用支持数据库验证的 Robot Framework 的数据库库。
我尝试执行这个基本命令:
***Variables***
***Settings***
Suite Setup
Suite Teardown
Test Setup
Test Teardown
Library DatabaseLibrary
***Testcases***
UC_DB_Validation
要连接到我正在使用的数据库:
dbapiModuleName=mysqldb dbName='bigetestsrv' dbUsername='ravitest' dbPassword='welcome' dbHost='10.73.92.18'
使用 pybot 从命令提示符运行连接字符串时,出现以下错误:
"No Module Named as Mysqldb"
我正在使用具有有效凭据的 Query Express,但我的计算机中没有安装 Sql Server。
如何连接到我的数据库?
【问题讨论】:
如果其他人在通过 DatabaseLibrary 连接到 SQL Server 时遇到问题:我将 pyodbc 模块与 DatabaseLibrary 一起使用。在连接到现代版本的 SQL Server 时,DatabaseLibrary“连接到数据库”关键字不适用于 pyodbc,这可能是因为 DatabaseLibrary 指定了非常旧的“SQL Server”ODBC 驱动程序而不是更现代的驱动程序。所以使用“使用自定义参数连接到数据库”关键字。但是,有一个问题:您必须将指定连接字符串的第二个参数括在引号中才能使其工作。 【参考方案1】:我明白了……
我走错路了 数据库库(Apache 许可证)来自 http://franz-see.github.com/Robotframework-Database-Library/ 我目前使用的仅在使用 psycopg2 的 postgresql 上进行了测试,它可能与其他 RDBMS 一起使用也可能不使用。 所以我尝试连接pymssql db,它支持bydefualt并且它工作。
我用过 使用自定义参数 pymssql 'dbname', 'username', 'password', 'host' 连接到数据库
作为先决条件,我需要从 http://pymssql.sourceforge.net/license.php
谢谢
【讨论】:
【参考方案2】:而不是:
dbapiModuleName=Mysqldb
使用:
dbapiModuleName=PyMySQL
另外,请确保使用pip
命令在您的机器上安装了PyMySQL
模块。
【讨论】:
以上是关于如何在临时 sql server 上使用带有 Robot Framework 的数据库库的主要内容,如果未能解决你的问题,请参考以下文章
如何在 SQL Server 中使用 Create 语句创建临时表?