如果您准备学习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自定义系统关键字的更多相关文章

  1. Robot Framework开发系统关键字详细

    本文的目的,是记录如何在rf下,开发属于自己的库函数(又称之系统关键字) 1.首先在..\Python27\Lib\site-packages目录下创建自定义库目录如Verification_Libr ...

  2. Robot Framework自动化测试(五)--- 开发系统关键字

    最近一直在用robot framework 做自动化测试项目,老实说对于习惯直接使用python的情况下,被框在这个工具里各种不爽,当然,使用工具的好处也很多,降低了使用成本与难度:当然,在享受工具带 ...

  3. Robot Framework分层、开发系统关键字

            开发系统关键字:http://www.cnblogs.com/fnng/p/4261293.html http://www.cnblogs.com/fnng/p/3969978.htm ...

  4. 解决方案:Resharper对系统关键字提示‘can not resolve symbol XXX’,并且显示红色,但是编译没有问题

    环境:Visual studio 2013 community update 4 + Resharper 8.2 + Windows 7现象:我的C#工程编译没有问题, 但是在代码编辑器中系统关键字显 ...

  5. 【转载】解决方案:Resharper对系统关键字提示‘can not resolve symbol XXX’,并且显示红色,但是编译没有问题

    环境:Visual studio 2013 community Update 4 + Resharper 8.2 + Windows 7 现象: 我的C#工程编译没有问题, 但是在代码编辑器中系统关键 ...

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

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

  7. 使用systemback制作Ubuntu自定义系统镜像和系统备份(抄)

    使用systemback制作Ubuntu自定义系统镜像和系统备份 2017年06月23日 16:17:51 BWBOT 阅读数:10714   原链接:https://community.bwbot. ...

  8. springmvc在处理请求过程中出现异常信息交由异常处理器进行处理,自定义异常处理器可以实现一个系统的异常处理逻辑。为了区别不同的异常通常根据异常类型自定义异常类,这里我们创建一个自定义系统异常,如果controller、service、dao抛出此类异常说明是系统预期处理的异常信息。

    springmvc在处理请求过程中出现异常信息交由异常处理器进行处理,自定义异常处理器可以实现一个系统的异常处理逻辑. 1.1 异常处理思路 系统中异常包括两类:预期异常和运行时异常RuntimeEx ...

  9. QT中自定义系统托盘的实现—c++语言为例

    将要介绍的是:QT中自定义系统托盘(systemtray)的一个Demo,希望能帮需要的读者快速上手. 前提假设是诸位已经知道QT中的signals .slot以及资源文件,所以关于这些不会再累述. ...

随机推荐

  1. tcpdump实用笔记

    前言:本文是关于tcpdump抓包的文章,是一篇对于本人而言比较实用轻便的文章,如您需要更详细的介绍,以下链接的文章相比最适合您,而且网络知识要非常扎实才能理解透彻: tcpdump详细介绍 简介:用 ...

  2. 新东方雅思词汇---10.1、(a)esthet

    新东方雅思词汇---10.1.(a)esthet 一.总结 一句话总结: 感觉 aesthetic 英 [i:sˈθetɪk]  美 [esˈθetɪk; ɛsˈθɛtɪk]  adj. 美的:美学的 ...

  3. Jenkins的安装和使用

    1.可以参考W3C----https://www.w3cschool.cn/jenkins/jenkins-5h3228n2.html 两种方式安装Jenkins a.安装包 b.Jenkins.wa ...

  4. C++(二十九) — new 和 delete

    1.基本用法,定义变量.数组.对象 class test { public: test(int a_, int b_) { a = a_; b = b_; cout << "构造 ...

  5. 神经网络总结(bp)

    一.从生物到计算机 神经细胞利用电-化学过程交换信号.输入信号来自另一些神经细胞.这些神经细胞的轴突末梢(也就是终端)和本神经细胞的树突相遇形成突触(synapse),信号就从树突上的突触进入本细胞. ...

  6. leetcode 849. Maximize Distance to Closest Person

    In a row of seats, 1 represents a person sitting in that seat, and 0 represents that the seat is emp ...

  7. commons-fileupload实现上传进度条的显示

    本文将使用   apache fileupload   ,spring MVC   jquery 实现一个带进度条的多文件上传, 由于fileupload 的局限,暂不能实现每个上传文件都显示进度条, ...

  8. [JS]JavaScript判断操作系统版本

    function detectOS() { var sUserAgent = navigator.userAgent; var isWin = (navigator.platform == " ...

  9. 【zznu-夏季队内积分赛3-G】2333

    题目描述 “别人总说我瓜,其实我一点也不瓜,大多数时候我都机智的一批“ 宝儿姐考察你一道很简单的题目.给你一个数字串,你能判断有多少个连续子串能整除3吗? 输入 多实例输入,以EOF结尾,每行一个数字 ...

  10. qt QTableWidget&&QTableView 导出数据到excel

    通常情况下,我们在开发过程中比较常用的方法是将表格的数据到处到excel文件.我也在这个点上头疼了很长时间,不过功夫不负苦心人,最终还是勉强达到效果,为了后面再次用到时不手忙脚乱现在将方法寄存在此,如 ...