1.安装Database-Library

输入命令:pip install robotframework_databaselibrary

2.添加Database的Library

    3.实例

*** Test Cases ***
查询单条数据
${data} create dictionary shopCode=xxx coordinate=
${response} Rest.Get /api/shop/current.json ${data} form ${hosts["weidian"]}
Connect To Database Using Custom Params pymysql host='115.29.xx.xxx', port=3306, user='xx', passwd='xxx', db='test', charset= 'utf8'
${name} query select nickname from authshop where code='xxx'
log ${response["data"]["shop"]["shopName"]}
should be equal ${response['data']['shop']['shopName']} ${name[0][0]}
log ${name[0][0]} 查询多条数据 数据库中存在
#Check If Exists In Database
${data} create dictionary shopCode=xxx coordinate=
${response} Rest.Get /api/shop/current.json ${data} form ${hosts["weidian"]}
Connect To Database Using Custom Params pymysql host='115.29.xx.xx', port=3306, user='test', passwd='xxx', db='test', charset= 'utf8'
Check If Exists In Database select nickname from authshop where code='xxx' 数据库中不存在
#Check If Not Exists In Database
${data} create dictionary shopCode=xxx coordinate=
${response} Rest.Get /api/shop/current.json ${data} form ${hosts["weidian"]}
Connect To Database Using Custom Params pymysql host='115.29.xx.xxx', port=3306, user='xx', passwd='xx', db='test', charset= 'utf8'
Check If Exists In Database select nickname from authshop where code='xxx' 查询
#Description
${data} create dictionary shopCode=xxx coordinate=
${response} Rest.Get /api/shop/current.json ${data} form ${hosts["weidian"]}
Connect To Database Using Custom Params pymysql host='115.29.xx.xxx', port=3306, user='xxx', passwd='xxx', db='test', charset= 'utf8'
${qeeryResults} query select nickname from authshop where code='xxx'
log ${qeeryResults} 返回查询结果总行数
#Row Count
${data} create dictionary shopCode=xxx coordinate=
${response} Rest.Get /api/shop/current.json ${data} form ${hosts["weidian"]}
Connect To Database Using Custom Params pymysql host='115.29.xx.xxx', port=3306, user='xxx', passwd='xxx', db='xxx', charset= 'utf8'
${qeeryResults} row count select shop_code from authshop_relation where site_id=''
log ${qeeryResults}

 4.api详情

API 参数 说明
Check If Exists In Database 查询语句 数据库中存在:存在,则为PASS,不存在,则为FAIL
Check If Not Exists In Database 查询语句 数据库中不存在:不存在,则为PASS,存在,则为FAIL
Connect To Database dbapiModuleName=None, dbName=None, dbUsername=None, dbPassword=None, dbHost=localhost, dbPort=5432, dbConfigFile=./resources/db.cfg 连接数据库配制信息,通过配制各项属性完成
Connect To Database Using Custom Params dbapiModuleName=None, db_connect_string= 连接数据库配制信息,通过db_connect_string来传递。如database='my_db_test', user='postgres', password='s3cr3t', host='tiger.foobar.com', port=5432
Delete All Rows From Table 表名 删除数据库中表的所有行:删除成功,则PASS;失败,则Fail
Description 查询语句 返回查询语句的结果,内容格式为: [Column(name='id', type_code=1043, display_size=None, internal_size=255, precision=None, scale=None, null_ok=None)] [Column(name='first_name', type_code=1043, display_size=None, internal_size=255, precision=None, scale=None, null_ok=None)] [Column(name='last_name', type_code=1043, display_size=None, internal_size=255, precision=None, scale=None, null_ok=None)]
Disconnect From Database 断开数据库链接
Execute Sql Script SqlScriptFileName 执行脚本文件。SqlScriptFileName物理路径+FileName。
Execute Sql String SqlString 执行Sql语句
Query 查询语句 返回查询语句的查询结果
Row Count 查询语句 返回查询语句的查询结果行总数
Row Count Is 0 查询语句 查询语句的查询结果行总数:为0,则PASS;非0,则FAIL
Row Count Is Equal To X 查询语句,X

查询语句的查询结果行总数:为X,则PASS;非X,则FAIL

X,为预期的查询结果行数,第二个需要传递的参数

Row Count Is Greater Than X 查询语句,X

查询语句的查询结果行总数:大于X,则PASS;小于或等于X,则FAIL

X,为预期的查询结果行数,第二个需要传递的参数

Row Count Is Less Than X 查询语句,X

查询语句的查询结果行总数:大于X,则PASS;小于或等于X,则FAIL

X,为预期的查询结果行数,第二个需要传递的参数

Table Must Exist 表名 表名必须存在:存在,则PASS;不存在,则FAIL

5.实例二

    #Connect To Database Using Custom Params:使用参数来连接数据库    pymysql:连接的数据库     charset=‘utf8’解决中文显示成???的问题
Connect To Database Using Custom Params pymysql host=‘115.29.10.xxx’, port=3306, user=‘xxx’, passwd=‘xxx’, db=‘xxx’,charset=‘utf8’
#使用Query方法来执行"select name from wx_account_detail where type=0”,并将查询的结果返回对变量@{name}
@{name} query select name from wx_account_detail where type=0
#循环获取多条记录的值,并打印
: FOR ${i} IN RANGE 0 len(@{name})
\ log @{name}[${i}]

