美文网首页
Robot Framework16-RF用例筛选

Robot Framework16-RF用例筛选

作者: 筱媛媛 | 来源:发表于2019-08-03 19:42 被阅读0次

    如何更好的筛选的测试用例呢?这个将是本篇文章讲述的重点,本篇将对RF用例筛选进行展开讲解,包括“根据名称(用例名称,套件文件名称,套件目录)选择测试用例,通过标签选择测试用例以及指定关键测试用例”。希望感兴趣的小伙伴可以坚持看下去同时欢迎提出宝贵的意见让我们一起进步!

    01:本节内容介绍
    RF用例筛选思维导图.png
    02:Robot Framework 的命令格式

    1)格式:robot [options] datasource

    • options:非必填参数项,可以指定具体用例或套件等
    • datasource:必填,表示要执行的测试套件文件或者目录的路径。可以是绝对路径,也可以是相对路径

    2)注意:不管是执行测试套件文件还是目录, RF认为本次测试的名字就是 data_sources 参数

    03:根据名称来选择测试用例

    1)指定测试套件目录递归执行该目录下包含的所有的子目录里面所有测试套件文件里面的用例

    robot task/tc/web测试
    robot --pythonpath . --suite 老师管理 tc
    

    2)指定测试套件文件:执行该文件中所有的测试用例

    robot tests.robot
    robot --pythonpath . --suite 添加课程 tc
    

    3)指定测试套件用例:执行指定文件中的一条测试用例

    robot --pythonpath . --test case01 tc
    

    4)同时执行多个测试套件目录/文件/用例:写多个数据源即可

    robot --pythonpath . tc1  tc2  tc3
    robot --pythonpath . --suite 老师管理 --suite 课程管理 tc #目录
    robot --pythonpath . --suite 添加老师 --suite 添加课程 tc #文件
    robot --pythonpath . --test case01 --test case02 tc     #用例
    

    5)通配符:可以用在套件上,也可以用在数据源上

    robot --pythonpath . --test tmp* tc
    robot --pythonpath . --suite 添加老师  tc*
    
    04:根据参数文件选择测试用例

    1)引入目的:有时候参数太长,我们通常可以使用参数文件,把所有的参数都放在参数文件中

    2)使用命令: robot -A 参数文件名

    3)参数文件如下(文件名为“args”):

    --pythonpath .
    --test *tc00001
    --test *tc00002
    --test *tc00003
    t1.robot
    

    4)执行命令时注意:如果参数文件中写了t1.robot命令行则不需要写,否则会执行2遍

    robot -A args.txt
    
    05:定义标签

    1)概述:我们可以给测试用例打上标签(Tag),这样在运行的时候可以通过标签指定要运行哪些用例

    • Force Tags强制标签,会把该套件里所有的用例都打上这个标签
    • Default Tags该套件里面所有没有[tags]设置的测试用例都具有了该tag

    2)测试用例可以有多个标签,我们根据任何一个标签都可以过滤到该用例

    3)__init__文件不可以定义默认标签

    4)定义测试套件文件标签:该套件里所有测试用例都具有了该tag

    *** Settings ***
    Force Tags  关键字     冒烟测试
    Default Tags    notag
    

    5)定义测试套件用例标签

    *** Test Cases ***
    case1
       [Tags]      正确的课程名
       addCourse   初中地理    初中地理基础知识     1
    

    6)定义测试套件目录标签:该目录里所有测试用例都具有了该tag

    *** Settings ***
    Force Tags  admin
    
    06:根据标签来选择测试用例

    1)执行包含标签'foo' 的用例

    robot --include foo tc
    

    2)执行不包含标签'foo' 的用例

    robot --exclude foo tc
    

    3)执行同时包含标签'one'和'two' 的用例

    robot --include oneANDtwo tc
    

    4)执行包含标签'one'或者'two' 的用例

    robot --include oneORtwo tc
    

    5)执行包含标签'one'不包含'two' 的用例

    robot --include oneNOTtwo tc
    

    6)注意模块搜索路径,比如:robot --pythonpath. --include foo tc

    07:指定关键测试用例

    1)概述:测试用例能够影响整个测试的执行是否通过,那就称为关键用例

    • 一般情况下默认所有用例都为关键用例即:缺省情况下RF执行测试时,每个测试用例都被视为关键测试用例
    • RF执行时,可以指定用例是否是关键测试(critical)用例
    • 如果本次测试中有关键测试用例未通过,那么整个测试就被视为测试不通过
    • 只要关键测试用例通过,就被视为测试通过

    2)关键测试用例参数:critical,简称(-c)

    3)非关键测试用例参数:noncritical,简称(-n)

    4)robot测试套件文件代码如下:

    *** Settings ***
    Force Tags  test
    Default Tags  notag
    *** Test Cases ***
    case 02:
       [Tags]  equal
       should be equal  abC    abc     unequal     false   True
       fail
    
    case 03:
       ${var}  convert to integer  32
       should be equal  ${var}     ${32}
       log to console   ${var}
    

    5)指定标签为notag为关键测试用例:只有notag标签属性为关键用例

    robot --critical notag tc
    

    5)指定标签为test为非关键测试用例:不具有test标签属性均为关键用例

    robot --noncritical test tc
    

    6)通常我们可以在关键用例中打上标签。比如 basic 、important,critical 表示是关键用例,这样就可以方便的直接标明用例是否为关键用例

    相关文章

      网友评论

          本文标题:Robot Framework16-RF用例筛选

          本文链接:https://www.haomeiwen.com/subject/gdlsdctx.html