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. matplotlib IdentityTransform(原地变换)

    2020-04-12 23:33:56 -- Edit by yangrayIdentityTransform继承于Affine2DBase类,它是一个高效实现原地变换的类.(不知道有什么用,变换前后 ...

  2. Android Google Play app signing 最终完美解决方式

    转载请标明出处:http://blog.csdn.net/zhaoyanjun6/article/details/105561341 本文出自[赵彦军的博客] 在 GooglePlay 创建 App ...

  3. 数据结构和算法(Golang实现)(17)常见数据结构-树

    树 树是一种比较高级的基础数据结构,由n个有限节点组成的具有层次关系的集合. 树的定义: 有节点间的层次关系,分为父节点和子节点. 有唯一一个根节点,该根节点没有父节点. 除了根节点,每个节点有且只有 ...

  4. Python分析数据难吗?某科技大学教授说,很难但有方法就简单

    用python分析数据难吗?某科技大学的教授这样说,很难,但要讲方法,主要是因为并不是掌握了基础,就能用python来做数据分析的. 所谓python的基础,也就是刚入门的python学习者,学习的基 ...

  5. JUC强大的辅助类讲解--->>>CountDownLatchDemo (减少计数)

    原理: CountDownLatch主要有两个方法,当一个或多个线程调用await方法时,这些线程会阻塞.其它线程调用countDown方法会将计数器减1(调用countDown方法的线程不会阻塞), ...

  6. 怎样才能拥有营销号生成器功能?python帮你实现

    前言 文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. PS:如有需要Python学习资料的小伙伴可以加点击下方链接自行获取http ...

  7. I - Fill The Bag codeforces 1303D

    题解:注意这里的数组a中的元素,全部都是2的整数幂.然后有二进制可以拼成任意数.只要一堆2的整数幂的和大于x,x也是2的整数幂,那么那一堆2的整数幂一定可以组成x. 思路:位运算,对每一位,如果该位置 ...

  8. react: typescript system params optimize

    1.system-params-service import paramCache from "../common/param-cache" import RequestPromi ...

  9. radio样式

    .radio{ position: relative; border: 1px solid #999; border-radius: 50%; width: 12px; height: 12px; b ...

  10. 进阶 Linux基本命令-2

    mkdir -p /a/b/c/d                 -p 循环创建目录yum install tree -y                                      ...