在《RobotFramwork + Python 自动化入门 一》中,完成了一个Robot环境搭建及测试脚本的创建和执行。

在《RobotFramwork + Python 自动化入门 二》中,对RobotFramework的关键字使用和查看源码进行了介绍。

在《RobotFramwork + Python 自动化入门 三》中,完成了web自动化脚本开发的入门。

本节,介绍web自动化脚本设计的进阶。

一、添加Setup和Teardown

对于一些如准备数据、打开浏览器的操作可以放到Setup中去,在测试用例开始执行之前会先执行Setup部分,完成环境准备。

对于一些如关闭浏览器、清除数据的操作可以放到Teardown中,在测试用例执行完成后(不论成功与否),都会执行teardown部分,完成环境清理。

如下图:

1. 将打开百度浏览器的操作封装到关键字 ’Open Baidu Browser‘

2. 添加Test Setup 和 Test Teardown

RobotFramework + Python 自动化入门 四 (Setup/Teardown+Variables+Keywords)-LMLPHP

从测试报告中,也可看出Setup最先执行,Teardown最后执行。

 RobotFramework + Python 自动化入门 四 (Setup/Teardown+Variables+Keywords)-LMLPHP

 二、提取Locator和Data

在实际写脚本中,我们会将用到的所有Locator和测试数据提取到Variables区域中。

这样,当locator或测试数据发生变化时,不需要逐一修改涉及到的测试脚本,只需将该locator或测试数据对应的变量进行修改即可,实现了数据与测试用例的分离,

提高了测试脚本的可维护性。

RobotFramework + Python 自动化入门 四 (Setup/Teardown+Variables+Keywords)-LMLPHP

三、封装关键字

开发测试脚本时,可以按照测试用例的测试步骤将脚本进行封装,实现

一条测试步骤对应一个关键字,

一条预期结果对应一个关键字。

如下图:

1. 将在输入框中输入搜索词,单击搜索按钮的步骤封装为一个关键字

2. 将验证搜索结果的步骤(预期结果)封装为一个关键字

RobotFramework + Python 自动化入门 四 (Setup/Teardown+Variables+Keywords)-LMLPHP

 RobotFramework + Python 自动化入门 四 (Setup/Teardown+Variables+Keywords)-LMLPHP

关键字参数

Documtation

添加关键字的文档说明,可以用来详细描述该关键字的功能。

RobotFramework + Python 自动化入门 四 (Setup/Teardown+Variables+Keywords)-LMLPHP

 在执行报告界面,可以看到关键字的Documentation:

 RobotFramework + Python 自动化入门 四 (Setup/Teardown+Variables+Keywords)-LMLPHP

Arguments

关键字参数,这样让关键字变得更加通用,也是实现了数据和用例的分离。

RobotFramework + Python 自动化入门 四 (Setup/Teardown+Variables+Keywords)-LMLPHP

Log To Console

Log To Console后面的内容 会在Console显示,在封装关键字时使用这个系统关键字,可以方便在eclipse中执行脚本时查看当前执行到哪一步。

RobotFramework + Python 自动化入门 四 (Setup/Teardown+Variables+Keywords)-LMLPHP

Console的输出:

RobotFramework + Python 自动化入门 四 (Setup/Teardown+Variables+Keywords)-LMLPHP

06-26 20:49