RF中for循环
robotframework支持FOR循环语句,语法和Python的语法基本相同,但robotframework中,“FOR”关键字前面需要增加一个“:”,写成“:FOR”,其它与Python的语法相同。
1.FOR IN
这种结构,循环的次数由“IN”关键字后面的list变量个数控制。示例如下:

运行结果:

这个例子中,“IN”后面直接写了3个常量,则表示运行三次。每个循环${n}被依次赋予3个常量中的1个。当然“IN”后面也可以写一个List变量,代码修改如下:

效果是一样的。
2.FOR IN RANGE
这种写法更常用一些。“IN RANGE”后面,跟一个整数型的数字的范围。循环的次数受数字的范围控制。示例如下:

运行结果:

从结果我们可以看出,${n}的值从3开始,一直被赋值到4,循环2次。“IN RANGE”后面也可以只写一个数字,表示范围的下限默认是0。示例如下:

运行结果:

以上两种写法,步长默认步长都是1。我们也可以修改步长,示例如下:

运行结果:

这个例子中的步长为10。
3.Exit For Loop 退出循环
RF也提供了退出循环的语句——Exit For Loop。遇到这个语句,脚本将无条件提出循环。示例如下:

运行结果如下:
20190910 16:03:22.890 : INFO : @{list} = [ ]
20190910 16:03:23.011 : INFO : Exiting for loop altogether.
20190910 16:03:23.012 : INFO : [0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48, 50]

运行结果如下:

${n}被赋值到4,触发了Exit For Loop语句而推出了循环。
4.Exit For Loop If 满足条件后退出循环

运行结果如下:
20190910 16:03:22.890 : INFO : @{list} = [ ]
20190910 16:03:23.011 : INFO : Exiting for loop altogether.
20190910 16:03:23.012 : INFO : [0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48, 50]

运行结果如下:

5.在循环中使用continue,终止单个循环
Continue For Loop If

Continue For Loop

运行结果都如下:

6.For in enumerate循环
有些时候需要知道当前循环中的循环位置的index编号,此时可以使用FOR index … IN ENUMERATE …关键字。在取index编号时,固定使用 ${index} 作为变量名,例如

运行结果为

7.For in zip 循环
对于有些测试来说,可能会用到多个列表的数据,在循环中需要对这些数据进行组合使用。Robot Framework提供了一个叫做For-in-zip的关键字,该关键字来自于python内置的zip函数,可用于对列表进行组合。例如

这里注意,我们在定义一个列表变量时,可以使用${列表名},也可以使用@{列表名},
而在for-in-zip循环中使用该关键字时,只能使用${列表名}。执行测试用例,结果如下:

RF中for循环的更多相关文章
- rf中的条件判断与循环
条件判断 run keyword if condition name *args ... ELSE IF conditon name *args ...ELSE name *args conditio ...
- Linux centosVMware 自动化运维Ansible介绍、Ansible安装、远程执行命令、拷贝文件或者目录、远程执行脚本、管理任务计划、安装rpm包/管理服务、 playbook的使用、 playbook中的循环、 playbook中的条件判断、 playbook中的handlers、playbook实战-nginx安装、管理配置文件
一.Ansible介绍 不需要安装客户端,通过sshd去通信 基于模块工作,模块可以由任何语言开发 不仅支持命令行使用模块,也支持编写yaml格式的playbook,易于编写和阅读 安装十分简单,ce ...
- RF(For 循环)
一.介绍:RobotFrameWork 支持 FOR 循环语句,语法和 Python 的语法基本相同,但 RobotFrameWork 中,"FOR" 关键字前面需要增加一个 &q ...
- SQL中的循环、for循环、游标
我们使用SQL语句处理数据时,可能会碰到一些需要循环遍历某个表并对其进行相应的操作(添加.修改.删除),这时我们就需要用到咱们在编程中常常用的for或foreach,但是在SQL中写循环往往显得那么吃 ...
- android中无限循环滑动的gallery实例
android中无限循环滑动的gallery实例 1.点击图片有变暗的效果,使用imageview.setAlpha(),并且添加ontouchListener public void init() ...
- shell中的循环
shell中的循环 for循环 类似于C语言的步长控制 例如: ;i<=;i++)); ); done 将1到10,依次乘以4,然后打印出来. 这里顺便提一下,shell里面表达式的计算,可以有 ...
- Oracle PL/SQL中的循环处理(sql for循环)
今天来说下Oracle中的循环迭代处理,因为从自己的博客统计中看到,不少网友都搜索了关键字"SQL FOR循环",所以打算在这里说下个人的理解. PL/SQL也和我们常用的编程语言 ...
- shell中for循环
shell中for循环总结 最常用的就是遍历操作某一类文件,比如批量建索引. for i in `ls` do samtools faidx $i done 注意:for末尾不需要冒号(:),循环的代 ...
- shell中for循环总结
关于shell中的for循环用法很多,一直想总结一下,今天网上看到上一篇关于for循环用法的总结,感觉很全面,所以就转过来研究研究,嘿嘿... 1. for((i=1;i<=10;i++));d ...
随机推荐
- Django与mongodb数据库的连接
1.最开始需要下载一个第三方模块:mongoengine 2.下载完成之后,需要在settings中完成配置(在DATABASES后面,别问我为什么,问了我也不告诉你...) connect中传入的是 ...
- 你好,C语言
对于我来说,C语言就和陌生人一样,对他完全不了解,更不要提什么C++了,这就要我主动和他打招呼,深入认识了解它了哈.目前对于C语言的理解,只知道他的的功强大,能操作硬件,编写各类驱动,强悍的LINUX ...
- TestNG(十) 依赖测试
package com.course.testng.suite; import org.testng.annotations.Test; public class DepenTest { @Test ...
- 弄懂Java为何只有值传递
最近有同学问我关于Java中值传递与引用传递的问题,在此小结一下 值传递是指在函数调用时将实参内容复制一份传递给形参,这样在函数中改变该参数不会对原参数产生影响. 引用传递是指将对象地址的引用传递给该 ...
- 是的,是你的BFC - CSS中常用
是的,是你的BFC - CSS中常用 是的,是你的BFC - CSS中常用 CFC 全称:(Block Formatting Contexts)含义是块级格式化上下文),就是一个块级元素的渲染 ...
- Jmeter 接口自动化-脚本数据分离实例
一. 背景: 为了让大家更加的了解Jmeter,并且使用起来游刃有余.这篇我们主要讲一下,如何优雅的使用Jmeter一步步的实现接口自动化,完成脚本与数据分离,把可能对Jmeter脚本的维护转移到c ...
- [Linux] Linux下undefined reference to ‘pthread_create’问题解决
问题的原因:pthread不是Linux下的默认的库,也就是在链接的时候,无法找到phread库中函数的入口地址,于是链接会失败. 解决:在gcc编译的时候,附加要加 -lpthread参数即可解决.
- [Linux] linux下vim对于意外退出的文档的再次开启
转载自博客:https://blog.csdn.net/ljp1919/article/details/48372615 1.对于同一个文件如果上次已经打开,而未关闭的情况下,又打开该文件进行编辑时, ...
- WebStorm2017.3.4版本 注册码
http://idea.singee77.com http://im.js.cn:8888
- UITableView tableHeaderView 自动布局
let size = headerView.systemLayoutSizeFitting(UIView.layoutFittingCompressedSize) headerView.frame.s ...