现在对于RF的应用方法已经有很多书介绍了,网上也可以搜到免费的电子书可以学习。今天就简单和大家介绍一下RF的用法之一,就是基于Selenium2Library库的使用。

1、首先需要安装Selenium2Library库,这时候就要用到之前说的pip啦~~~打开运行,输入pip install robotframework-selenium2library

回车后就会自动安装了。

2、然后回到RF,开始我们的RF之旅吧~~~

新建一个项目,选择New Project

注意,这里右侧的Type最好选Directory,也就是目录,这样在以后测试过程中就可以把同一个项目的用例放在同一个文件夹里。点击OK。

3、新建了文件夹以后,继续右键,新建一个“套”:

要知道在测试的过程中,即使一个功能也会有很多个测试用例,一个suit里就代表一个功能点。

名字自己根据测试的功能来取,右侧format选择txt格式的,这样在文件(Create Path)就会以.txt文本文件保存。

4、好,最后就是开始建测试用例啦:

继续右键吧~~~

选择新建测试用例,名字就是具体用例的测试点,比如:登录--空账号

5、好啦,一切就绪:

准备好以后就是上图的样子~~~

我们要做的就是在右侧的方格里写我们要写的脚本(写出的东西就叫脚本~)

写之前你是知道自己要干什么的,比如我现在要写打开浏览器,然后进行一些操作。而且不同的公司业务不同,我们必须要知道该怎么用各种关键字:按F5,打开search keywords:

在这里,你就可以知道相应的关键字该怎么用啦~~~比如搜索open browser,在安装了selenium2library库以后,你就可以看到这个方法需要输入的参数啦~~

6、现在我们只做一个打开浏览器的例子:

(1)点击建好的suit,看到如下页面:

点击Library,后输入Selenium2Library:

确定,如果是黑色的,就证明导入成功了;红色的说明Selenium2Library库安装失败了,重装一下吧~~(pip install robotframework-selenium2library)

(2)导入成功后回到方格界面:

输入:

看,open browser的颜色是蓝色的,证明已经找到了这个关键字(找不到是黑色的),后面是浏览器自动打开后打开的页面(这里写的是度娘),第三个则是使用的浏览器,我用的是chrome浏览器。

好,一切就绪,点击运行吧(快捷键F8)~~

(3)什么?浏览器没有打开?运行后是红色的??这说明用力失败了,那怎么行!看一下报错,不管是gekodriver还是chromedriver报错,都按着下面的方法来解决吧~~~

度娘搜索gekodriver和chromedriver,下载下来,解压以后都是.exe文件,不需要执行,直接把他们放到Python的安装文件夹下:

然后去环境变量(右键计算机-属性-高级系统设置-环境变量)

进入后把当前目录加到PATH中,注意PATH里面原来的东西都要保留哦,不同的路径用英文;分格:

这里还有一点需要注意,就是浏览器版RF也会有下面的返回:

这样,一个简单的打开浏览器的脚本就写好啦~~~

微信公众号搜索“自动化测试实战”或扫描下方二维码添加关注~~~

