RobotFramework + Python 自动化入门 四 (Web进阶)
在《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

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

二、提取Locator和Data
在实际写脚本中,我们会将用到的所有Locator和测试数据提取到Variables区域中。
这样,当locator或测试数据发生变化时,不需要逐一修改涉及到的测试脚本,只需将该locator或测试数据对应的变量进行修改即可,实现了数据与测试用例的分离,
提高了测试脚本的可维护性。

三、封装关键字
开发测试脚本时,可以按照测试用例的测试步骤将脚本进行封装,实现
一条测试步骤对应一个关键字,
一条预期结果对应一个关键字。
如下图:
1. 将在输入框中输入搜索词,单击搜索按钮的步骤封装为一个关键字
2. 将验证搜索结果的步骤(预期结果)封装为一个关键字


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

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

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

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

Console的输出:

RobotFramework + Python 自动化入门 四 (Web进阶)的更多相关文章
- RobotFramework + Python 自动化入门 三 (Web自动化)
在<RobotFramwork + Python 自动化入门 一>中,完成了一个Robot环境搭建及测试脚本的创建和执行. 在<RobotFramwork + Python 自动化入 ...
- RobotFramework + Python 自动化入门 二 (关键字)
在<RobotFramwork + Python 自动化入门 一>中,完成了Robot环境搭建及测试脚本的创建和执行. 本节,对RobotFramework的关键字使用和查看源码进行介绍. ...
- RobotFramework + Python 自动化入门 一 (从这里开始)
一.环境搭建 1. 安装Python Python3会自动配置path,安装pip工具(python包安装和管理工具) 2. 安装robotframework library cmd窗口安装命令: p ...
- Python爬虫入门四之Urllib库的高级用法
1.设置Headers 有些网站不会同意程序直接用上面的方式进行访问,如果识别有问题,那么站点根本不会响应,所以为了完全模拟浏览器的工作,我们需要设置一些Headers 的属性. 首先,打开我们的浏览 ...
- 转 Python爬虫入门四之Urllib库的高级用法
静觅 » Python爬虫入门四之Urllib库的高级用法 1.设置Headers 有些网站不会同意程序直接用上面的方式进行访问,如果识别有问题,那么站点根本不会响应,所以为了完全模拟浏览器的工作,我 ...
- 【python自动化第四篇:python入门进阶】
今天的课程总结: 装饰器 迭代器&生成器 json&pickle实现数据的序列化 软件目录结构规范 一.装饰器 装饰器的本质是函数,起目的就是用来为其它函数增加附加功能 原则:不能修改 ...
- Python 自动化入门 day1复习
一.Python介绍 Python是1989年圣诞节期间龟叔创造的一种解释型语言. 最新的TIOBE排行榜 目前Python主要应用领域: 云计算: 云计算最火的语言, 典型应用OpenStack W ...
- Appium+python自动化(四十二)-Appium自动化测试框架综合实践- 寿终正寝完结篇(超详解)
1.简介 按照上一篇的计划,今天给小伙伴们分享执行测试用例,生成测试报告,以及自动化平台.今天这篇分享讲解完.Appium自动化测试框架就要告一段落了. 2.执行测试用例&报告生成 测试报告, ...
- Python自动化开发 - Django【进阶篇】
Model 到目前为止,当我们的程序涉及到数据库相关操作时,我们一般都会这么搞: 创建数据库,设计表结构和字段 使用 MySQLdb 来连接数据库,并编写数据访问层代码 业务逻辑层去调用数据访问层执行 ...
随机推荐
- valgrind 内存泄漏分析
概述 valgrind 官网 https://www.valgrind.org/ valgrind 是 Linux 业界主流且非常强大的内存泄漏检查工具.在其官网介绍中,内存检查(memcheck)只 ...
- [时间模块、random模块]
[时间模块.random模块] time模块 在Python中,通常有这几种方式来表示时间: 时间戳(timestamp):通常来说,时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏 ...
- [Python] 基本概念
1.基本概念 三大特性:封装.继承.多态 继承:派生类继承基类的字段和方法 多态:对不同类型的变量进行相同的操作,却表现出不同的行为(例如对数字和字符做"+"运算) 封装:将数据和 ...
- Linux中find命令用法全汇总,看完就没有不会用的!
Linux中find命令用法全汇总,看完就没有不会用的! 中琦2513 马哥Linux运维 2017-04-10 糖豆贴心提醒,本文阅读时间7分钟 Linux 查找命令是Linux系统中最重要和最 ...
- IIS 10 设置FTP Passive Mode 固定端口
1. Run [Start] - [Server Manager] and Click [Tools] - [Internet Information Services (IIS) Manager]. ...
- Linux软件安装管理之——dpkg与apt-*详解 apt命令(dpkg和apt代替rpm)
apt list *python* Nosee123关注赞赏支持 Linux软件安装管理之--dpkg与apt-*详解 [Linux软件安装管理系列]- - 传送门: - -<Linux软件 ...
- Maven知识点一览
Maven 介绍和搭建 介绍 Maven是基于项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告,和文档的软件项目管理工具. 环境搭建 网址:https://maven.apache ...
- C语言函数sscanf()的用法-(转自Walter L)
在我的学习过程中,从文件读取数据是一件很麻烦的事,所幸有sscanf()函数. C语言函数sscanf()的用法sscanf() - 从一个字符串中读进与指定格式相符的数据. 函数原型: int ss ...
- 『动善时』JMeter基础 — 25、JMeter参数化补充练习
目录 1.使用"CSV数据文件设置"组件实现参数化 (1)测试计划中的元件 (2)数据文件内容 (3)线程组元件内容 (4)HTTP信息头管理器组件内容 (5)CSV数据文件设置组 ...
- Python+Selenium - Alert弹框
上面三种弹窗可以在浏览器的控制台做出效果,如下图 上面三种弹窗可以用alert方法处理 示例: #出现弹窗的操作xxxx# 切换al = driver.switch_to.alert# print(a ...