三、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 变量,并表示变量 "存储于主内存中" .更准确的说 ...
随机推荐
- luogu P1587 [NOI2016]循环之美
传送门 首先要知道什么样的数才是"纯循环数".打表可以发现,这样的数当且仅当分母和\(k\)互质,这是因为,首先考虑除法过程,每次先给当前余数\(*k\),然后对分母做带余除法,那 ...
- java复习(1)
这几天开学,很多知识点还很生疏,这两天先把java基础复习一下,有段时间没有写博客了,今天就先谈谈进制转换吧. 1.二进制数的原码,补码和反码 1):对于正数的原码,补码和反码均是相同的,这里不讨论了 ...
- vue-cli常用插件安装教程
1.安装sass npm i sass-loader node-sass --save-dev 2.安装stylus cnpm install stylus --save-dev cnpm insta ...
- php框架之laravel
常见问题: 1. 访问网站500错误 这是因为laravel的缓存路径没有找到 laravel缓存文件路径是在 config/cache.php中设置,默认存在storage文件夹中 解决:需要保证s ...
- 集合类Hash Set,LinkedHashSet,TreeSet
集合(set)是一个用于存储和处理无重复元素的高效数据结构.映射表(map)类似于目录,提供了使用键值快速查询和获取值的功能. HashSet类是一个实现了Set接口的具体类,可以使用它的无参构造方法 ...
- linux下 设置php的环境变量 php: command not found
在自己的根目录进行运行phpinfo(); 查看php的根目录. 假如自己查询的目录是/www/wdlinux/apache_php-5.6.21/bin, 查询完成后,先进入linux目录查 ...
- js 一些小技巧
Javascript 中的 绑定事件 on $(document).on("事件","元素","方法"): Js 定时方法 1.setTim ...
- 牛客假日团队赛5 K 金币馅饼 (DP 基础题)
链接:https://ac.nowcoder.com/acm/contest/984/K 来源:牛客网 金币馅饼 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32768K,其他语言 ...
- Linux安装redis,启动配置不生效(指定启动加载配置文件)
一.今天有个同学问我,为什么明明安装了redis,修改了配置,启动的时候,配置还是不生效.如下图是安装后的redis文件图. 二.想加载上图中的redis.conf,进入到src中寻找到启动文件red ...
- nfs存储服务实时同步
一.NFS简介 NFS(Network File System)即网络文件系统,它允许网络中的计算机之间通过网络共享资源.将NFS主机分享的目录,挂载到本地客户端当中,本地NFS的客户端应用可以透明地 ...