三、robotframework封装的关键字-数据库使用
1. 从数据库查询结果:
数据库连接:Connect To Database Using Custom Params 用法:Connect To Database Using Custom Params pymysql host='${base_ip}',user='root',passwd='aaaa',db='aaaa',port=3306,charset='utf8'
数据库查询:query 用法:@{db} query ${sql}
退出数据库:Disconnect From Database

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
2. 自定义定义数据库查询结果(自定义IP):
数据库连接:Connect To Database Using Custom Params 用法:Connect To Database Using Custom Params pymysql host='${ip}',user='${username}',passwd='${password}',db='${db_name}',port=3306,charset='utf8'
数据库查询:query 用法:${db} query select 字段 from 表 where 条件
退出数据库:Disconnect From Database
例子:

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
3.获得长度为N的相同值的列表
[Arguments] ${num_list} ${list_value} ${mode}=1
[Documentation] 例如:N为3,list_value为None,mode为1则生成一个列表为['None','None','None'],如果mode为2则生成[None,None,None]
${list} Create list
${num_list} evaluate range(0,${num_list})
: FOR ${i} IN @{num_list}
\ ${list2} run keyword if ${list_value}=='' evaluate ${list_value}.decode('utf-8')
\ ... ELSE set variable ${list_value}
\ ${string} run keyword if ${mode}==1 evaluate str(${list2})
\ ... ELSE set variable ${list2}
\ append to list ${list} ${string}
[Return] ${list}
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
4.生成随机手机号码
[Arguments] ${length}=8 @{num}
[Documentation] ${length}=8生成的手机号码位数,不包含开头的3位,默认8位,@{num}:自定义手机号开头三位
${result} evaluate random.choice(['130','133','187','159','180','177','150','156',@{num}])+"".join(random.choice("0123456789")for i in range(${length})) random
[Return] ${result}

----------------------------------------输出

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
5.生成随机字符串
[Arguments] ${num}
[Documentation] ${num}生成的位数,${result}返回的字符串
${result} evaluate "".join(random.sample(string.letters+string.digits,int(${num}))) random,string
[Return] ${result}

------------------------------------------输出

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
6.获取N位长度随机整数
[Arguments] ${n} ${type}=1
[Documentation] ${type}==1:默认等于1,返回字符串类型的随机数,等于2时返回整型的随机数,${n}为生成的字符串长度
--------------------------------------------------
${num} Set Variable ${${n}}
${min} Evaluate 10**(${num}-1) math
log ${min}
${max} Evaluate 10**($num)-${1} math
log ${max}
${result} Evaluate random.randint(${min},${max}) random
log ${result}
${result_string} Convert To String ${result}
${rand} Set Variable If ${type}==1 ${result_string} ${result}
[Return] ${rand}

三、robotframework封装的关键字-数据库使用的更多相关文章
- Robot Framework自动化测试(三)--- 封装系统关键字
之前对robotframework-ride了解的不多,后来知道了引入Selenium2Lirary库后可以做web UI自动化测试,但发现和python没啥关系,今天学习了封装系统关键字算是和pyt ...
- 一、JDBC的概述 二、通过JDBC实现对数据的CRUD操作 三、封装JDBC访问数据的工具类 四、通过JDBC实现登陆和注册 五、防止SQL注入
一.JDBC的概述###<1>概念 JDBC:java database connection ,java数据库连接技术 是java内部提供的一套操作数据库的接口(面向接口编程),实现对数 ...
- robot-framework 利用evaluate关键字生成随机数
robot-framework 利用evaluate关键字生成随机数 最近用RF(robot-framework简称)操作MangoDB,需要直接将数据写到数据库里,又不想每次写的数据完全相同,就想到 ...
- 封装JDBC操作数据库的方法
自己动手封装java操作数据库的方法: 一:目录结构 二:所需依赖的第三方jar包 这里只需引入mysql-connector-java-5.1.8-bin.jar,mysql数据库驱动jar包 三: ...
- Python面向对象三要素-封装(Encapsulation)
Python面向对象三要素-封装(Encapsulation) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.封装概述 将数据和操作组织到类中,即属性和方法 将数据隐藏起来,给 ...
- 使用Spring.net中对Ado.net的抽象封装来访问数据库
使用Spring.net中对Ado.net的抽象封装来访问数据库 Spring.NET是一个应用程序框架,其目的是协助开发人员创建企业级的.NET应用程序.它提供了很多方面的功能,比如依赖注入 ...
- 编写SqlHelper使用,在将ExecuteReader方法封装进而读取数据库中的数据时会产生Additional information: 阅读器关闭时尝试调用 Read 无效问题,解决方法与解释
在自学杨中科老师的视频教学时,拓展编写SqlHelper使用,在将ExecuteReader方法封装进而读取数据库中的数据时 会产生Additional information: 阅读器关闭时尝试调用 ...
- ajax的三次封装简单概况
原生ajax: readyState 准备状态 status 页面状态 ...
- [Java并发编程(三)] Java volatile 关键字介绍
[Java并发编程(三)] Java volatile 关键字介绍 摘要 Java volatile 关键字是用来标记 Java 变量,并表示变量 "存储于主内存中" .更准确的说 ...
随机推荐
- --解决Lock wait timeout exceeded; try restarting transaction
--解决Lock wait timeout exceeded; try restarting transaction select * from information_schema.innodb_t ...
- node.js安装后输入“node -v”提示'node' 不是内部或外部命令,也不是可运行的程序的解决方法
换个电脑,重新搭配环境的时候遇到的问题.node.js已经在官网进行下载安装了,但是VScode里面显示不是内部的命令,也不是可运行的程序 但是在cmd控制台还是能查到的 借助网上的方法进行了测试和调 ...
- PHP出现502解决方案
nginx 出现 502 有很多原因,但大部分原因可以归结为资源数量不够用,也就是说后端 php-fpm 处 理有问题,nginx 将正确的客户端请求发给了后端的 php-fpm 进程,但是因为 ph ...
- laravel5.8 表单验证
'name' => 'required|unique:posts|max:255', // posts 表名 源码 vendor\laravel\framework\src\Illuminat ...
- Qt Creator 4.9 发布
Qt Creator 4.8中引入了语言服务器协议支持,允许Qt Creator通过利用此标准轻松支持更多编程语言,使IDE和其他编程工具可以轻松地获得通用编程语言支持的交换格式.使用Qt Creat ...
- [转载]克服FPGA I/O引脚分配挑战--xilinx系列
转载走,放到自己的分类中好了 原文地址:I/O引脚分配挑战--xilinx系列">克服FPGA I/O引脚分配挑战--xilinx系列作者:方槍槍 http://www.eefocus ...
- 安装Python包报错——ReadTimeoutError
一.问题:安装python包的时候报错ReadTimeoutError——Read time out. 二.解决办法三种方法,一是切换下载源:二是下载相应平台的安装包后安装:三是下载源码编译安装: ...
- userdel 删除用户
userdel 删除用户 1.命令功能 userdel 删除指定用户及该用户的相关的文件. 2.语法格式 userdel option login 选项 选项说明 -f 强制删除用户账号,即使用户 ...
- Saving Tang Monk II HihoCoder - 1828 2018北京赛站网络赛A题
<Journey to the West>(also <Monkey>) is one of the Four Great Classical Novels of Chines ...
- faiss的简单使用
简介 faiss是为稠密向量提供高效相似度搜索和聚类的框架.由Facebook AI Research研发. 具有以下特性. 1.提供多种检索方法 2.速度快 3.可存在内存和磁盘中 4.C++实现, ...