robot framework:自动化测试框架

Python3.7

RIDE(可视化界面)、  Wxpython  pip(在线下载) 、 setuptools(在线安装) 、 第三方库

第三方库:selenium2library (ui自动化)、requestlibrary(接口自动化)、databaselibrary(数据自动化)、appium

搭建自动化环境

自动化测试

广义:拿某一个工具测试某一个软件

拿某一个程序测试某一个程序

狭义:通过录制或者编写脚本,然后通过回放或执行脚本来执行测试用例

常见几种自动化工具:

1、QTP:前几年主流

2、Selenium:用 selnium  做自动化要求会语言,写代码     selnium支持多种语言,方便,扩展性 高,开源版

3、RobotFramework+Selenium2Library:(RF是测试框架),Robot Framework是一款python编写的功能自动化测试框架,

4、自动化测试分层,金字塔

ui自动化:模拟用户操作的自动化 ,按整个流程跑

api 层    接口测试

Unit后端代码层

Q:自动化测试如何维护(待回答)

自动化测试流程:了解需求、写自动化测试用例、调试用例、

5、RIDE的结构:工程(项目)-->套件(suite)-->用例(test case)-->资源(齿轮形状)-->元素

open test suite 导入本地已有的套件

comment 相当于#,表示注释

F8 执行用例

view RIME Log 查看日志

RF的工作原理:

rotoframwork是开源,通过 加载一下第三方库的组成测试环境

webdirver通过对原生api进行封装来 操控浏览器,使用具体关键字操作网页上的元素

需要的工具

python3.7 (python语言环境)

注意:安装 robotframework 时指定安装 3.1.2 版本,否则易出现关键字缺失的问题

安装 robotframework==3.1.2 (在线安装)

Wxpython4或 (GUI(图形用户界面)工具)

robotframework-ride(图形可视化工具)

Setuptools(安装第三方工具:目的方便在下安装,下载,编译)

Selenium2library(第三方库:做自动化的第三方库)

Requestlibrary(第三方库:做接口测试用)

databaselibrary(第三方库:做接口数据库用)

第三方库:selenium2library (ui自动化)、requestlibrary(接口自动化)、databaselibrary(数据自动化)、appium

搭建自动化环境

安装步骤1.安装python2.7(之前安装过)

第一步 :环境变量配置

环境变量path配置1:   D:\Python3.7

环境变量path配置2:   D:\Python3.7\Scripts

确认环境变量已配置成功,在dos中执行python,有交互页面,显示python版本号

2.安装robotframework 

第一步:pip install robotframework==3.1.2  -i  https://pypi.tuna.tsinghua.edu.cn/simple --trusted-host pypi.tuna.tsinghua.edu.cn

确认是否安装成功,可以在D:\Python37\Lib\site-packages看到(以自己真实的python安装路径为主)

robotframework-3.0-py3.7.egg-info或者robotframework-3.0-py3.7.egg

 

表示已安装成功;

3、安装robotframework-ride

在线安装:

pip install robotframework-ride  -i  https://pypi.tuna.tsinghua.edu.cn/simple --trusted-host pypi.tuna.tsinghua.edu.cn

ride安装成功,会在D:\Python27\Scripts下生成一个ride.py文件

 

4、安装wxpython(gui)

Gui:图形化界面或图形用户接口

wxPython是Python语言的一套优秀的GUI图形库。允许Python程序员很方便的创建完整的、功能键全的GUI用户界面。 wxPython是作为优秀的跨平台GUI库wxWidgets的Python封装和Python模块的方式提供给用户的。

***直接通过命令安装(推荐使用)

注意:安装 robotframework-ride 后,wxPython 可以不需要再去安装

pip install -U wxPython -i  https://pypi.tuna.tsinghua.edu.cn/simple --trusted-host pypi.tuna.tsinghua.edu.cn

第四步:双击ride.py 打开robotframework-ride可视化图形工具

第五步:创建桌面图标(可做可不做)

新建快捷方式,点击快捷键,鼠标右键属性,在目标中输入如下

\Python37\pythonw.exe -c "from robotide import main; main()"

这里注意D:python27 是你自己的python安装路径

5、

选择图标,点击更改图标,输入如下

D:\Python37\Lib\site-packages\robotide\widgets\robot.ico

C:\python37\Lib\site-packages\robotide\widgets\robot.ico

这里注意D:python37是你自己python安装路径

最终:快捷键配置正确,可以通过快捷键打开robotframework-ride可视化图形工具

