RobotFramework自动化测试框架-DatabaseLibrary库的使用(对数据库的操作) (2)

1、首先我们来看下如何向数据库中插入数据,此处以向表city中插入一条记录为例,通过Execute Sql String关键字来执行INSERT INTO city(NAME,countrycode,district,population) VALUES('beijing' ,'ZH','China',217100)

Connect To Database Using Custom Params    pymysql  database='world', user='root', password='root', host='localhost', port=3306

Execute Sql String  INSERT INTO city(NAME,countrycode,district,population) VALUES('beijing' ,'ZH','China',217100)    

Disconnect From Database             

RobotFramework自动化测试框架-DatabaseLibrary库的使用(对数据库的操作)




执行结果:

RobotFramework自动化测试框架-DatabaseLibrary库的使用(对数据库的操作)

 

在sql窗口,查询一下,刚刚执行的inset语句是否执行成功。

 

RobotFramework自动化测试框架-DatabaseLibrary库的使用(对数据库的操作)

 

我们可以看到已经成功插入了数据。

2、然后我们再来看一下怎么删除表中的数据,我们将上面插入的'beijing' ,'ZH','China',217100 这条数据从数据库中删除掉

Connect To Database Using Custom Params  pymysql  database='world', user='root', password='root', host='localhost', port=3306

Execute Sql String  delete from city where      

Disconnect From Database               

RobotFramework自动化测试框架-DatabaseLibrary库的使用(对数据库的操作)

 

 

执行结果:

 

RobotFramework自动化测试框架-DatabaseLibrary库的使用(对数据库的操作)

 

在sql窗口,查询一下,有没有将数据成功删除掉

RobotFramework自动化测试框架-DatabaseLibrary库的使用(对数据库的操作)

 

从查询的结果看,我们看到数据已经成功的被删除掉了

2.1.5        如何执行数据库脚本文件

在做自动化测试时,我们经常需要构造数据或者对库中的数据进行初始化,但是如果我们每次都是将要执行的数据库脚本按条写在用例中,将非常不好维护,因此我们需要直接执行数据库脚本文件,在Databaselibrary库中,可以通过Execute Sql Script关键字来执行数据库脚本文件。

此处以执行本地F磁盘中的script.sql 为例,在script.sql 脚本中,放入需要执行的语句

RobotFramework自动化测试框架-DatabaseLibrary库的使用(对数据库的操作)

 

Connect To Database Using Custom Params    pymysql  database='world',user='root', password='root', host='localhost', port=3306

Execute Sql Script       f:/script.sql  

Disconnect From Database         

 

RobotFramework自动化测试框架-DatabaseLibrary库的使用(对数据库的操作)

 

 

执行结果:

RobotFramework自动化测试框架-DatabaseLibrary库的使用(对数据库的操作)

 

执行成功后,对数据库进行查询,会发现,脚本已经执行成功,数据已经成功插入

 

RobotFramework自动化测试框架-DatabaseLibrary库的使用(对数据库的操作)

 

 

2.1.6        数据库其他操作关键字

关键字

 

使用描述

 

Check If Exists In Database

 

检查数据库查询是否有返回结果,如果有返回结果,则用例执行成功,否则执行失败,示例:

 

Check If Exists In Database

 

SELECT * FROM city WHERE OR

 

 

Check If Not Exists In Database

 

检查数据库查询是否有返回结果,如果有返回结果,则用例执行失败,否则执行成功,示例:

 

Check If Not Exists In Database

 

SELECT * FROM city WHERE and

 

 

Delete All Rows From Table

 

删除数据库中某张表中的全部数据,示例:

 

Delete All Rows From Table

 

World

 

 

Description

 

描述数据库的查询结果,示例:

 

@{result}

 

Description

 

SELECT * FROM city WHERE or

 

Log Many

 

@{result}      

 

 

 

 

Row Count

 

统计sql查询返回的记录数,示例:

 

${rowCount}

 

Row Count

 

SELECT * FROM city WHERE or

 

Log

 

${rowCount}

 

 

 

 

Row Count Is 0

 

检查sql查询返回的记录数是否为0,示例:

 

Row Count Is 0

 

SELECT * FROM city WHERE or

 

 

Row Count Is Equal To X

 

检查sql查询返回的记录数是否等于某个值,示例:

 

Row Count Is Equal To X

 

SELECT * FROM city WHERE or

 

1

 

 

Row Count Is Greater Than X

 

检查sql查询返回的记录数是否大于某个值,示例:

 

Row Count Is Greater Than X

 

SELECT * FROM city WHERE or

 

1

 

 

Row Count Is Less Than X

 

检查sql查询返回的记录数是否小于某个值,示例:

 

Row Count Is Less Than X

 

SELECT * FROM city WHERE or

 

1

 

 

Table Must Exist

 

判断数据库中表是否存在,示例:

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wpyffz.html