一、安装MySQL库

  方法1、 DatabaseLibrary(python) 库包下载地址:

​    http://franz-see.github.io/Robotframework-Database-Library/​

  方法2:免下载直接安装使用命令

  1. Using easy_install: easy_install robotframework-databaselibrary
  2. Using pip: pip install robotframework-databaselibrary

 

二、安装pymysql

  tips:pymysql是一个纯Python的连接mysql的一个工具,用起来比较方便。

 

  方法1:下载并安装 https://pypi.python.org/pypi/PyMySQL

  方法2:pip安装,命令如下:(可用pip list查看)

pip install PyMySQL

 

RobotFramework Mysql库添加及使用_mysql

RobotFramework Mysql库添加及使用_数据库_02

三、测试案例

RobotFramework Mysql库添加及使用_mysql_03

Connect To Database Using Custom Params来连数据库,但是后面跟的不是sqlite了,这里用的就是我们前面安装的pymysql,连接串是:

database='newdb', user='username', password='password', host='192.168.1.1', port=3306

     注意port后面的值不要加单引号。

   

RobotFramework Mysql库添加及使用_easy_install_04

   1.当你执行之后可能会发现中文变成了???

   2.你需要在连接串后面添加charset='utf8'

     3.然而打印出来是一串串的\u565

RobotFramework Mysql库添加及使用_mysql_05

   4.数据库默认编码不是Utf-8,需要人工转换一下。DataBaseLibrary自身没有提供转换函数,为了解决这个问题,我们需要对DataBaseLibrary进行扩展。

路径就直接在site-packages/DatabaseLibrary下面;

        6.打开query.py,在文件末尾加入如下decode解码方法

def decode(self,customstr,mode):
return customstr.decode(mode)

 

RobotFramework Mysql库添加及使用_数据库_06

 

  终于看到中文了,贴源码。

RobotFramework Mysql库添加及使用_数据库_07

-------------------------------------------------------------------------------------------------

四、常用的关键字

1. Query

一般的查询都使用query(注意查询语句后面不要带分号),这是有结果返回的。 

这个是一个list里面放了很多个元组(tuple),简单的来说你可以理解为二维数组。 

在数据库的结果来说,是一个N行N列的结果集,哪怕只有1个数据,那也是一行一列的一个结果集,所以我们要取值的话,有2种方式: 

1) ${a[0][1]} 

这个写法就是用来取数据库查询返回结果的了。第一个[ ]里的数字代表行,第二个[ ]代表第几列。这里说的第几行第几列都是从0开始的。

 

2) @{a[0]}[1]

这里很多人写错,以为写成这样 @{a}[0][1] 就可以了(注意大括号的位置)。在一维数组里来说,确实写外面就可以了(${a[0]}等同于@{a}[0]),但是在二维的里面这样写是有问题的。

RobotFramework Mysql库添加及使用_easy_install_08

RobotFramework Mysql库添加及使用_数据库_09

2. Row Count 

Row Count是直接返回查询结果的数量,以前Row Count出现返回-1的情况的时候也可以用query解决,就是自己写个带count的查询(例如:select count(1) from order_item),然后把结果取出来。

 

 3. Execute Sql String 

有结果返回的要用Query,没有结果返回的要用Execute Sql String。基本上insert、delete、update还有存储过程的执行,都是用这个。还有一个Execute Sql Script的关键字,是用来执行sql文件的。

如果是单条语句,结尾不要加分号";",如果是多条语句,语句之间要用分号分隔(分隔的意思是语句中间加,最后结尾不要加)。