让腾讯测试工程师带你走入Robotframework自动化测试框架不为人知的秘密_robotframework自动化测试是什么工作(3)

img
img

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

一、Robotframework框架概述

1.什么是Robotframework 框架?

2.RobotFramework框架优点

3.RobotFramework框架安装用途

二、RobotFramework底层库

三、RobotFramework软件Ride

四、编写RobotFramework用例

2创建测试套件New Suit

3.导入库

4.创建测试用例New Test Case

5.编写测试用例

6.运行测试用例


前言

Python 是面向高级对象编程语言,由于自身具有易学习、易阅读,支持跨平台、可扩展可移植可嵌入的特点,让其可以接入第三方库。

Robot FrameWork是完全基于Python实现的开源的自动化测试框架,RF已经封装好的各个模块,基于关键字驱动的形式来实现的自动化测试。其case采用表格形式易读,且支持BDD,可容纳各种外置库,可以继承Selenium、Appium、Requests实现各类自动化

目前行业里,自动化测试框架主要有RobotFramework、Appium、Airtest等

Robot FrameWork是完全基于Python实现的开源的自动化测试框架,RF已经封装好的各个模块,基于关键字驱动的形式来实现的自动化测试。其case采用表格形式易读,且支持BDD,可容纳各种外置库,可以继承Selenium、Appium、Requests实现各类自动化

一、Robotframework框架概述

1.什么是Robotframework 框架?

Robot Framework是一款python编写的功能自动化测试框架。具备良好的可扩展性,支持关键字驱动,可以同时测试多种类型的客户端或者接口,可以进行分布式测试执行。主要用于轮次很多的验收测试和验收测试驱动开发(ATDD)。

2.RobotFramework框架优点

1.易上手,采用表格化编程,覆盖广泛人群使用

2.重用性好,可以使用现有的关键字组装成新的关键字

3.易扩展,可以使用Python等实现自定义测试库

4.易集成,提供命令行界面和xml 输出文件方便接入到持续集成系统

5.支持多类型的测试,如WEB测试、AOO测试、SSH、API接口等测试

6.易维护,可以支持数据驱动、变量控制、标记管理、级别设置对测试用例进行管理

7.良好的报告和日志展示,以HTML形式输出测试结果

8.测试用例使用文本文件(TXT或者TSV文件)保存,使用制表符分隔数据。可以方便的使用任何文本编辑器,或者EXCEL编辑测试用例。也可以使用HTML格式创建用例。

9.测试用例中支持变量使用,可以使用IF语句和FOR循环语句。

10.可以利用“标签”功能对测试用例进行分类和有选择执行。

11.支持关键字驱动、数据驱动和行为驱动。

12.利用已有的关键字,测试人员可以创建自己需要的关键字,形成更高级别的行为。

13.测试执行报告和日志是HTML格式,容易阅读。

14.Robot Framework并不是一款像QTP一样的自动化测试工具。它是一个自动化测试框架,或者说是一个自动化测试平台。

15.提供了测试执行事件的监听接口,并且可以自定义接口中的脚本。例如,某个用例执行前,“start_test”接口中的脚本就会被执行;用例执行结束后,“end_test”接口中的脚本就会被执行。而测试人员可以自定义“start_test”、“end_test”这两个接口的脚本。

16.提供了命令行接口和XML格式的输出。可以与版本管理工具结合,进行持续集成。

17.Robot Framework是通过测试库识别被测对象、操纵被测对象,有很多自带的或者第三方的开源测试库。例如,使用“selenium2Library”库测试web客户端。此外还可以测试java客户端、Win32客户端、SSH协议的字符终端等。

18.测试人员可以使用Python和java创建自己需要的测试库。

19.提供了远程测试执行接口,可以进行分布式测试执行。

3.RobotFramework框架安装用途

(1)必须先安装python环境

https://www.python.org/downloads/release/python-2713/

RF最大支持到python3.7。我们使用python3.5版本。

(2)安装robotframework

【1】进入dos窗口,输入pip install robotframework

【2】安装Seleniumlibrary  – 支持Selenium自动化RF扩展库

doc运行pip install robotframework-selenium​library

