因为最近改自动化框架在网上找了很多框架,发现RobotFramework不错,但是网上的资料很杂,现在将自己配置框架的学习笔记分享

Python配置RobotFramework的seleniumlibrary

前置条件:已安装python3

第一步:安装RobotFramework

cmd命令输入:python -m pip install robotframework

第二步:安装seleniumlibrary

cmd命令输入:py -m pip install --upgrade robotframework-seleniumlibrary

第三步:安装Test_Case编辑器

Python2使用的RIDE编辑器不支持python3,python3可用的编辑器包括Atom、Eclipse、Notepad++、IntelliJ IDEA、Sublime text 、Vim 都可以找到对应的插件,这里使用Notepad++

Step1: 下载插件包,下载地址https://github.com/vkosuri/npp-robot/archive/master.zip

Step2: 解压缩

Step3:在NotePad++里面点击语言->自定义语言格式->导入,选择导入step2解压缩文件中的lang-robot.xml

安装完成后Notepad++显示如下:

RobotFramework的seleniumlibrary使用

RobotFramework 用户手册

https://robotframework.org/robotframework/latest/RobotFrameworkUserGuide.html

RobotFramework 的seleniumlibrary关键字手册

列举了可以用的关键字

https://robotframework.org/SeleniumLibrary/SeleniumLibrary.html

RobotFramework的seleniumlibrary测试用例构成

测试用例格式如下:

————————————————————————————————————

*** Settings***

个空格分隔

Library    seleniumLibrary

*** Variables ***

个空格分隔

${LOGIN URL}      http://www.baidu.com

${BROWSER}        Firefox

${SEARCH_TEXT}       何发奋学习robot框架

*** Test Cases ***

,关键字操作所需要的参数2。。。

关键字    操作值    操作值    操作值

*** Keywords ***

关键字名称

,关键字操作所需要的参数2。。。

关键字    操作值    操作值    操作值

————————————————————————————————————

配置

定义的格式如下:

————————————————————————————————————

*** Settings ***

Library    seleniumLibrary

————————————————————————————————————

指定测试用例执行使用的库,是一个py文件,文件里面定义了对应的关键字方法

变量

定义的格式如下:

————————————————————————————————————

*** Variables***

${LOGIN URL}      http://www.baidu.com

${BROWSER}        Firefox

${SEARCH_TEXT}       何发奋学习robot框架

————————————————————————————————————

格式为变量名,变量值

测试用例

定义的格式如下:

————————————————————————————————————

*** Test Cases ***

测试用例名称

关键字    操作值    操作值    操作值

————————————————————————————————————

其中关键字操作操作的参数可能是0个也可能是多个,调用的时候首选找Keywords模块是否有对应的关键字,如果没有,再在seleniumLibrary里面找

关键字

定义的格式如下:

————————————————————————————————————

*** Keywords ***

关键字名称

关键字    操作值    操作值    操作值

————————————————————————————————————

在测试用例里面定义了关键字后具体运行顺序:

1.     首先会去keywords里面找对应的关键字

2.     如果keywords里面有对应的关键字,调用对应的关键字(来源于seleniumLibrary提供的库)

3.     如果keywords里面没有对应的关键字,则直接调用对应的关键字(来源于seleniumLibrary提供的库)

基于seleniumlibrary实例

编写测试用例文件如下:

将该文件以.robot为后缀保存

保存后在对应该文件目录的下进入cmd模式,执行python -m robot testbaidu.robot

查看执行结果

查看report.html文件

点击对应的测试集

点击对应的testcase

因为要验证页面显示“何发奋学习robot框架”验证失败,失败截图如下

