Robot Framework使用2-脚本格式

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u011436666/article/details/77148658

在使用Robot Framework进行测试时,一般会借助使用RIDE来在图形界面里编辑脚本。不使用RIDE也是可以的,这篇文档的目的就是介绍一下在RIDE中编辑出的脚本的样式,使得我们可以不借助RIDE来写脚本。

一、项目在RIDE中的界面

无RIDE

上图中,有一个项目,在这个项目下有两个test suite(测试组件)和一个资源文件。这里通过查看在本机上保存的文件来看一下它的格式。

二、文件格式和脚本格式

查看本地保存下来的文件,可以发现,在RobotStudy(项目名称)目录下,有以下几个文件,将后缀统一保存为.robot。

无RIDE2

1、_init_.robot文件(init前后各有两个下划线)
文件中的内容如下:
(//后的斜体字是我加的注释,实际编写时必须去掉)

*** Settings ***   //1.注意settings前后各有一个空格                                                     
Documentation 这是一个测试用例项目中的文档       //2.文档的注释
Suite Setup suite_setup # 项目初始化     //3.所有套件初始化
Suite Teardown suite_teardown # 项目清理     //4.所有套件的清理
Test Setup test_setup # 项目Test setup          //5.每个用例执行前的初始化
Test Teardown test_teardown # 项目Test setup       //6.每个用例执行后的清理
Force Tags p_tag           //7.标签(会自动加到所有case中)                                            
Library Selenium2Library # 项目中导入的库     //8.导入的库
Resource resource.robot            //9.导入的资源文件
*** Variables ***                                                           
${URL} www.xxx.com

这个文件可以认为是整个项目的配置文件。要注意的是在上面的注释3、4、5、6中,其中使用的关键字必须要定义。这里我们把关键字统一放到了资源文件中。

2、resource.robot文件
在实际的项目中,往往需要创建许多具有通用性的用户关键字。如果不希望这些关键字依附于某个测试套件,甚至是某个项目。那么可以创建资源文件来存放这些关键字。

resource.robot文件中的内容如下:

*** Settings ***
Documentation this is the resource file in this project
Library Selenium2Library
*** Variables ***                               
${HOME_URL} www.quyiyuan.com # 官网主页网址
*** Keywords ***                                                         //定义的关键字,格式为:
login                                                                           //1.关键字名称
[Arguments] ${name} ${password}                            //2.引用是需要传入的参数(如果需要的话)      
log 资源文件里的登录关键字                                     //3.关键字中的操作
logout
log 退出登录
suite_setup
log suite初始化
......省略了一些关键字

3、测试套件文件
我们这里创建了两个测试套件,所以有两个文件,每个测试套件文件中可以有多个测试用例:
下面是RobotSuite01.robot文件中的内容:

*** Settings ***
Suite Setup suite_setup
Suite Teardown suite_teardown
Resource resource.robot
*** Variables ***                                                         //变量定义:单个变量、列表、字典三种形式
${TEST_URL} www.xxx.com # 定义suite中的变量
@{LIST01} v1 v2 V3 # list demo
&{DICT01} k1=v1 k2=v2 k3=v3 # dict demo
*** Test Cases ***
tc01_HomePage                                                       //test case名称
[Documentation] 这里是testcase01的文档说明        
[Tags] regular                                                           //test case的标签,可用或操作符加多个
log hello world.                                                        //test case中要进行的操作
Comment 在这里进行操作
Comment 前面是命令,后面是参数
login name pwd
logout
tc02_DocMainPage
[Tags] regular
log suite1-case2
log ${HOME_URL}
tc03_tmp
log suite01-case03
tc04_tmp2
log suite01-case04
*** Keywords ***                                                    //测试套件中定义的关键字,只能在此套件中起作用
user_kw01
[Documentation] 这个是用户关键字
[Tags] kw_tag
log this is user keyword
Comment 在这里进行关键字里的操作
user_kw02
[Documentation] 另一个用户关键字-定义在suite中

三、Test Cases的编写方法

从上面的信息中可以看出,编写用例最重要的在于编写Test Cases 标签下的操作。这些操作都存在一些库文件当中。Robot Framework框架中自带了BuiltIn库,不需要我们手动导入;用Selenium工具测试时必须导入Selenium2Library这个库。目前多数的操作都可以用这两个库完成。(点击上面的链接查看其文档)

猜你喜欢

转载自blog.csdn.net/u011436666/article/details/77148658