RF自定义系统关键字
如果您准备学习Python,船长在这里给大家推荐几个学习Python的好地方:
1、廖雪峰官网
http://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fac9270762a000
2、菜鸟教程
http://www.runoob.com/python/python-tutorial.html
如果您有编程基础的话,会非常快的上手Python。
好,废话不多说,先看一段小代码:
#coding:utf-8
import json
class SeatMap(object):
ROBOT_LIBRARY_SCOPE = 'GLOBAL'
ROBOT_LIBRARY_VERSION = '0.1'
def __init__(self):
pass
def create_seatMap(self, name, password):
dict1 = {"name": name,
"password": password}
dict2 = {"type": "login"}
dict1.update(dict2)
return json.dumps(dict1)
现在我们来分析一下上面的(弱鸡(⊙o⊙)…)代码:
首先用import json导入json了库,在create_seatMap函数中我们定义了两个字典,然后通过字典的update方法将两个字典合并,最后用json库中的dumps方法将字典转换成字符串(没错,就是这么low,^_^)
这里需要注意的是
ROBOT_LIBRARY_SCOPE = 'GLOBAL'
ROBOT_LIBRARY_VERSION = '0.1'
因为RF要调用create_seatMap函数,所以需要加上这两句,这两句话做了两件事
第一就是声明该自定义关键字的范围,第二声明该库的版本。
好,简单的代码已经完成了,我们将上面的代码保存为SeatMap.py文件,注意,文件名要和类名相同。
将该py文件放到
这个文件夹下面,使suit调用这个库(类名):
然后在用例中直接调用函数即可:
因为我们在函数中定义了两个参数,所以这里需要传两个参数(需要传参的位置会显示为红色)
最后,运行这个用例:
我们在输出中看到定义的${login}变量已经返回了我们在代码中拼接的字符串。
这里提醒大家,自定义关键字在使用的时候,从robot运行传进的参数都会变成字符串类型,所以如果您准备做数学计算,则需要在代码中进行一下参数类型的转换。
微信公众号搜索“自动化测试实战”或扫描下方二维码添加关注~~~
RF自定义系统关键字的更多相关文章
- Robot Framework开发系统关键字详细
本文的目的,是记录如何在rf下,开发属于自己的库函数(又称之系统关键字) 1.首先在..\Python27\Lib\site-packages目录下创建自定义库目录如Verification_Libr ...
- Robot Framework自动化测试(五)--- 开发系统关键字
最近一直在用robot framework 做自动化测试项目,老实说对于习惯直接使用python的情况下,被框在这个工具里各种不爽,当然,使用工具的好处也很多,降低了使用成本与难度:当然,在享受工具带 ...
- Robot Framework分层、开发系统关键字
开发系统关键字:http://www.cnblogs.com/fnng/p/4261293.html http://www.cnblogs.com/fnng/p/3969978.htm ...
- 解决方案:Resharper对系统关键字提示‘can not resolve symbol XXX’,并且显示红色,但是编译没有问题
环境:Visual studio 2013 community update 4 + Resharper 8.2 + Windows 7现象:我的C#工程编译没有问题, 但是在代码编辑器中系统关键字显 ...
- 【转载】解决方案:Resharper对系统关键字提示‘can not resolve symbol XXX’,并且显示红色,但是编译没有问题
环境:Visual studio 2013 community Update 4 + Resharper 8.2 + Windows 7 现象: 我的C#工程编译没有问题, 但是在代码编辑器中系统关键 ...
- Robot Framework自动化测试(三)--- 封装系统关键字
之前对robotframework-ride了解的不多,后来知道了引入Selenium2Lirary库后可以做web UI自动化测试,但发现和python没啥关系,今天学习了封装系统关键字算是和pyt ...
- 使用systemback制作Ubuntu自定义系统镜像和系统备份(抄)
使用systemback制作Ubuntu自定义系统镜像和系统备份 2017年06月23日 16:17:51 BWBOT 阅读数:10714 原链接:https://community.bwbot. ...
- springmvc在处理请求过程中出现异常信息交由异常处理器进行处理,自定义异常处理器可以实现一个系统的异常处理逻辑。为了区别不同的异常通常根据异常类型自定义异常类,这里我们创建一个自定义系统异常,如果controller、service、dao抛出此类异常说明是系统预期处理的异常信息。
springmvc在处理请求过程中出现异常信息交由异常处理器进行处理,自定义异常处理器可以实现一个系统的异常处理逻辑. 1.1 异常处理思路 系统中异常包括两类:预期异常和运行时异常RuntimeEx ...
- QT中自定义系统托盘的实现—c++语言为例
将要介绍的是:QT中自定义系统托盘(systemtray)的一个Demo,希望能帮需要的读者快速上手. 前提假设是诸位已经知道QT中的signals .slot以及资源文件,所以关于这些不会再累述. ...
随机推荐
- 数据可视化——matplotlib(3)
导入相关模块 import matplotlib.pyplot as plt import numpy as np import pandas as pd 中文显示设置 在之前,绘图时均使用的是英文, ...
- CSS3:@font-face规则
前言 过去,Web设计师为了保证网站能够正常显示,只能使用“Web安全字体”,即每台机器都预装的字体.但Web安全字体有时并不好看... @font-face能够使得任何一台机器能够显示理想中的字体. ...
- HTML子页面保存关闭并刷新父页面
1.思路是子页面保存后,后台传递成功的js到前台. 2.js的原理是——子页面调用父页面的刷新 子页面 function Refresh() { window.parent.Re ...
- Java获取未知类型对象的属性
获取未知类型对象的属性通常有两种方式: 一是通过自定义注解的方式,通过获取被注解的属性从而获取属性的值,这种方式也是Spring参数注入的重要实现手段 二是通过反射获取属性的名称,通过属性名从而获取属 ...
- fio使用
关于lat(I/O completion latency).clat(complete latency).slat(summit latency): lat is the total latency. ...
- NEU 1497 Kid and Ants 思路 难度:0
问题 I: Kid and Ants 时间限制: 1 Sec 内存限制: 128 MB提交: 42 解决: 33[提交][状态][讨论版] 题目描述 Kid likes interest ques ...
- 前端url传递编码问题
JAVASCRIPT中URL 传递参数(特殊字符)解决方法及转码解码的介绍 有些符号在URL中是不能直接传递的,如果要在URL中传递这些特殊符号,那么就要使用他们的编码了.下表中列出了一些URL特殊符 ...
- C++实现设计模式之 —策略与简单工程结合
策略模式封装算法 // cash.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #include<iostream> #inc ...
- 使用VisualStudio读写NI FPGA板卡实例(基于FPGA Interface C API Generator)
实验平台说明:安装了NI LabVIEW 2015 32bit版本,安装了NI FPGA Interface C API Generator,安装了硬件PCIe-7842R:安装了Visual Stu ...
- Corosync+pacemaker实现集群的高可用
一.Corosync和pacemaker的了解: Corosync是集群管理套件的一部分,他在传递信息的时候可以通过一个简单的配置文件来定义信息传递的方式和协议等.也就是说,corosync是Mess ...