6. 安装第三方库(自动下载、编译和安装

第一步:在DOS中进入

安装 robotframework-selenium2library

  • pip install robotframework-selenium2library  -i  https://pypi.tuna.tsinghua.edu.cn/simple --trusted-host pypi.tuna.tsinghua.edu.cn

安装成功后:D:\Python37\Lib\site-packages路径下会有selenium2library

7. 谷歌驱动存放路径设置

第一步:把chromedriver驱动放到c:python37/Scripts

8、

搭建环境遇到的问题及解决方法:

1、python要添加到环境变量的path中

2、错误:command: pybot.bat --argumentfile c:\users\keikei\appdata\local\temp\RIDEama2ym.d\argfile.txt --listener D:\Python27\lib\site-packages\robotide\contrib\testrunner\TestRunnerAgent.py:52418 E:robot\测试项目

解决:将“C:\Python37\Scripts ”添加到PATH环境变量中。命令提示符号查看,RF版本。提示pybot 不是内部命令,说明环境变量设置有问题。

3、RIDE的属性目标需要修改:C:\Python37\Python.exe -c "from robotide import main; main()"

4、我们常常会遇到,安装完成RIDE 后,双击桌面的RIDE 不能启动的情况,这是由于RIDE 所依赖wxPython 版本不一直造成的。重新安装相应的版本

二、rf工具使用

在你安装好RF-ride之后,桌面就会生成一个RIDE图标。双击启动,界面如下:

下面我们就一步一步的创建第一条用例,至于细节不多解释,只是对RF框架写用例有个感性的认识。

创建测试项目                                          

选择菜单栏file----->new Project

Name 输入项目名称。

Type 选择Directory。

注意:父目录必须存在。(parent  Diretory)

创建测试套件                                            

右键点击“测试项目”选择new Suite 选项

Name 输入项目名称。

Type 选择File。

创建好显示如下

创建测试用例                                                  

右键点击“测试项目”选择new Test Case

用例只需要输入用例name ,点击OK即可。

导入selenium2library库                        

因为RF框架编写基于web 的测试用例,所以,我们需要selenium 的库支持。所以,我们在使用的过程中需要加载selenium2library库。

在“测试套件”的Edit标签页,点击“Library”按钮,弹出输入框,Name输入:Selenium2Library ,点击OK 完。

如果导入的库显示为红色,表示导入的库不存在。如果是黑色则表示导入成功。

 

编写用例                                                 

  下面就可以开始写我们的用例了,可是怎么写呢?我们可以通过按F5 快捷键来查询脚本的关键字。如果你接触过QTP 或 selenium IDE 等自动化工具的话,应该会有一些思路。

  

如上图,自动化脚本从打开浏览器开发,如上图,我想打开一个浏览器,想的是“open”为关键字进行搜索,结果找到了一个“Open Browser”的关键字,点击这个关键字,想显示它的用法和说明。

根据说明,我们来尝试创建这个打开浏览器的操作吧:

  “Open Browser”变蓝了,说明它是一个合法的关键字,后面有一个方框是红色的,表示这个参数不能缺省的。通过说明信息中,我发现它需要一个url 地址是必填的,当然还需要指定browser (默认不填为 friefox)

  更多关键的使用,请参考相关API 文档。这里不过多介绍。按照上面的方法。创建百度搜索用例如下:

输入open 在输入ctrl+ait+空格键  联想关键词

运行测试用例                                                

勾选当前需要运行的测试用例,点击工具栏运行按钮,如果只运行单个用例的话,也可以切换到用例的Run标签页,点击“start”按钮。

运行信息:

  运行信息显示会生成三个文件:Output.xml、Log.html、Report.html

  我们重点查看Log.html和Report.html ,Log.html更关注脚本的执行过程的记录,Report.html更关注脚本的执行结果的展示。

赶快打开你的测试报告看看效果吧!

错误:

command: pybot.bat --argumentfile c:\users\keikei\appdata\local\temp\RIDEama2ym.d\argfile.txt --listener D:\Python27\lib\site-packages\robotide\contrib\testrunner\TestRunnerAgent.py:52418 E:robot\测试项目

解决:

将“C:\Python27\Scripts ”添加到PATH环境变量中。命令提示符号查看,RF版本。提示pybot 不是内部命令,说明环境变量设置有问题。

多测试讲解_009肖sirRF自动化框架安装教程的更多相关文章

  1. 转载:python + requests实现的接口自动化框架详细教程

    转自https://my.oschina.net/u/3041656/blog/820023 摘要: python + requests实现的接口自动化框架详细教程 前段时间由于公司测试方向的转型,由 ...

  2. python + requests实现的接口自动化框架详细教程

    前段时间由于公司测试方向的转型,由原来的web页面功能测试转变成接口测试,之前大多都是手工进行,利用postman和jmeter进行的接口测试,后来,组内有人讲原先web自动化的测试框架移驾成接口的自 ...

  3. Scarpy框架安装教程

    在一切之前,建议升级pip,如果版本太低,安装会失败 升级pip命令: python -m pip install --upgrade pip 如果上面的命令不能用,用下面这个 easy_instal ...

  4. Pygame 框架安装教程(Python3.6为例)

    1.python版本是3.6,最新的pygame是1.9.3,这两个最好都用32位的. pygame1.9.3下载地址:http://www.lfd.uci.edu/~gohlke/pythonlib ...

  5. python接口自动化框架

    接口测框架 安装教程 需要3.5及以上版本的python pip install -r requirements.txt 使用说明 运行manage.py创建项目 创建的项目在projects目录下 ...

  6. yii2框架安装运行init.bat报错php.exe不是内部或外部命令

    在安装yii2框架的时候,遇到一个很纠结的问题.就是当我把安装包下载下来之后,在公司的电脑安装可以正常,当我回家用自己的电脑安装就报错,提示 php.exe 不是内部或外部命令,也不是可运行的程序.这 ...

  7. 多测师讲解a'pi自动化框架设计思想_高级讲师肖sir

    API自动化框架API自动化框架分为conf.data.utils.api.testcase.runner.report.log8个模块.conf是用来储存系统环境.数据库.邮件等的配置参数.项目的绝 ...

  8. 多测师讲解ui自动化框架设计思想_高级讲师肖sir

    UI自动化框架:UI自动化框架可以分为8个模块,conf.data.public.pageobject.testcase.runner.report.log.conf是用来储存系统环境.数据库.邮件的 ...

  9. Android自动化框架 模拟操作 模拟测试

    转自:http://bbs2.c114.net/home.php?mod=space&uid=1025779&do=blog&id=5322 几种常见的Android自动化测试 ...

随机推荐

  1. 高德地图POI爬取_Python

    高德地图POI 官方文档:https://lbs.amap.com/api/webservice/guide/api/search#introduce 官网控制台:https://lbs.amap.c ...

  2. python 模块安装导入

    一.定义 python模块就是一个.py文件,一个模块中可以有多个函数,在使用模块时,只需要import下,就可以使用模块中的函数功能.import模块的过程相当于把这个py文件中的所有内容都执行一遍 ...

  3. 数据库连接池设计和实现(Java版本)

    1 前言 数据库连接池是目前系统开发必须面对和考虑的问题,原理并不复杂,主要是减少重复连接数据库的代价:在系统中创建预期数量的数据库连接,并将这些连接以一个集合或类似生活中的池一样管理起来,用到的时候 ...

  4. 在windows下使用pip安装python包遇到缺失stdint.h文件的错误

    今天在windows上使用pip安装一个python包python-lzf时遇到如下的错误: fatal error C1083: Cannot open include file: 'stdint. ...

  5. Java基础语法(10)-面向对象之三大特征

    title: Java基础语法(9)-面向对象之类的成员 blog: CSDN data: Java学习路线及视频 1.面向对象特征--封装 为什么需要封装?封装的作用和含义? 我要用洗衣机,只需要按 ...

  6. 程序员必须了解的知识点——你搞懂mysql索引机制了吗?

    一.索引是什么 MySQL官方对索引的定义为:索引(Index)是帮助MySQL 高效 获取数据的数据结构,而MYSQL使用的数据结构是:B+树 在这里推荐大家看一本书,<深入理解计算机系统的书 ...

  7. 【Java并发编程】从CPU缓存模型到JMM来理解volatile关键字

    目录 并发编程三大特性 原子性 可见性 有序性 CPU缓存模型是什么 高速缓存为何出现? 缓存一致性问题 如何解决缓存不一致 JMM内存模型是什么 JMM的规定 Java对三大特性的保证 原子性 可见 ...

  8. 深入研究RocketMQ生产者发送消息的底层原理

    前言 hello,小伙伴们,王子又来和大家研究RocketMQ的原理了,之前的文章RocketMQ生产部署架构如何设计中,我们已经简单的聊过了生产者是如何发送消息给Broker的. 我们简单回顾一下这 ...

  9. Java操作Elasticsearch 之 [Java High Level REST Clientedit]

    1. 简述 Elasticsearch 是基于 Lucene 开发的一个分布式全文检索框架,向 Elasticsearch 中存储和从 Elasticsearch 中查询,格式是json. 向 Ela ...

  10. Spring Boot学习(二)搭建一个简易的Spring Boot工程

    第一步:新建项目 新建一个SpringBoot工程 修改项目信息 勾选项目依赖和工具 选择好项目的位置,点击[Finish] 第二步:项目结构分析 新建好项目之后的结构如下图所示,少了很多配置文件: ...