如果你还想从头学起Robot Framework,可以看看这个系列的文章哦!

https://www.cnblogs.com/poloyy/category/1770899.html

前言

  • RF用  :FOR 或 FOR 来实现循环,没有 While 循环
  • :FOR 是过时的循环写法,建议写 FOR
 

FOR 的栗子

忽略爆红,因为新的 FOR 关键字,插件还不能识别

测试结果

知识点

  • 如果  IN 后面跟的是一个 List 变量,必须用 @{list} 的格式哦!
  • 循环体内的语句需要缩进两个空格以上
  • 如果 IN 后面接的值太多,可以换行,需要通过 ... 来表示接着上一行的内容
  • 注意:  FOR  和  IN 都不能小写哦

:FOR 旧格式循环的栗子

可以看到没爆红啦,因为插件只支持旧格式...

测试结果

知识点

  • 和 FOR 不同,不需要在循环结束后写 END
  • 但重点来了:循环体内,每一行开头都需要写 \ 【因为在RF 3.2 中, :FOR  不再起作用,如果要支持旧格式,就需要 \ 进行转义
  • 注意::FOR 可以小写,但是 IN 不可以(官网说 IN 也可以小写,但是试了一遍不可以哦)

range 的用法

在Python 中,我们有常用的  range() 方法,RF 也有类似的用法

测试结果

enumerate 的用法

在 Python 中,有 enumerate() 函数,遍历列表时可以追踪每个元素的索引位置;在 RF 中通过 IN ENUMERATE 关键字来实现类似的效果

测试结果

知识点

  • IN ENUMERATE 是连在一起用的哦,中间最多一个空格,并且是大小写敏感的,不可以写成小写!
  • 使用 IN ENUMERATE ,需要用单独的一个变量去接住索引值,如 ${index}
  • 如果只用一个变量的话(如第三个栗子),那么每次循环返回的就是一个列表,第一个元素就是索引值,可以通过下标 [0] 去获取;后面的值就是列表的值

遍历 Dict 变量

测试结果

知识点

  • 循环 Dict 变量时,可以通过 ${key} 和 ${value} 分别获取每次循环的键和值
  • IN ENUMERATE 也可以获取键值对的索引值,但起始值是 1

栗子二:只用一个 ${item} 来获取键值对

测试结果

知识点

  • 如果只用一个 ${item} 变量来获取键值对的话,它将是一个键值对列表(只有两个值), ${item}[0] 是键, ${item}[1] 是值
  • 再加上 IN ENUMERATE 的话,它就是一个索引+键值对列表(有三个值), ${item}[0] 是索引值

退出循环的栗子

相当于 Python 里面的  break ;退出循环有两个关键字

  1. exit for loop:强制退出循环
  2. exit for loop if:有条件的退出循环

测试结果

知识点

  • 如果要使用 exit for loop  时,我们可以借助 run keyword if 或者 run keyword unless
  • 凡是关键字有  if ,它后面可以直接跟判断表达式

继续循环的栗子

相当于 Python 里面的  continue ;继续循环有两个关键字

  1. Continue For Loop
  2. Continue For Loop If

测试结果