robot framework学习笔记之七—连接mysql数据库的更多相关文章

  1. openresty 学习笔记四:连接mysql和进行相关操作

    openresty 学习笔记四:连接mysql和进行相关操作 毕竟redis是作为缓存,供程序的快速读写,虽然reidis也可以做持久化保存,但还是需要一个做数据存储的数据库.比如首次查询数据在red ...

  2. MySQL学习(一)——Java连接MySql数据库

    MySQL学习(一)——Java连接MySql数据库 API详解: 获得语句执行 String sql = "Insert into category(cid, cname) values( ...

  3. robot framework学习笔记2

    声明:本笔记都只是自己根据大牛虫师的robot系列文档学习记录的,学习的话还请移步虫师博客:https://www.cnblogs.com/fnng/ 非常感谢大牛的分享,带小白一步一步入门   F5 ...

  4. django学习-10.django连接mysql数据库和创建数据表

    1.django模型 Django对各种数据库提供了很好的支持,包括:PostgreSQL.MySQL.SQLite.Oracle. Django为这些数据库提供了统一的调用API. 我们可以根据自己 ...

  5. Robot Framework学习笔记(三)------常用关键字介绍

    下面关键字全部由 Builtin 库提供,Builtin 为 Robot Framework 标准类库.Builtin库提供常用的关键字 1.log log 关键字就是编程语言里的"prin ...

  6. python学习笔记之——操作mysql数据库

    Python 标准数据库接口为 Python DB-API,Python DB-API为开发人员提供了数据库应用编程接口. Python 数据库接口支持非常多的数据库,你可以选择适合你项目的数据库: ...

  7. robot framework学习笔记之二———变量

    Robot Framework的变量分为标量, 列表和字典, 分别使用语法格式 ${SCALAR}, @{LIST} 和 &{DICT} 来定义. 此外, 环境变量可以直接使用语法 %{ENV ...

  8. Python学习笔记9-Python 链接MySql数据库

    Python 链接MySql数据库,方法很简单: 首先需要先 安装一个MySql链接插件:MySQL-python-1.2.3.win-amd64-py2.7.exe 下载地址:http://dev. ...

  9. Robot Framework学习笔记(十一)------ 分层设计

    以百度搜索为例,如果我们需要写5个不同关键字搜索的用例.如果没有分层的思想,那么我们需要写5个用例,并且每个用例都需要重复写打开浏览器.输入关键字.点击按钮.关闭浏览器的步骤.如果使用Robot Fr ...

随机推荐

  1. mapreduce of hadoop

    [mapreduce of hadoop] 1. MapReduce作业(Job)是客户端想要执行的一个作单元, 它包括: 输入数据, MapReduce程序, 配置信息. 2. Hadoop将作业成 ...

  2. Linux基石【第一篇】VMware上安装Centos及配置

    一.安装VMware软件 首先,下载个VMware软件,直接百度:VMware,然后找到可以下载的就可以 然后按步骤安装即可,安装完后,双击打开 二.安装Centos系统 打开VMware虚拟机,然后 ...

  3. Makefiles in Linux

    http://www.codeproject.com/Articles/31488/Makefiles-in-Linux-An-Overview

  4. c语言技术课第一次作业

    读邹欣老师博客关于师生关系有感 1)大学和高中最大的不同是没有人天天看着你,请看大学理想的师生关系是?有何感想? 答:    在邹欣老师博客中我看到邹欣老师列举了很多师生关系的类型,把这种关系比喻成很 ...

  5. iOS 越狱Keynote

    [iOS Keynote] 1.2009年暴露的IKee病毒是iOS上公开的第一款蠕虫病毒,它会感染那些已经越狱并且安装了SSH,但是又没有更改其默认root密码"alpine"的 ...

  6. idea注释字体倾斜的解决办法

    File-->Settings-->Editor--> Color Scheme-->Language Defaults-->Comments-->Line con ...

  7. Gym 101201G Maximum Islands (最大独立集)

    题意:给定一个图,L代表陆地,W代表水,C表示不确定,问你最多有多少岛. 析:首先给定的L周围必须是是W,只有这样才是最优的,因为如果是L,那么还得有另外的W来包围,不是最优的,那么剩下的就剩下C了, ...

  8. 从Objective-C到Swift,你必须会的(二)组合options

    用过Options这个东西的人都知道,几个竖线就把这些值都和到一起了.比如: + (NSStringDrawingOptions)combine{ return NSStringDrawingTrun ...

  9. B-spline Curves 学习之B样条基函数计算实例(3)

    B-spline Basis Functions: Computation Examples 本博客转自前人的博客的翻译版本,前几章节是原来博主的翻译内容,但是后续章节博主不在提供翻译,后续章节我在完 ...

  10. XXX 不是当前用户的有效责任,请联系您的系统管理员

    EBS中,有时进入一些基于OA Framework 的Web页面时,会出现这种现象: XXX  不是当前用户的有效责任,请联系您的系统管理员 ( or: xxx is not a valid resp ...