1.下载 DatabaseLibrary 库

  • pip install robotframework-databaselibrary

2.下载 pymysql 库(作为中间件)

  • pip install pymysql

3.工程中导入 DatabaseLibrary 库

4.数据测试常用关键字

  • Connect To Database  【dbapiModuleName=dbapiModuleName | dbName=dbName | dbUsername=dbUsername | dbPassword=dbPassword | dbHost=dbHost | dbPort=dbPort】

    • 连接数据库
  • Table Must Exist  【tableName】
    • 判断表存在
  • Check If Exists In Database  【sql】
    • 判断查询结果的数据存在
  • Check If Not Exists In Database【sql】
    • 判断查询结果的数据不存在
  • Delete All Rows From Table【tableName】
    • 删除表中所有数据
Connect To Database    pymysql    study    root    123456    192.168.1.110    3306    #连接study数据库
Table Must Exist student #判断student存在
Check If Exists In Database select * from student where name = "zhangsan" #判断查询结果数据存在
Check If Not Exists In Database select * from student where name = "zhengying" #判断查询结果数据不存在
Delete All Rows From Table student_copy #删除student_copy表中所有数据
  • Disconnect From Database

    • 断开数据库连接
  • Execute Sql Script    【sqlScriptFileName 】
    • 执行sql脚本文件
  • Execute Sql String  【sql】
    • 执行sql语句
Connect To Database    pymysql    study    root    123456    192.168.1.110    3306    #连接study数据库
Execute Sql Script C:/Users/Administrator/Desktop/sql.txt #通过脚本文件进行执行sql(注意转义)
Execute Sql String INSERT INTO student(name,age,class)VALUES("qian",23,3),("sun",20,1) #执行sql语句
  • Query  【sql】

    • 返回查询语句的结果
Connect To Database    pymysql    study    root    123456    192.168.1.110    3306    #连接study数据库
@{result}        Query select * from student where name = "lisi" #查询数据且返回查询结果
Log Many       ${result} #结果如下
20200312 15:20:10.798 : INFO : [(2, 'lisi', 19, '')]
  • Row Count     【sql】

    • 返回查询结果的总行数
Connect To Database    pymysql    study    root    123456    192.168.1.110    3306        #连接study数据库
${count}        Row Count select * from student #返回查询结果的总行数
log ${count}
  • Row Count Is 0    【sql】

    • 判断查询结果为 0 行
Connect To Database    pymysql    study    root    123456    192.168.1.110    3306        #连接study数据库
Row Count Is 0 select * from student where name = "lisi" #判断查询结果为 0 行数据,如果结果为 0 行数据则 pass,否则fail
  • Row Count Is Equal To X      【sql | numrows】

    • 判断查询结果数据 =X 行
  • Row Count Is Greater Than X      【sql | numrows】
    • 判断查询结果数据 >X 行
  • Row Count Is Less Than X      【sql | numrows】
    • 判断查询结果数据 <X 行
Connect To Database    pymysql    study    root    123456    192.168.1.110    3306        #连接study数据库
Row Count Is Equal To X select * from student where name = "lisi" 1 #判断查询结果数据为1行
Row Count Is Greater Than X select * from student where class = "" 1 #判断查询结果数据大于1行
Row Count Is Less Than X select * from student where class = "" 3 #判断查询结果数据小于3行