RF第二讲--Selenium2Library库的简单实用的更多相关文章

  1. python3网络爬虫系统学习:第二讲 基本库requests(一)

    之前,我们学习了基本库urllib的相关用法,但是在网页验证.Cookies处理等方面是比较繁琐的,需要用到Handler并且还需自己构建Opener.requests库的出现很好的解决了这个问题,下 ...

  2. 逆向实用干货分享,Hook技术第二讲,之虚表HOOK

    逆向实用干货分享,Hook技术第二讲,之虚表HOOK 正好昨天讲到认识C++中虚表指针,以及虚表位置在反汇编中的表达方式,这里就说一下我们的新技术,虚表HOOK 昨天的博客链接: http://www ...

  3. .NET 跨平台RPC框架DotNettyRPC Web后台快速开发框架(.NET Core) EasyWcf------无需配置,无需引用,动态绑定,轻松使用 C# .NET 0配置使用Wcf(半成品) C# .NET Socket 简单实用框架 C# .NET 0命令行安装Windows服务程序

    .NET 跨平台RPC框架DotNettyRPC   DotNettyRPC 1.简介 DotNettyRPC是一个基于DotNetty的跨平台RPC框架,支持.NET45以及.NET Standar ...

  4. 【军哥谈CI框架】之入门教程之第二讲:分析CI结构和CI是怎么工作的

    [军哥谈CI框架]之入门教程之第二讲:分析CI结构和CI是怎么工作的   之入门教程之第二讲:分析CI结构和CI是如何工作的大家好!上一节,我们共同部署了一个CI网站,做到这一点非常简单,但是,亲们, ...

  5. 32位汇编第二讲,编写窗口程序,加载资源,响应消息,以及调用C库函数

    32位汇编第二讲,编写窗口程序,加载资源,响应消息,以及调用C库函数 (如果想看所有代码,请下载课堂资料,里面有所有代码,这里会讲解怎么生成一个窗口程序) 一丶32位汇编编写Windows窗口程序 首 ...

  6. PE文件格式详解,第二讲,NT头文件格式,以及文件头格式

    PE文件格式详解,第二讲,NT头文件格式,以及文件头格式 作者:IBinary出处:http://www.cnblogs.com/iBinary/版权所有,欢迎保留原文链接进行转载:) PS:本篇博客 ...

  7. Robot Framework学习笔记(十)------Selenium2Library库

    一.安装selenium2library库 如果已经安装了pip,则使用管理员模式打开windows命令行,输入pip install robotframework-selenium2library, ...

  8. C#反射实现 C# 反射 判断类的延伸类型 使用代码生成工具Database2Sharp快速生成工作流模块控制器和视图代码 C# ADO.NET的SqlDataReader对象,判断是否包含指定字段 页面中添加锚点的几种方式 .net 简单实用Log4net(多个日志配置文件) C# 常用小点

    C#反射实现   一.反射概念: 1.概念: 反射,通俗的讲就是我们在只知道一个对象的内部而不了解内部结构的情况下,通过反射这个技术可以使我们明确这个对象的内部实现. 在.NET中,反射是重要的机制, ...

  9. OOM AutoMapper的简单实用

    OOM  AutoMapper的简单实用 一.前言: OOM顾名思义,Object-Object-Mapping实体间相互转换,AutoMapper也是个老生常谈了,其意义在于帮助你无需手动的转换简单 ...

随机推荐

  1. JavaScript内存泄漏知多少?

    垃圾回收解放了我们,它让我们可将精力集中在应用程序逻辑(而不是内存管理)上.但是,垃圾收集并不神奇.了解它的工作原理,以及如何使它保留本应在很久以前释放的内存,就可以实现更快更可靠的应用程序.在本文中 ...

  2. webstrom提示不见了

    今天做项目时候,不知道怎么搞的我的神编辑器webstrom没有了代码提示!!! 重启软件.重启电脑甚至卸载重装都不行,研究了半天终于知道问题出在了哪: 后来我发现在Webstorm的菜单[File]里 ...

  3. Ansible 开发调试 之【模块调试】

    本地调试 需要安装jinja2 库 yum -y install python-jinja2 使用官方提供的测试脚本调试 git clone git://github.com/ansible/ansi ...

  4. 2: 使用Prism初始化程序(纯汉语版)

    本篇内容讲解了Prism应用程序启动和运行都发生了什么.一个Pris应用程序在程序启动期间需要注册和配置——这被叫做引导应用程序.Prism引导过程包括创建和配置一个模块目录,创建一个例如Unity的 ...

  5. php5.4.0以后加入trait实现代码复用【摘录】

    在http://www.php.net/manual/zh/language.oop5.traits.php 查看了一下5.4.0提供的特性trait顺便做一个标记(总结): 首先要明确trait和类 ...

  6. linux basename学习

    basename 用法 basename 名称 [后缀]   例子 1. $: basename /tmp/test.sh 输出: test.sh 2. $: basename /tmp/test.s ...

  7. 2018-2019-2 《网络对抗技术》Exp2 后门原理与应用 20165210

    2018-2019-2 <网络对抗技术>Exp2 后门原理与应用 20165210 实验内容: 使用netcat获取主机操作Shell,cron启动. 使用Socat获取主机操作Shell ...

  8. Java -- 使用阻塞队列(BlockingQueue)控制线程通信

    BlockingQueeu接口是Queue的子接口,但是它的主要作用并不是作为容器,而是作为线程同步的工具. 特征: 当生产者线程试图向BlockingQueue中放入元素时,如果该队列已满,则该线程 ...

  9. 用JQuery怎么去一次性获取 aspTextBox 文本框的值

    如:<asp:TextBox ID="txtSubject" runat="server">aa</asp:TextBox> 第一次用服 ...

  10. 使用jQuery操作DOM(2)

    1.获取设置属性值 attr({属性名1:属性值1,属性名2:属性值2}); //设置属性值 removeAttr(“属性名”); //删除属性 注意:如果元素没有此属性,会不起作用 2.获取同辈元素 ...