robot framework笔记(一):环境配置(基于python3)+在pycharm中编写及运行robot脚本
(一)使用pip安装robotframework框架和seleniumlibrary库
pip install --upgrade robotframework
pip install --upgrade robotframework-seleniumlibrary
可以再安装一个测试数据编辑器(编辑器中直接运行就可以打开图形界面)
pip install robotframework-ride
(二)配置pycharm
1、路径:File-Setting-Plugins-Browse Repositories ,安装intelliBot,安装成功后,重启IDE


2、配置外部工具,路径File-Setting-Tools-External Tools(运行单个robot文件)
名字随便取,工具设置参考下面的配置就行了
Program: python安装目录\Scripts\robot.exe
Arguments:-d C:\Home\计算机编程\Python\site\schl_recuit\report "$SelectedText$" (不加-d也行,加这个指定测试报告生成目录)
Working directory:$FileDir$

3、配置外部工具,路径File-Setting-Tools-External Tools(运行测试套件)

4、路径:file-setting-editor-file types,配置文件类型。找到robot feature,新增*.robot和*.txt的文件类型

5、配置完成后,就可以直接在pycharm中编写脚本并运行了

(三)简单的示例(进入博客园登录页面,输入账户、密码,点击登录)
注:还有一个肯定要配置的环境就是浏览器相应版本的驱动,从网上下载一个,然后在环境变量加上驱动的路径就行了
。这个就不重复说明了,不知道的可以去看下我之前的python+selenium笔记(二)的内容,或者网上直接搜索就行了,很容易找到。
1、创建一个*.robot的文件,python3中,官方的建议是使用*.robot的文件格式。前面的配置没错的话,应该可以看到下面这种图标。

2、编写脚本
#setting部分导入测试库、资源文件、变量文件、初始化测试套件和用例等
*** Settings ***
Library SeleniumLibrary #variables部分定义需要使用的变量
*** Variables ***
${VOLID_USER} 1111
${VOLID_PASSWORD} 2222 ${LOGIN_URL} https://www.cnblogs.com/ ${LOGIN_LING} //a[@onclick="login();return false"] #主页面登录链接xpth
${USER_LOCAL} input1 #登录页面账户名输入框ID
${PASSWORD_LOCAL} input2 #登录页面密码输入框ID
${LOGIN_BTN} signin #登录按钮ID #testcase部分编写测试用例
*** Test Cases ***
Invlid Login
Open Brower To Home Page
Go To Login Page
INPUT USER NAME ${VOLID_USER}
INPUT PASSWORD ${VOLID_PASSWORD}
CLICK BUTTON ${LOGIN_BTN} #keyword部分,对框架已经实现的关键字进行组合,创建自己的关键字
*** Keywords ***
Open Brower To Home Page
OPEN BROWSER ${login_url} Chrome
MAXIMIZE BROWSER WINDOW
Home Page Should Be Open Go To Login Page
CLICK LINK ${LOGIN_LING}
LOGIN PAGE SHOULD BE OPEN Home Page Should Be Open
TITLE SHOULD BE 博客园 - 代码改变世界 Login Page Should Be open
TITLE SHOULD BE 用户登录 - 博客园 Input User Name
[Arguments] ${USERNAME}
WAIT UNTIL ELEMENT IS VISIBLE ${USER_LOCAL}
INPUT TEXT ${USER_LOCAL} ${USERNAME} Input Password
[Arguments] ${PASSWORD}
WAIT UNTIL ELEMENT IS VISIBLE ${PASSWORD_LOCAL}
INPUT TEXT ${PASSWORD_LOCAL} ${PASSWORD}

3、运行

4、另外说明下,robot常用的关键字主要在下面2个模块中定义,其中BuiltIn是框架内置的,不需要导入,会自动生效。要使用SeleniumLibrary库的关键字的话,需要在setting部分先导入SeleniumLibrary库。

BuiltIn

SeleniumLibrary.keyword

可以去里面看下实现,比较快熟悉,例如OPEN BROWSER关键字,第二个参数是url,并且必须要指定一个。第三个参数,默认用火狐浏览器打开。

