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. Git 常见问题 冲突原因分析及解决方案

    仅结合本人使用场景,方法可能不是最优的 1. 忽略本地修改,强制拉取远程到本地 主要是项目中的文档目录,看的时候可能多了些标注,现在远程文档更新,本地的版本已无用,可以强拉 git fetch --a ...

  2. 【python实现卷积神经网络】激活层实现

    代码来源:https://github.com/eriklindernoren/ML-From-Scratch 卷积神经网络中卷积层Conv2D(带stride.padding)的具体实现:https ...

  3. Cilium使用 (Cilium 3)

    使用k3s测试Cilium,安装步骤可以参见官方文档 Cilium安装使用 docker安装 使用如下命令安装最新版本的docker yum install -y yum-utils \ device ...

  4. unity3d之简单动画

    Unity3d中有两个关于动画的概念,Animation和Animator,看一下他们的创建和区别 1.创建一个物体后可以添加Animator和Animation组件如图所示 2.Animation和 ...

  5. Persona & User Scenario

    Persona: Tom:男,21岁,大学生,周末经常和同学们一起出去吃饭.唱歌.打球.郊游,期间会时不时拍一些照片以作纪念,长期积累的照片数量较多且内容繁杂,很少对照片进行整理: Alisa:女,2 ...

  6. 数据结构(C语言版)---栈

    1.栈:仅在表尾进行插入和删除操作的线性表.后进先出LIFO. 1)表尾端(允许插入和删除的一端)为栈顶,表头端(不允许插入和删除的一端)为栈底. 2)入栈:插入元素的操作.出栈:删除栈顶元素 3)栈 ...

  7. windows搭建Selenium

    安装 pip install -U selenium 安装浏览器驱动 用不同的浏览器需要安装不同的驱动,驱动放置的路径添加到path中. Firefox geodriver Chrome 下载驱动Ch ...

  8. js中string转map的方法

    例如: var r = "{'msg':'你好'}" ; var map = eval("("+r+")"); //r为String类型的数 ...

  9. BIOS时间与系统时间(windows/linux时间同步问题)

    写作动机 双系统是不少人喜欢的方式,但安装双系统之后一般会出现两个系统时间不一样的问题,刚开始用双系统的时候也没怎么在意,就是装上后在网上找找相关解决方法,复制粘贴代码完事儿.但是次数多了就有点烦了, ...

  10. 干货!Python中字符串、列表、元祖、字典,集合之间的转换

    一.字符串的转化 1.字符串转换成列表 字符串转换成list 的时候,str可以作为迭代对象,直接放入:也可以使用split对字符串进行切割.然后返回list s = '1a1b1c' print(l ...