Robot Framework(13)- RF 循环的详细使用的更多相关文章

  1. Robot Framework使用For循环

    1.普通的For循环 在一个普通的For循环中,循环开始的关键字是 :FOR ,其中的:用于与一般关键字做区分,对于循环结构体内的每一行,使用 \ 作为改行的行首关键字.对于循环中的变量,可以在 IN ...

  2. Robot framework(RF)学习基础

    1.框架特点 2.安装 3.基本内容 RF框架是通用的测试框架,一直由诺西网络维护. 易于使用 采用表格法 可以使用关键字驱动,数据驱动和行为驱动开发完成.(keyword-driven,data-d ...

  3. Robot Framework:RF中对时间操作的datetime库常用关键字

    [转自:http://blog.csdn.net/r455678/article/details/52993765] 1.对固定日期进行操作,增加或减去单位时间或者时间段 2.对两个时间段进行操作 3 ...

  4. Robot framework(RF) Builti,Screenshot和Collections标准库介绍

    1.1  Builti标准类库 在学习一门编程语言的时候,大多教材都是从打印“hello world”开始.我们可以像编程语言一样来学习Robot Framework.虽然通过RIDE 提供“填表”一 ...

  5. 【Robot Framework】---- Robot Framework简介、特点、RIDE

    Robot Framework简介.特点.RIDE 一.简介.特点. Robot Framework是一款python编写的功能自动化测试框架.具备良好的可扩展性,支持关键字驱动,可以同时测试多种类型 ...

  6. Robot Framework操作

    Robot Framework 介绍 RobotFramework是一款基于python的开源自动化测试框架,遵守Apache License 2.0协议,在此协议下所有人都可以免费开发和使用.因为R ...

  7. Robot Framework与Web界面自动化测试学习笔记:简单例子

    假设环境已经搭建好了.这里用RIDE( Robot Framework Test Data Editor)工具来编写用例.下面我们对Robot Framework简称rf. 我们先考虑下一个最基本的登 ...

  8. Robot Framework学习笔记(三)------常用关键字介绍

    下面关键字全部由 Builtin 库提供,Builtin 为 Robot Framework 标准类库.Builtin库提供常用的关键字 1.log log 关键字就是编程语言里的"prin ...

  9. Robot Framework常用关键字介绍

    常用关键字介绍 在学习一门编程语言的时候,大多教材都是从打印“hello world”开始.我们可以像编程语言一样来学习 Robot Framework.虽然通过 RIDE 提供“填表”一样的写测试用 ...

随机推荐

  1. codeforce 266c Below the Diagonal 矩阵变换 (思维题)

    C. Below the Diagonal You are given a square matrix consisting of n rows and n columns. We assume th ...

  2. 【面试题】String类、包装类的不可变性

    不可变类的意思是创建该类的实例后,该实例的实例变量是不可改变的.Java提供的8个包装类和String类都是不可变类.因此String和8个包装类都具有不可变性. 就拿String类来说,通过阅读St ...

  3. Java——异常那些事

    异常的基本定义 异常情形是指阻止当前方法或者作用域继续执行的问题.在这里一定要明确一点:异常代码某种程度的错误,尽管Java有异常处理机制,但是我们不能以“正常”的眼光来看待异常,异常处理机制的原因就 ...

  4. E. Count The Blocks(找数学规律)

    \(\color{Red}{先说一下自己的歪解(找规律)}\) \(n=1是答案是10\) \(n=2时答案是180\) \(n=3时模拟一下,很容易发现答案是2610\ \ 180\ \ 10\) ...

  5. linux gdb快速入门教程

    文章目录 前言 常用指令概览 开始使用gdb 一个完整流程一般所需步骤 1 加载程序 2 查看 2.1 查看函数 3 设置断点 3.1 根据函数名设置断点 3.2 根据程序位置(第几行) 4 运行程序 ...

  6. CF#214 C. Dima and Salad 01背包变形

    C. Dima and Salad 题意 有n种水果,第i个水果有一个美味度ai和能量值bi,现在要选择部分水果做沙拉,假如此时选择了m个水果,要保证\(\frac{\sum_{i=1}^ma_i}{ ...

  7. 设计模式之GOF23中介者模式

    中介者模式Mediator 场景:公司中各个部门需要交互,通过中介总经理进行交互 核心: 如果一个系统中对象之间的联系成网状结构,对象之间多对多,将导致关系极其复杂,这些对象统称为“同事关系” 我们可 ...

  8. [UVA Live 12931 Common Area]扫描线

    题意:判断两个多边形是否有面积大于0的公共部分 思路:扫描线基础. #pragma comment(linker, "/STACK:10240000") #include < ...

  9. [whu1568]dp优化

    http://acm.whu.edu.cn/land/problem/detail?problem_id=1568 思路:先将所有数分解,得到2,3,5,7的个数,转化为用这些2,3,5,7" ...

  10. UDP编程中的connect

    标准的udp客户端开了套接口后,一般使用sendto和recvfrom函数来发数据,最近看到ntpclient的代码里面是使用send函数直接法的,就分析了一下,原来udp发送数据有两种方法供大家选用 ...