多测试讲解_009肖sirRF自动化框架安装教程
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自动化框架安装教程的更多相关文章
- 转载:python + requests实现的接口自动化框架详细教程
转自https://my.oschina.net/u/3041656/blog/820023 摘要: python + requests实现的接口自动化框架详细教程 前段时间由于公司测试方向的转型,由 ...
- python + requests实现的接口自动化框架详细教程
前段时间由于公司测试方向的转型,由原来的web页面功能测试转变成接口测试,之前大多都是手工进行,利用postman和jmeter进行的接口测试,后来,组内有人讲原先web自动化的测试框架移驾成接口的自 ...
- Scarpy框架安装教程
在一切之前,建议升级pip,如果版本太低,安装会失败 升级pip命令: python -m pip install --upgrade pip 如果上面的命令不能用,用下面这个 easy_instal ...
- Pygame 框架安装教程(Python3.6为例)
1.python版本是3.6,最新的pygame是1.9.3,这两个最好都用32位的. pygame1.9.3下载地址:http://www.lfd.uci.edu/~gohlke/pythonlib ...
- python接口自动化框架
接口测框架 安装教程 需要3.5及以上版本的python pip install -r requirements.txt 使用说明 运行manage.py创建项目 创建的项目在projects目录下 ...
- yii2框架安装运行init.bat报错php.exe不是内部或外部命令
在安装yii2框架的时候,遇到一个很纠结的问题.就是当我把安装包下载下来之后,在公司的电脑安装可以正常,当我回家用自己的电脑安装就报错,提示 php.exe 不是内部或外部命令,也不是可运行的程序.这 ...
- 多测师讲解a'pi自动化框架设计思想_高级讲师肖sir
API自动化框架API自动化框架分为conf.data.utils.api.testcase.runner.report.log8个模块.conf是用来储存系统环境.数据库.邮件等的配置参数.项目的绝 ...
- 多测师讲解ui自动化框架设计思想_高级讲师肖sir
UI自动化框架:UI自动化框架可以分为8个模块,conf.data.public.pageobject.testcase.runner.report.log.conf是用来储存系统环境.数据库.邮件的 ...
- Android自动化框架 模拟操作 模拟测试
转自:http://bbs2.c114.net/home.php?mod=space&uid=1025779&do=blog&id=5322 几种常见的Android自动化测试 ...
随机推荐
- MyBatis开发重点知识
1.1为什么需要ORM框架? 传统的JDBC编程存在的弊端: ü 工作量大,操作数据库至少要5步: ü 业务代码和技术代码耦合: ü 连接资源手动关闭,带来了隐患: MyBatis前身是iBatis, ...
- pwnable之random
这题只要多调试几次就会发现其产生的随机数是固定的一个值,那么就可以通过这个随机值和0xdeadbeef反推出我们要输入的数据, 最后附上这题的flag:flag:Mommy, I thought li ...
- 提升开发幸福度-IDE配置
插件 vscode插件 Settings Sync Atom One Dark Theme Bracket Pair Colorizer Code Runner Dracular Official E ...
- [Java并发编程之美]第2章 并发编程的其他基础知识 补充知识
基本概念 并行与并发 并行:单位时间内多个任务同时执行(多核CPU). 并发:同一时间段内多个任务同时都在执行(CPU时间片轮转). 线程安全性问题 线程安全问题:指多个线程同时读写一个共享资源而没有 ...
- 移动web开发之rem适配布局
移动web开发之rem适配布局 方案: 页面布局文字能否随着屏幕大小变化而变化 流式布局和flex布局主要针对于宽度布局,那高度如何布局? 怎样让屏幕发生变化的时候元素高度和宽度等比例缩放? 1. r ...
- k8s架构分析(二)
master节点 k8s的集群由master和node组成,节点上运行着若干k8s服务. master节点之上运行着的后台服务有kube-apiserver .kube-scheduler.kube- ...
- git代码管理——克隆项目到本地仓库及上传本地项目到仓库
一.克隆项目到本地仓库 1.github网站操作 1.1 登录github 首先创建一个仓库,点击“New” 1.2 输入仓库信息 1.3 创建完成后,会多出一个仓库 2.安装git客户端 2.1 安 ...
- netty字符串流分包
@Override protected void decode(ChannelHandlerContext channelHandlerContext, ByteBuf in, List<Obj ...
- pytest自学第二期
2.1 通过python解释器调用 pytest 我不知道有什么用:-) 以后就这样,如果有自己学过但是不知道的东西,就挂在那里晒着鞭尸,一直不会就一直鞭尸,直到自己参透了其中的道理再回到这里补全 在 ...
- 跟我一起学Redis之Redis概述
背景 技术的更新迭代,是程序员最最最头大的事,总是在每个网络角落中有感慨声:学不动啦: 其实新技术并不是凭空而出,而是随着业务推进.数据驱动.技术积累促使开发者的不断探索和实践,最终横空出世--&qu ...