03:robotframework 认识测试库

 

 

 

image.png

 

Tips:

关键字大小写不敏感

测试库搜索路径和python程序一致,sys.path

 

01:python创建关键字,在RF中导入

python文件(mylib3.py)

 

import os,sys

def  opencalc():
    os.system('calc')

def openmaspaint():
    os.system('mspaint')

def printarg(*args,**kwargs):
    if len(args)==0:
        print('NO args')
    else:
        print('args are')
        for one in args:
            print(repr(one))
    print('----')

def returnlist():
    return [1,2,3,4]
def returndict():
    return {
        'ele1':'male',
        'ele2':'female'
    }
def testloop():
    list1=[1,2,3]
    for i in range(9):
        print(i)

if __name__ == '__main__':
    openmaspaint()

在RF使用python关键字(同一个目录下)

 

*** Settings ***
Library  mylib3

*** Test Cases ***
测试1
      opencalc

此时报错:

image.png

在path路径下找导入的模块,此时没有mylib3

手动添加path命令:

image.png

把当前模块加入到搜索路径中,. 表示当前目录

 

02:python创建的关键字,带有参数, 传入RF中

 

*** Settings ***
Library  mylib3

*** Test Cases ***
测试1
      printarg   hello
      printarg   123     #结果显示‘123’

报告结果

image.png

怎样显示整数类型呢

 

*** Settings ***
Library  mylib3

*** Test Cases ***
测试1
      printarg   hello
    ①#借助关键字返回整数
      ${var}  convert to integer  123
      printarg   ${var}
    ②#括号内部会根据python语法进行计算
    ${var}  convert to integer  123
     printarg  ${123}
      结果 123
   ③或者 printarg  ${123+123}
    结果246
    
    返回列表
    ${list}  returnlist
    printarg   ${list}
    结果 [1,2,3,4]
    #列表取值
    {list}  returnlist
    printarg   ${list[0]}
     结果 1 
                 
     返回字典-取值
      ${dict} returndict
       printarg ${dict['elel']}

结果

image.png

03:传入list和dict类型

 

#用list类型进行传参--将列表内部的元素展开进行传递,传递的是多个
printarg @{list}
#传值
printarg @{list}[0]

结果:

image.png

 

#用dict类型进行传参--将字典内部的键值对展开进行传递,传递的是多个
printarg &{list}
#取值
printarg &{list}[elel]--不加引号

结果:
image.png

 

总结

04:循环

RF用  :FOR来实现循环

遍历list变量

IN RANGE 的用法

 

      ${list}    create list         FOR    ${animal}  IN   @{list}
           log to console  ${animal}
           log to console  testloop
      END  #循环体结束标志
      log to console  循环外面
#循环多次
      FOR    ${animal}  IN RANGE   10

 

05:放在不同目录下

image.png

 

 

 

 

 

我是kelly-凯莉 每天努力一点点,幸运就多一点点
原文地址:https://www.cnblogs.com/kelly11/p/12688310.html