都安装好后可执行 pip list 查看robotframework 和 robotframework-selenuimlibraryd的版本

【3】Pycharm 安装插件 –  不同颜色高亮显示字体

在Pycharm中,点击file - settings - plugins ,点击Browser Repository,输入robot

安装IntelliBot  、 IntelliBot @SeleniumLibrary Patched、Run Robot framework TestCase(可惜我的Pycharm里没有这个)

也可以下载 IntelliBot插件
   https://github.com/jcyrss/songqin-testdev/raw/master/others/softwares/intellibot.jar
在Pycharm中,点击菜单 file - settings - plugins
在弹出对话框中 点击下方 按键install plugin from disk
选择下载的jar文件
 
如果pycharm高亮显示RF文件颜色不好看,可以导入settings.jar
pycharm 可以点击菜单 File -> Import Settings -> 导入下面的pycharm 配置文件
https://github.com/jcyrss/songqin-testdev/raw/master/rf/files/settings.jar 

【4】运行第一个自动化程序:

测试套件,就是测试用例的集合,一般把功能相关的测试用例组合起来放在一起,成为某个测试套件

1 创建一个新的项目, 创新一个目录后,创建测试套件或直接创建一个robot文件

如果New文件里没有Robot File,可以创建一个后缀为.robot的file

2输入自动化用例:

*** Settings ***
Library  SeleniumLibrary
 
*** Test Cases ***
百度搜索
    open browser                    http://www.baidu.com        chrome
    set browser implicit wait       5
    input text                      id=kw                      hello\n
    ${firstRet}=                    get text                   id=1
    should contain                  ${firstRet}                hello

3执行用例:

调试单个用例的时候可以直接点击Run 运行该用例

多个测试用例一起执行时,首先进入项目目录,执行dos窗口

执行所有用例:   robot  用例套件目录名称

执行目录下的一个用例:  robot  测试套件目录名称 / 测试用例名称.robot

执行目录下的一个用例文件的一个测试点:  robot  -t  testcase  测试套件目录名称 / 测试用例名称.robot

【5】第一个执行的时候,报错

检查后发现文件没有选择UTF-8

更改后,重新输入用例后再执行命令就完成了

绿色的PASS 代表通过

红色的Fail 代表失败

执行后可查看报告和日志

(3)安装框架的gui工具

pip install –i https://pypi.douban.com/simple robotframework-ride

(4)安装第三方库

1.web自动化库:(Selenium)

pip install –i https://pypi.douban.com/simple robotframework- seleniumlibrary

2.api接口自动化库:(Request)

pip install –i https://pypi.douban.com/simple robotframework-requests

二、RobotFramework底层库

https://robotframework.org/?tab=libraries#resourcesRobotFramework 底层库包含内置库和外部库,详细资料在可见https://robotframework.org/?tab=libraries#resources

RobotFramework 内置库:

Builtin: 提供基本操作的关键字,无需提前导入库(Library XXX)

Dialog: 提供暂停测试执行与用户进行交互对话界面方式的关键字

Collections:提供一组关键字处理Python列表和字典

XML: 提供可以生成、编辑和验证XML文件库

Screenshot: 提供关键字来捕获和存储桌面的截图

String:提供处理字符串并验证它们内容的库。用于生成、修改和验证字符串

DateTime:日期和时间转换库,支持创建和验证日期和时间值以及它们之间的计算。

RobotFramework 外部库目前支持Appium、selenium等库

SeleniumLibrary : 提供支持 Web 测试库

AppiumLibrary: 提供支持 Android 和 ios 测试库

Robotframework-faker :提供支持 faker 库

HTTP RequestsLibrary :提供支持使用Python Requests库对HTTP测试

三、RobotFramework软件Ride

img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上软件测试知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

需要这份系统化的资料的朋友,可以戳这里获取

-7PniZ9GP-1715540464965)]
[外链图片转存中…(img-P6tpuKJl-1715540464965)]
[外链图片转存中…(img-BrlSZ7hp-1715540464966)]

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上软件测试知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

需要这份系统化的资料的朋友,可以戳这里获取

  • 29
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值