RobotFramework中setUp的小技巧

发表于:2017-12-29 11:44

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:点点寒彬    来源:简书

  背景
  使用RobotFramework进行测试的时候,经常会需要写一些准备数据的脚本,比如我现在的的脚本框架下,把所有的变量和项目配置都放在服务器上,那么我在执行用例的时候,就必须要去读取这些配置,但是在每个用例都要写一遍这个读取配置的代码,显得很繁琐,偶然的尝试,发现了这个小技巧。
  往常的做法
  正常来说,我们如果要拿到这些配置,必须要执行获取配置的关键字,然后拿到这个关键字的返回值,然后才能执行后续的步骤,比如如下代码:
*** Keywords ***
get config
log     开始获取配置
[Return]    config
*** Test Cases ***
test
${rst}      get config
log     ${rst}
  但是这样做会非常麻烦,每个用例在跑的时候,都必须要调用这个关键字,RobotFramework提供了setUp的方法,但是这个方法是在每个用例开始的时候执行,用来清理环境的,比如用例执行的前置准备,我们的问题是要拿到系统配置的值。在setUp执行的时候,下方的用例,没有地方可以拿到值。
  小技巧
  其实setUp也是可以拿到值,只是需要做一个简单的动作。如下面的代码:
*** Settings ***
Test Setup      get config
*** Keywords ***
get config
log     开始获取配置
set suite variable     ${config}       config
*** Test Cases ***
test
log     ${config}
  在case中,我们直接打印了${config}这个变量,这个变量哪里来的呢?就是在关键字get config中的set suite variable方法设置了${config}变量,然后在setUp中执行了get config关键字,这个变量就变成了suite级别的变量,其他case在执行的过程中就能够直接拿来用了。

上文内容不用于商业目的,如涉及知识产权问题,请权利人联系博为峰小编(021-64471599-8017),我们将立即处理。
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号