Robot Framework我们都知道,关键字现在是支持中文的。我们经常做的就是使用它们现成的关键字做一些操作然后命名成中文的关键字,那么自己创建的测试库如何直接使用中文呢。
在python的测试库中使用装饰器@keyword


首先我们要导入包 robot.api.deco的keyword

robot.api.deco.keyword装饰可用于创建想要的关键字名称
具体可以有两种常用的使用方式,其他的可以自己摸索

  • 直接是关键字名称
    @keyword('生成MD5')def md5(self,str):'''生成MD5:return:'''m = hashlib.md5()m.update(str.encode("utf8"))print(m.hexdigest())return m.hexdigest()
  • 把参数嵌入到关键字中
    @keyword('Multiply ${num1} by ${num2}')def Multiplication(self,num1,num2):return num1 * num2

上面两种方法我们在robot脚本中这样调用
首先要引入测试库,这个地方我们不在赘述,直接上调用部分的代码。

*** Settings ***
Library     RanTest
*** Test Cases ***
生成MD5${md5}      生成MD5     liuchamglog      ${md5}
A*B${C}    Multiply ${3} by ${4}log  ${C}
  • 最后我们运行看下结果:

作者:Riclue
链接:https://www.jianshu.com/p/94da6d9bed67
來源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

创建RF测试库之使用装饰器@keyword相关推荐

  1. 第十三:Pytest参数化-@pytest.mark.parametrize装饰器来实现数据驱动测试

    1.unittest单元测试框架使用DDT进行数据驱动测试,那么Pytest框架有没有数据驱动呢? 2.Pytest是使用@pytest.mark.parametrize装饰器来实现数据驱动测试的. ...

  2. [python 进阶] 第7章 函数装饰器和闭包

    文章目录 7.1 装饰器基础知识 7.2 Python何时执行装饰器 7.3 使用装饰器改进"策略" 7.4 变量作用域(global) 备注 -比较字节码(暂略) 7.5 闭包 ...

  3. Python 装饰器 函数

    Python装饰器学习(九步入门):http://www.cnblogs.com/rhcad/archive/2011/12/21/2295507.html 浅谈Python装饰器:https://b ...

  4. CHAR.VI 函数装饰器和闭包

    CHAR.VI 函数装饰器和闭包 函数装饰器用于在源码中"标记"函数,以某种方式增强函数的行为.这是一项强大的功能,但是若想掌握,必须理解闭包. nonlocal 是新近出现的保留 ...

  5. python 的类装饰器

    我们都知道python的函数有装饰器,那么类也有装饰器吗?有的,为什么没有呢,来看下代码吧 def out(args):def inner(cls):cls._args = argsreturn cl ...

  6. java设计模式之装饰模式_Java中的装饰器设计模式

    java设计模式之装饰模式 装饰器设计模式允许在运行时将附加职责或行为动态附加到对象. 它是一种结构模式,利用聚合来组合这些行为. 在本教程中,我们将学习实现装饰器模式. UML图: 让我们从装饰器模 ...

  7. Java中的装饰器设计模式

    装饰器设计模式允许在运行时将附加职责或行为动态附加到对象. 它是一种结构模式,利用聚合来组合这些行为. 在本教程中,我们将学习实现装饰器模式. UML图: 让我们从装饰器模式的UML表示开始: Con ...

  8. python response重头开始_你必须学写 Python 装饰器的五个理由

    你必须学写Python装饰器的五个理由 ----装饰器能对你所写的代码产生极大的正面作用 作者:Aaron Maxwell,2016年5月5日 Python装饰器是很容易使用的.任何一个会写Pytho ...

  9. Python 没有函数重载?如何用装饰器实现函数重载?

    摘要:Python 不支持函数重载.当我们定义了多个同名的函数时,后面的函数总是会覆盖前面的函数,因此,在一个命名空间中,每个函数名仅会有一个登记项(entry). 本文分享自华为云社区<为什么 ...

最新文章

  1. Alpha(5/10)
  2. ITK:过滤图像FilterImage
  3. Java 8的8个新功能
  4. vim 设置支持鼠标
  5. python连接redis哨兵_python连接redis sentinel集群
  6. 关于服务网关的几个问题
  7. 实数集r用区间表示为_七大实数理论与互推
  8. Ogre 1.7 SDKTRAY 初探
  9. JavaScript语言核心(五)-- 异步 async/await
  10. php代码给用户安装浏览器,PHP判断用户浏览器是否安装alexa工具条程序
  11. JS根据身份证号码获取性别
  12. java 日历选择天_如何从Java中的日历对象构建天,月,年的列表?
  13. 电商运营学习成长目录
  14. svn 服务器创建文件夹,svn服务器创建文件夹
  15. QT for Android串口开发
  16. python服务器性能测试工具locust使用指南
  17. Ceph分布式存储知识总结
  18. 尝试EFM32下的fatfs的使用
  19. win7虚拟机上安装visual studio2017社区版的相关问题以及解决办法
  20. 刘德华--1野性的自然

热门文章

  1. @Cacheable失效
  2. 鸿蒙的境界是什么,“鸿蒙”究竟为何物?扶桑树上的神祇,还是混沌的状态?...
  3. 使用Eclipse把java文件打包成jar
  4. 平均获客成本_互联网金融获客成本
  5. 时间序列的分析及滚动预测代码
  6. 前端自学之HTML(02)
  7. Java项目在Linux环境使用aspose把word转pdf乱码问题
  8. python输入第十个斐波那契数列,0,1,1,2,3,5,8,13,21,34
  9. win10下局域网不同电脑间如何实现文件共享?
  10. Windows无法安装,选中的磁盘为GPT分区形式 --解决办法