【Robot Framework】robot framework 学习以及selenium、appnium实践

话说之前自己写了个selenium的自动化框架,然后又研究了下RF,觉得RF这种基于关键字驱动的框架更为容易上手,当然在做一些比较繁琐的验证时,似乎还不是太灵活,不如自己写几行python来的实惠(也可能是自己还没有太精通吧),但总体来说,有很好的RIDE交互界面,对于无编程基础的人很容易上手,而且很给力,这里就来学习一下

(一)Robot Framework介绍

robot framework是个通用的开源测试框架,支持关键字驱动,支持BDD,其case采用表格形式易读,可以同时测试多种类型的客户端或者接口,可以进行分布式测试执行,可以用于轮次很多的验收测试和验收测试驱动开发(ATDD),RF自身也有很丰富的内置基本库,此外有很好的扩展性,可扩展各种外置库(robotframework-appiumlibrary/robotframework-seleniumlibrary/robotframework-requests等等,具体自己去搜https://pypi.python.org/pypi?%3Aaction=search&term=robotframework&submit=search)。

(二)Robot Framework安装

1、安装python:建议安装python 2.7 ;下载地址https://www.python.org/downloads/

2、设置环境变量(计算机—属性—高级系统设置—环境变量—系统变量—Path,写入 C:\Python27 和 C:\Python27\Scripts(更改为您指定路径即可)。

3、安装pip: 现在get-pip.py ;下载地址https://pip.pypa.io/en/latest/installing/#id7 然后cmd下 python get-pip.py即可

python get-pip.py

4、安装Robot Framework:在 cmd下依次执行

pip install robotframework
pip install robotframework-ride
pip install robotframework-appniumlibrary
pip install robotframework-selenium2library
pip install robotframework-requests

5、在cmd下启动ride.py,会提示缺少wxpython

然后下载并安装wxpython: 下载地址 http://sourceforge.net/projects/wxpython/files/wxPython/2.8.12.1/ 选择与自己python版本一致的,直接安装,例如(wxPython2.8-win32-unicode-2.8.12.1-py27.exe),然后再启动ride.py

就可以启动ride了

(三)创建简单的RF项目

1、创建测试项目:选择菜单栏 File —>New Project,输入项目名称,选择 Directory type,选择目录。

2、创建测试suite:选中测试项目后右键,选择 New Suit,输入 name , 选择 File type。

3、创建测试case:选中TestSuite后右键,选择 New Test Case,输入 name 。

4、导入相关的库,例如Selenium2Library,点击testsuite,在Import处添加Library, 输入Selenium2Library

5、编辑测试用例

TestCase1
[Setup]
Open Browser http://gouwu.sogou.com
Wait Until Page Contains Element id=upquery 30 ‘tome out‘
Input Text id=upquery 手机
Click Button id=searchbutton
Close Browser
[Teardown] Close all browsers

勾选新建的case,运行,OK!

关于RF如何使用变量,验证等等,在以后会详细讲解

时间: 2024-10-14 11:37:16

【Robot Framework】robot framework 学习以及selenium、appnium实践的相关文章

Entity Framework 6.x 学习之 - 创建带连接表的实体模型 with Database First

1. 创建数据库表 CREATE TABLE [Album] ( [AlbumId] [int] NOT NULL IDENTITY(1, 1), [AlbumName] [varchar] (50) COLLATE Chinese_PRC_CI_AS NOT NULL ) ON [PRIMARY] GO ALTER TABLE [Album] ADD CONSTRAINT [PK_Album] PRIMARY KEY CLUSTERED ([AlbumId]) ON [PRIMARY] GO

Entity Framework Code First学习系列

Entity Framework Code First学习系列目录 Entity Framework Code First学习系列说明:开发环境为Visual Studio 2010 + Entity Framework 5.0+MS SQL Server 2012,在数据库方面Entity Framework Code First在Entity Framework 5.0仅支持MS SQL Server数据库.在接下来的随笔中,均使用项目名称为Portal的控制台应用程序为例.具体的系统学习目

jqMobi(App Framework)入门学习(一)

jqMobi(App Framework)入门学习(一) 1. 什么是jqMobi? jqMobi是由appMobi针对HTML5浏览器和移动设备开发的javascript框架,是个极其快速的查询选择库,支持W3C查询. jqMobi源码是基于jQuery源码重写的,但是两者又属于不同的产品,jqMobi体积更小,速度更快,兼容性也有所不同. 上面这段话来自百度百科,但是目前由于jqmobi已被收购并不断发展,而且jqmobi并不仅仅局限于查询选择库,所以上面的解释并不是很全面. 2. jqMo

Selenium Webdriver 学习总结-Selenium Grid & Webdriver(九)

QQ群: 136924235 论坛 : http://bbs.shareku.com Google教程:https://code.google.com/p/selenium/wiki/Grid2 Hub / Node 系统要求:JDK.firefox.chrome.internetExplorer 所需工具:selenium-server-standalone-xxx.jar 下载地址:http://code.google.com/p/selenium/downloads/list Start

分享《深度学习、优化与识别》PDF+《深度学习原理与TensorFlow实践》PDF+焦李成

下载:https://pan.baidu.com/s/1xj7GymClcExjn48rPwCowQ 更多资料分享:http://blog.51cto.com/14087171 <深度学习.优化与识别>PDF+<深度学习原理与TensorFlow实践>PDF<深度学习原理与TensorFlow实践>PDF,304页,有目录.<深度学习.优化与识别>PDF,411页,有目录. 如图: 原文地址:http://blog.51cto.com/14087171/23

MapServer Tutorial——MapServer7.2.1教程学习——第一节用例实践:Example1.1 A map with single layer

MapServer Tutorial--MapServer7.2.1教程学习--第一节用例实践:Example1.1 A map with single layer 一.前言 开始MapServer用例实践之旅,做项目算是可以比喻为考试,但是考试之前,还是以做练习题模拟考为主.下面实践一下官网的第一个例子:Example1.1 A map with single layer(官网地址:https://www.mapserver.org/tutorial/example1-1.html#examp

MapServer Tutorial——MapServer7.2.1教程学习——第一节用例实践:Example1.2 Static Map with Two Layers

MapServer Tutorial--MapServer7.2.1教程学习--第一节用例实践:Example1.2 Static Map with Two Layers 一.前言 上一篇博客<MapServer Tutorial--MapServer7.2.1教程学习--第一节用例实践:Example1.1 A map with single layer>中介绍了单图层的地图加载显示.下面根据官网的例子介绍两个图层的加载显示.官网地址:https://www.mapserver.org/tu

MapServer Tutorial——MapServer7.2.1教程学习——第一节用例实践:Example1.3 Displaying Classes in a Layer

MapServer Tutorial--MapServer7.2.1教程学习--第一节用例实践:Example1.3 Displaying Classes in a Layer 一.前言 关于第一节的案例,分别介绍了一个基本的地图站点应用程序创建和多图层地图站点 应用程序创建.这个案例 主要来介绍一下mapfile文件中 LAYER 对象里面,CLASS对象的应用. 同时还有如何根据CLASSITEM.EXPRESSION等配置去修改地图的显示方式. 最后还有一个很酷炫的方法一次性读取shp文件

MapServer Tutorial——MapServer7.2.1教程学习——第一节用例实践:Example 1.4 Labeling the Map

MapServer Tutorial--MapServer7.2.1教程学习--第一节用例实践:Example 1.4 Labeling the Map 一.前言 MapServer拥有非常灵活的标签标记系统.它支持bitmap以及truetype字体等.使用truetype字体同时还支持其缩放.标签的角度和位置是可以自定义的. 通过把标签的位置和角度以及其他参数的设置使用,你可以把你的地图装饰得更加美观,信息体现的更加丰富. 二.搭建Example1.4站点 所有的学习都要通过实践,还是从搭建

MapServer Tutorial——MapServer7.2.1教程学习——第一节用例实践:Example1.5 Adding a raster layer

MapServer Tutorial--MapServer7.2.1教程学习--第一节用例实践:Example1.5 Adding a  raster layer 一.前言 MapServer不仅支持矢量数据(point, lines, polygons, and annotations),同时也支持栅格数据.通过GDAL库,MapServer可以输入输出多种类型的栅格数据. 在4.x版本前,MapServer输出栅格数据仅限于单个图层.灰度图像或伪彩色图像. 当前版本支持RGB图像和多光谱图像