robot framework笔记(一):环境配置(基于python3)+在pycharm中编写及运行robot脚本的更多相关文章
- Robot Framework 安装及环境配置
Robot Framework 安装及环境配置 Robot Framework 介绍 Robot Framework是一款python编写的功能自动化测试框架.具备良好的可扩展性,支持关键字驱动,可以 ...
- Robot Framework 教程 (1) - 环境配置及简单网站兼容性测试
0.Robot Framework 简介 Robot Framework 是一个通用的自动化测试框架,主要用于“验收测试”和“验收测试驱动开发(ATDD)” (会其它文章中会详细介绍ATDD).它使用 ...
- Robot Framework 使用【1】-- 基于Python3.7 + RIDE 最新版本搭建
前言 Robot Framework作为公司能快速落地实现UI自动化测试的一款框架,同时也非常适合刚入门自动化测试的朋友们去快速学习自动化,笔者计划通过从搭建逐步到完成自动化测试的过程来整体描述它的使 ...
- Robot Framework 使用1-环境配置及简单网站兼容性测试(转)
0.Robot Framework 简介 Robot Framework 是一个通用的自动化测试框架,主要用于“验收测试”和“验收测试驱动开发(ATDD)” (会其它文章中会详细介绍ATDD).它使用 ...
- Robot Framework 的安装和配置(转载)
Robot Framework 的安装和配置 在使用 RF(Rebot framework)的时候需要 Python 或 Jython 环境,具体可根据自己的需求来确定.本文以在有 Python 的环 ...
- Robot Framework 的安装和配置
Robot Framework 的安装和配置 在使用 RF(Rebot framework)的时候需要 Python 或 Jython 环境,具体可根据自己的需求来确定.本文以在有 Python 的环 ...
- Robot Framework自动化_环境搭建以及第一个用例
Robot Framework自动化_环境搭建以及第一个脚本 培训老师:肖能尤 2016/06/07 课程目的 一.Robot framework 环境搭建以及第一个脚本 课程内容 1 安装前准 ...
- 【转存】阿里云服务器下 LAMP 环境配置 —— 基于 CentOS 6.3
阿里云服务器下 LAMP 环境配置 —— 基于 CentOS 6.3 Posted on 2016年2月10日 by 学院君 1.Apache 配置 —————————————————– vi / ...
- Qt5学习笔记(1)-环境配置(win+64bit+VS2013)
Qt5学习笔记(1)-环境配置 工欲善其事必先-不装-所以装软件 久不露面,赶紧打下酱油. 下载 地址:http://download.qt.io/ 这个小网页就可以下载到跟Qt有关的几乎所有大部分东 ...
随机推荐
- java模式—装饰者模式
装饰者模式 1.意图: 动态地给一个对象添加一些额外的职责.就增加功能来说, Decorator模式相比生成子类更为灵活.该模式以对客 户端透明的方式扩展对象的功能. 2.适用环境 (1)在不影响其他 ...
- 【jQuery】(5)---jQuery CSS
jQuery CSS 1.jQuery 文档操作方法 1.addClass() 方法: addClass() 方法向被选元素添加一个或多个类.该方法不会移除已存在的 clas ...
- Leetcode 1-10
这篇文章介绍Leetcode1到10题的解决思路和相关代码. 1. Two sum 问题描述:给定一个整数数组,返回两个数字的索引,使它们加起来等于一个特定的目标. 例子: Given nums = ...
- vue开发中vue-resource + canvas 图片压缩、上传、预览
1.使用vue-resource上传,也可以自定义ajax上传: 2.使用<input type="file" @change="submit()" na ...
- zepto中的属性设置
上次看zepto的init方法时,有一段属性设置的代码,先来看看其表现: if (isPlainObject(properties)) { nodes = $(dom) $.each(properti ...
- Keras入门(一)搭建深度神经网络(DNN)解决多分类问题
Keras介绍 Keras是一个开源的高层神经网络API,由纯Python编写而成,其后端可以基于Tensorflow.Theano.MXNet以及CNTK.Keras 为支持快速实验而生,能够把 ...
- TensorFlow(3)CNN中的函数
tf.nn.conv2d()函数 参数介绍: tf.nn.conv2d(input, filter, strides, padding, use_cudnn_on_gpu=None, name=Non ...
- [转]VirtualBox centos7扩容
本文转自:https://www.cnblogs.com/xd502djj/p/7367704.html 有时候扩容还真不如重新建立一个大硬盘的系统,但是如果你安装了好多东西的话,那还是来扩容一下吧. ...
- C#序列化与反序列化。
序列化介绍: 把对象用一种新的格式来表示. 系列化只序列化数据. 序列化不建议使用自动属性 为什么要序列化: 将一个复杂的对象转换流,方便存储与信息交换. class Program { static ...
- 《Office 365开发入门指南教程》正式上线,限时优惠和邀请分享推广
我很高兴地通知大家,<Office 365 开发入门指南教程>已经正式在网易云课堂上线,你可以通过直接访问 https://aka.ms/office365devlesson 这个短地址 ...