RF(数据库测试)
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(数据库测试)的更多相关文章
- (转)学习使用Jmeter做压力测试(三)--数据库测试
数据库测试 JMeter可以做为Web服务器与浏览器之间的代理网关,以捕获浏览器的请求和Web服务器的响应,这样就可很容易的生成性能测试脚本. 根据脚本,JMeter可通过线程组来模拟真实用户对Web ...
- 数据库测试DbUnit
DBUnit 的设计理念就是在测试之前,备份数据库,然后给对象数据库植入我们需要的准备数据,最后,在测试完毕后,读入备份数据库,回溯到测试前的状态: 摘自:DbUnit入门实战 DBUnit官网:ht ...
- Visual Studio 单元测试之五---数据库测试
原文:Visual Studio 单元测试之五---数据库测试 数据库的单元测试主要是测试数据库中的数据是否符合特定的条件,Visual Studio 2010支持下面几种数据的单元测试类型(Visu ...
- 利用jmeter进行数据库测试
1.首先,用jmeter进行数据库测试之前,要把oracle和mysql的JDBC驱动jar包放到jmeter安装路径的lib目录下,否则会提示错误 2.添加一个线程组,如下图 3.接下来添加一个JD ...
- loadrunner 脚本开发-调用java jar文件远程操作Oracle数据库测试
调用java jar文件远程操作Oracle数据库测试 by:授客 QQ:1033553122 测试环境 数据库:linux 下Oracle_11g_R2 Loadrunner:11 备注:想学ora ...
- 通过RF数据库查询中文字段结果正常显示的转换方法
方法1:统一显示为中文 1.通过RF数据库查询中文字段结果格式:'\xba\xcb\xbc\xf5\xcd\xa8\xb9\xfd' 2.通过Decode Bytes To String进行gbk解码 ...
- #测试框架推荐# test4j,数据库测试
# 背景 后端都是操作DB的,这块的自动化测试校验的话,是需要数据库操作的,当然可以直接封装方法来操作数据,那么有没有开源框架支持数据操作,让我们关注写sql语句?或者帮我们做mysql的断言呢? # ...
- 【转】学习使用Jmeter做压力测试(三)--数据库测试
JMeter可以做为Web服务器与浏览器之间的代理网关,以捕获浏览器的请求和Web服务器的响应,这样就可很容易的生成性能测试脚本.根据脚本,JMeter可通过线程组来模拟真实用户对Web服务器做压力测 ...
- Laravel数据库测试的另一种方案-SQLite
Laravel数据库测试 在测试方面,Laravel内置使用PHPUnit提供了非常方便的解决方案.而对于数据库增删改查的测试,要解决的一个很重要的问题就是如何在测试完成之后,恢复数据库的原貌,例如要 ...
- Oracle数据库测试和优化最佳实践: OTest介绍 (转)
当前Oracle数据库最佳测试工具OTest * Otest是用于Oracle数据库测试.优化.监控软件. * Otest是免费提供给Oracle客户和广大DBA工程师使用的软件.由原厂技术专家王 ...
随机推荐
- MySQL入门,第三部分,学会添加删除数据库
一.建立数据库 create database [if not exists] database_name [create_specification] 注意: 1.if not exists === ...
- 利用xposed hook Auto.js程序、解密其js脚本
一.原理 原理很简单就是hook auto.js的com.stardust.autojs.script.StringScriptSource类,当然前题你要逆向的auto.js程序dex没有加固,当然 ...
- golang开发:环境篇(七) Go mod 使用
Glide用的好好的,为什么要使用Modules 在 Go 1.11 中 ,官方加入package management tool,称为Go Modules.Go mod 没有出现之前,用的最多的包管 ...
- Elasticsearch系列---聚合查询原理
概要 本篇主要介绍聚合查询的内部原理,正排索引是如何建立的和优化的,fielddata的使用,最后简单介绍了聚合分析时如何选用深度优先和广度优先. 正排索引 聚合查询的内部原理是什么,Elastich ...
- Django 表单处理流程
Django 的表单处理:视图获取请求,执行所需的任何操作,包括从模型中读取数据,然后生成并返回HTML页面(从模板中),我们传递一个包含要显示的数据的上下文.使事情变得更复杂的是,服务器还需要能够处 ...
- shell-function 删除目录和文件
function sDelDirFile() { if [ "$#" -eq 1 ];then if [ -e "$1" ];then rm "$1& ...
- 【题解】LOJ2462完美的集合(树DP 魔改Lucas)
[题解]LOJ2462完美的集合(树DP 魔改Lucas) 省选模拟考这个??????????????????? 题目大意: 有一棵树,每个点有两个属性,一个是重量\(w_i\)一个是价值\(v_i\ ...
- kworkerds 挖矿木马简单分析及清理
公司之前的开发和测试环境是在腾讯云上,部分服务器中过一次挖矿木马 kworkerds,本文为我当时分析和清理木马的记录,希望能对大家有所帮助. 现象 top 命令查看,显示 CPU 占用 100%,进 ...
- svg如何设置中心点进行缩放
中心点设置:x = x+width/2 y=y+height/2缩放开始前后需要变换对应的位置,直接举例:<rect x="110" y="100" ...
- 发现一款手绘可视化神器!Python绘图还在用Matplotlib?out了 !
前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. PS:如有需要Python学习资料的小伙伴可以加点击下方链接自行获取htt ...