自动化测试框架 Robot Framework 使用快速入门(4)

发表于:2011-10-08来源:未知作者:领测软件测试网采编点击数: 标签:
Given a user has a valid account Create valid user ${USERNAME} ${PASSWORD} When she changes her password Change password ${USERNAME} ${PASSWORD} ... ${NEW PASSWORD} Status should be SUCCESS Then she c

     

Given a user has a valid account

Create valid user

${USERNAME}

${PASSWORD}

When she changes her password

Change password

${USERNAME}

${PASSWORD}

 

...

${NEW PASSWORD}

   

Status should be

SUCCESS

 

Then she can log in with the new password

Login

${USERNAME}

${NEW PASSWORD}

And she cannot use the old password anymore

Attempt to login with credentials

${USERNAME}

${PASSWORD}

 

Status should be

Access Denied

 

  用户定一个经常可以包含从其他用户定义关键词,内置关键词或者库关键词定义的动作。如在本例中所示,用户定义关键词可以携带参数。它们可以返回值设置包括FOR循环。现在重要的是用户定义关键词使测试创建者能够为常用的动作序列创建可重用的步骤。用户定义关键词还可以帮助测试作者在不同的环境下尽可能保持测试测试可读性和使用恰当的抽象级别。

  变量

  定义变量

  变量是Robot Framework 的组成部分。通常在测试中的可能变化的数据最好定义为变量。定义变量的语法非常简单,如下表所示:

 

Variable

Value

${USERNAME}

janedoe

${PASSWORD}

J4n3D0e

${NEW PASSWORD}

e0D3n4J

   

${DATABASE FILE}

${TEMPDIR}${/}robotframework-quickstart-db.txt

   

${PWD INVALID LENGTH}

Password must be 7-12 characters long

${PWD INVALID CONTENT}

Password must be a combination of lowercase and uppercase letters and numbers

  变量也可以从命令行给定,以便于测试需要在不同的环境中执行。例如本demo可以像下面一样执行:

  pybot --variable USERNAME:johndoe --variable PASSWORD:J0hnD0e quickstart.html

  除了用户定义变量之外,还有一些内置变量也很有用。这些变量包括在上表中使用的${TEMPDIR}和 ${/} 。

  使用变量

  变量可以在测试数据的大部分地方使用。如下面的测试用例所示它们最常用作关键词的参数。关键词的返回值也可以复制给变量以便在后面使用。例如下面的Database Should Contain 用户关键词设置数据库内容给${database} 变量,然后使用内置关键词Should Contain 验证内容。库和用户定义关键词口可以返回值。

 

Test Case

Action

Argument

Argument

Argument

User status is stored in database

[Tags]

variables

database

 
 

Create Valid User

${USERNAME}

${PASSWORD}

 
 

Database Should Contain

${USERNAME}

${PASSWORD}

Inactive

 

Login

${USERNAME}

${PASSWORD}

 
 

Database Should Contain

${USERNAME}

${PASSWORD}

Active

原文转自:http://www.ltesting.net