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封装的关键字-数据库使用的更多相关文章

  1. Robot Framework自动化测试(三)--- 封装系统关键字

    之前对robotframework-ride了解的不多,后来知道了引入Selenium2Lirary库后可以做web UI自动化测试,但发现和python没啥关系,今天学习了封装系统关键字算是和pyt ...

  2. 一、JDBC的概述 二、通过JDBC实现对数据的CRUD操作 三、封装JDBC访问数据的工具类 四、通过JDBC实现登陆和注册 五、防止SQL注入

    一.JDBC的概述###<1>概念 JDBC:java database connection ,java数据库连接技术 是java内部提供的一套操作数据库的接口(面向接口编程),实现对数 ...

  3. robot-framework 利用evaluate关键字生成随机数

    robot-framework 利用evaluate关键字生成随机数 最近用RF(robot-framework简称)操作MangoDB,需要直接将数据写到数据库里,又不想每次写的数据完全相同,就想到 ...

  4. 封装JDBC操作数据库的方法

    自己动手封装java操作数据库的方法: 一:目录结构 二:所需依赖的第三方jar包 这里只需引入mysql-connector-java-5.1.8-bin.jar,mysql数据库驱动jar包 三: ...

  5. Python面向对象三要素-封装(Encapsulation)

    Python面向对象三要素-封装(Encapsulation) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.封装概述 将数据和操作组织到类中,即属性和方法 将数据隐藏起来,给 ...

  6. 使用Spring.net中对Ado.net的抽象封装来访问数据库

    使用Spring.net中对Ado.net的抽象封装来访问数据库     Spring.NET是一个应用程序框架,其目的是协助开发人员创建企业级的.NET应用程序.它提供了很多方面的功能,比如依赖注入 ...

  7. 编写SqlHelper使用,在将ExecuteReader方法封装进而读取数据库中的数据时会产生Additional information: 阅读器关闭时尝试调用 Read 无效问题,解决方法与解释

    在自学杨中科老师的视频教学时,拓展编写SqlHelper使用,在将ExecuteReader方法封装进而读取数据库中的数据时 会产生Additional information: 阅读器关闭时尝试调用 ...

  8. ajax的三次封装简单概况

    原生ajax:                readyState         准备状态                status             页面状态               ...

  9. [Java并发编程(三)] Java volatile 关键字介绍

    [Java并发编程(三)] Java volatile 关键字介绍 摘要 Java volatile 关键字是用来标记 Java 变量,并表示变量 "存储于主内存中" .更准确的说 ...

随机推荐

  1. luogu P4382 [九省联考2018]劈配

    luogu 我记得我第一次做这道题的时候屁都不会qwq 先考虑第一问,暴力是依次枚举每个人,然后从高到低枚举志愿,枚举导师,能选就选.但是可以发现前面的人选的导师可能会导致后面的人本来可以选到这个志愿 ...

  2. {经典}springmvc+mybatis+restful+webservice Jeesz分布式架构

    框架简介--主要定位于互联网企业架构,已内置企业信息化系统的基础功能和高效的代码生成工具,包括:系统权限组件.数据权限组件.数据字典组件.核心工具 组件.视图操作组件.工作流组件组件.代码生成等.采用 ...

  3. vue学习【四】vuex快速入门

    大家好,我是一叶,今天我们继续踩坑.今天的内容是vuex快速入门,页面传值不多的话,不建议vuex,直接props进行父子间传值就行,使用vuex就显得比较臃肿. 我们先预览一下效果,如图1所示. 图 ...

  4. python gRPC简单示例

    Ubuntu18.04安装gRPC protobuf-compiler-grpc安装 sudo apt-get install protobuf-compiler-grpc protobuf-comp ...

  5. 异步分布式队列Celery

    异步分布式队列Celery 转载地址 Celery 是什么? 官网 Celery 是一个由 Python 编写的简单.灵活.可靠的用来处理大量信息的分布式系统,它同时提供操作和维护分布式系统所需的工具 ...

  6. phpstorm配置总结

    phpstorm配合laravel框架作为项目开发,需要添加自动提示,减少查看文档的次数,本次使用的是idel-helper插件 在当前项目下 编辑composer.json文件文件,添加如下字符 & ...

  7. Java并发编程实战 第14章 构建自定义的同步工具

    状态依赖性 定义:只有满足特定的状态才能继续执行某些操作(这些操作依赖于固定的状态,这些状态需要等待别的线程来满足). FutureTask,Semaphroe,BlockingQueue等,都是状态 ...

  8. oracle 创建表的规则

    1.表明首字母 应该为字母 2.表名的最大长度为30个字符 3.不能使用oracle保留字和关键字来作表名 4.同一用户下的不同表不能具有相同的名称 5.可以使用下划线.数字和字母,但不能使用空格与单 ...

  9. CodeForces-598D(BFS,染色)

    链接: https://vjudge.net/problem/CodeForces-598D 题意: Igor is in the museum and he wants to see as many ...

  10. 设计模式来替代if-else

    前言# 物流行业中,通常会涉及到EDI报文(XML格式文件)传输和回执接收,每发送一份EDI报文,后续都会收到与之关联的回执(标识该数据在第三方系统中的流转状态).这里枚举几种回执类型:MT1101. ...