RF(数据库测试)的更多相关文章

  1. (转)学习使用Jmeter做压力测试(三)--数据库测试

    数据库测试 JMeter可以做为Web服务器与浏览器之间的代理网关,以捕获浏览器的请求和Web服务器的响应,这样就可很容易的生成性能测试脚本. 根据脚本,JMeter可通过线程组来模拟真实用户对Web ...

  2. 数据库测试DbUnit

    DBUnit 的设计理念就是在测试之前,备份数据库,然后给对象数据库植入我们需要的准备数据,最后,在测试完毕后,读入备份数据库,回溯到测试前的状态: 摘自:DbUnit入门实战 DBUnit官网:ht ...

  3. Visual Studio 单元测试之五---数据库测试

    原文:Visual Studio 单元测试之五---数据库测试 数据库的单元测试主要是测试数据库中的数据是否符合特定的条件,Visual Studio 2010支持下面几种数据的单元测试类型(Visu ...

  4. 利用jmeter进行数据库测试

    1.首先,用jmeter进行数据库测试之前,要把oracle和mysql的JDBC驱动jar包放到jmeter安装路径的lib目录下,否则会提示错误 2.添加一个线程组,如下图 3.接下来添加一个JD ...

  5. loadrunner 脚本开发-调用java jar文件远程操作Oracle数据库测试

    调用java jar文件远程操作Oracle数据库测试 by:授客 QQ:1033553122 测试环境 数据库:linux 下Oracle_11g_R2 Loadrunner:11 备注:想学ora ...

  6. 通过RF数据库查询中文字段结果正常显示的转换方法

    方法1:统一显示为中文 1.通过RF数据库查询中文字段结果格式:'\xba\xcb\xbc\xf5\xcd\xa8\xb9\xfd' 2.通过Decode Bytes To String进行gbk解码 ...

  7. #测试框架推荐# test4j,数据库测试

    # 背景 后端都是操作DB的,这块的自动化测试校验的话,是需要数据库操作的,当然可以直接封装方法来操作数据,那么有没有开源框架支持数据操作,让我们关注写sql语句?或者帮我们做mysql的断言呢? # ...

  8. 【转】学习使用Jmeter做压力测试(三)--数据库测试

    JMeter可以做为Web服务器与浏览器之间的代理网关,以捕获浏览器的请求和Web服务器的响应,这样就可很容易的生成性能测试脚本.根据脚本,JMeter可通过线程组来模拟真实用户对Web服务器做压力测 ...

  9. Laravel数据库测试的另一种方案-SQLite

    Laravel数据库测试 在测试方面,Laravel内置使用PHPUnit提供了非常方便的解决方案.而对于数据库增删改查的测试,要解决的一个很重要的问题就是如何在测试完成之后,恢复数据库的原貌,例如要 ...

  10. Oracle数据库测试和优化最佳实践: OTest介绍 (转)

    当前Oracle数据库最佳测试工具OTest *  Otest是用于Oracle数据库测试.优化.监控软件. *  Otest是免费提供给Oracle客户和广大DBA工程师使用的软件.由原厂技术专家王 ...

随机推荐

  1. IO操作与IO模型

    目录 一 .IO操作本质 二. IO模型 BIO – 阻塞模式I/O NIO – 非阻塞模式I/O IO Multiplexing - I/O多路复用模型 AIO – 异步I/O模型 三.同步I/O与 ...

  2. C语言 文件操作(二)

    1.fputc(); fputc 是 file output char 的所以,意思是向指定的文件中写入一个字符.fputc() 的用法为: int fputc ( int ch, FILE *fp ...

  3. PHP程序员的能力水平层次(一)

    前言 之前看过很多篇关于服务端工程师和PHP开发者的能力模型介绍,每篇都对能力有侧重点. 下面我们来详细谈谈以开发能力为基准点的PHP程序员的能力水平层次. 层层递进 1.功能开发 这个水平的程序员一 ...

  4. c++缓冲区 vBufferChar.hpp

    //vbuffer_char.hpp //vov #ifndef V_BUFFER_CHAR_HPP #define V_BUFFER_CHAR_HPP #include <iostream&g ...

  5. Wpf之HandyControls与MaterialDesign混用之DataGrid

    首先在App.Xaml引入相关资源 <Application.Resources> <ResourceDictionary> <ResourceDictionary.Me ...

  6. java实现图片的上传和展示

    一.注意事项: 1,该项目主要采用的是springboot+thymeleaf框架 2,代码展示的为ajax完成图片上传(如果不用ajax只需要改变相应的form表单配置即可) 二.效果实现: 1,页 ...

  7. 004-流程控制-C语言笔记

    004-流程控制-C语言笔记 学习目标 1.[掌握]关系运算符和关系表达式 2.[掌握]逻辑运算符和逻辑表达式 3.[掌握]运算符的优先级和结合性 4.[掌握]if-else if-else结构的使用 ...

  8. 如果我选择IT行业,会不会在几年,或者几年后被社会给淘汰??

    IT互联网各行业薪资占比,你能拿到多少?随着移动互联网时代的发展,IT行业的需求量也越来越大,而且每年都会新增,当然也会有淘汰. 人生如此之短,都不喜欢自己虚度光阴,也不希望自己所努力的东西成为历史, ...

  9. 二分例题 51nod

    例题1 1010 只包含因子2 3 5的数 http://www.51nod.com/Challenge/Problem.html#problemId=1010 K的因子中只包含2 3 5.满足条件的 ...

  10. vue2.x学习笔记(二十一)

    接着前面的内容:https://www.cnblogs.com/yanggb/p/12632730.html. 可复用性&结合-混入 基础 混入(mixin)提供了一种非常灵活的方式,来分发v ...