20190923-基于Python3的RobotFramework的配置是初次使用的更多相关文章

  1. Sublime Text 2 (for OS X )配置成可以运行基于python3解释器的 .py文件

    Mac自带的python 其version是python 2.7 官网下的Sublime Text 2部署好了以后默认也是 为了使ST2 可以在command+B时可以运行基于python3的.py, ...

  2. 基于Python3 + OpenCV3.3.1的远程监控程序

    基于Python3 + OpenCV3.3.1的远程监控程序 一.环境配置 OpenCV是一个基于(开源)发行的跨平台计算机视觉库,利用OpenCV能够实现视频图像的捕获. 关于python3中Ope ...

  3. 从零学习基于Python的RobotFramework自动化

    从零学习基于Python的RobotFramework自动化 一.        Python基础 1)      版本差异 版本 编码 语法 其他 2.X ASCII try: raise Type ...

  4. 基于Python3 + appium的Ui自动化测试框架

    UiAutoTest 一.概要 数据驱动的Ui自动化框架 二.环境要求 框架基于Python3 + unittest + appium 运行电脑需配置adb.aapt的环境变量,build_tools ...

  5. django中基于python3.6使用容联发送短信

    一. Django基于python3.6使用容联发送短信流程 容联官方的python支持2.7版本,当我们python解释器采用3版本时,需要修改容联接口中的一些参数及方法. 首先去容联官网注册账号, ...

  6. xml配置和基于java类的bean配置搭配使用

    如果同时使用了xml配置,和java类的bean配置(当然估计项目中一般不会这样), 在初始化容器指定资源文件的时候可能会比较麻烦 此时我们可以把基于java类的bean配置整合到xml中,或xml的 ...

  7. springmvc国际化 基于浏览器语言的国际化配置

    当前标签: springmvc   springmvc国际化 基于浏览器语言的国际化配置 苏若年 2013-10-09 13:03 阅读:305 评论:0   SpringMVC中应用Ajax异步通讯 ...

  8. 开涛spring3(12.4) - 零配置 之 12.4 基于Java类定义Bean配置元数据

    12.4  基于Java类定义Bean配置元数据 12.4.1  概述 基于Java类定义Bean配置元数据,其实就是通过Java类定义Spring配置元数据,且直接消除XML配置文件. 基于Java ...

  9. Nginx--服务部署、基于域名的虚拟主机配置

    一.服务部署 1.预处理 安装CentOS ,配置hosts.静态IP.设置必要的安全参数等(略) 1-1.系统环境 [root@vnx ~]# cat /etc/redhat-release Cen ...

随机推荐

  1. MySQL优化时怎么入手?慢查询怎么优化?

    1.数据类型优化 2.创建高性能索引 3.架构底层配置方面 4.硬件 慢查询: 1.定位慢查询 首先先打开慢查询日志设置慢查询时间 2.分析慢查询(使用explain工具分析sql语句) 3.优化慢查 ...

  2. javascript/Jquery 将字符串转换成变量名

    var a = ['a', 'b', 'c'] var obj = {} for(i = 0; i < a.length; i++){ obj[a[i]] = "abc" + ...

  3. javacv开发详解之1:调用本机摄像头视频

    前言:javacv开发包是用于支持java多媒体开发的一套开发包,可以适用于本地多媒体(音视频)调用以及音视频,图片等文件后期操作(图片修改,音视频解码剪辑等等功能),这里只使用最简单的本地摄像头调用 ...

  4. 转,异常好的sql 基础知识整理

    转载自:http://blog.csdn.net/u011001084/article/details/51318434 最近从图书馆借了本介绍SQL的书,打算复习一下基本语法,记录一下笔记,整理一下 ...

  5. oom killer 详解

    一.oom killer理解和日志分析:知识储备 oom killer日志分析,这是前篇,准备一些基础知识 带着问题看: 1.什么是oom killer 是Linux内核设计的一种机制,在内存不足的时 ...

  6. simcom7600ce-t LBS function

    Welcome to minicom 2.7 OPTIONS: I18n Compiled on Nov 15 2018, 20:20:38.Port /dev/ttyUSB2, 00:55:23 P ...

  7. 爬虫(十):scrapy命令行详解

    建爬虫项目 scrapy startproject 项目名例子如下: localhost:spider zhaofan$ scrapy startproject test1 New Scrapy pr ...

  8. NetworkX系列教程(10)-算法之四:拓扑排序与最大流问题

    小书匠Graph图论 重头戏部分来了,写到这里我感觉得仔细认真点了,可能在NetworkX中,实现某些算法就一句话的事,但是这个算法是做什么的,用在什么地方,原理是怎么样的,不清除,所以,我决定先把图 ...

  9. 齿轮 HYSBZ - 4602 (DFS实现)

    齿轮 HYSBZ - 4602 题意:很好理解就不啰嗦了. 致谢:感谢队友小明. 题解:嗯,一开始想到的是并查集,后来,就先看了另一道题,xj写dfs和暴力,就卡死了.于是来补这题了,前向星建图 题解 ...

  10. YII框架的类自动加载机制

    YII之所以能实现快速的自动加载类文件,是因为它通过两种途径来实现. 先看文件 vendor\yiisoft\yii2\BaseYii.php 里面的 autoload 方法 public stati ...