关于RF做自动化大致流程的梳理
RF只是一个框架,类似于单元测试框架,可以实现对用例的有效管理。结合其它第三方库,可以进行,接口,数据库,APP的自动化测试。结合JENKINS,还可以进行有效的持续集成。
本文不讲调用第三方库的哪些关键字,只是简单梳理一下运用RF的一些基本流程。
一,RF的安装。
分为在线安装和离线安装。
我都是用的在线安装,离线安装的话可以参考“道长”写的RF的书中有关于离线安装的下载地址。
在线安装有个好处,就是第三方库所依赖的插件,别的库,都会自动装好。
在线安装的步骤:(其实“道长”都有介绍),主要是利用pip命令。
1,安装python,我用的是python2
2,安装robotframework,:pip install robotframework
3,安装setuptool,直接点击,一路下一步。最后配置环境变量。
4,安装wxpython,:pip install wxpython
5,安装ride: pip install robotframework-ride
因为PYTHON中自带有PIP,所以没有讲PIP的安装。
安装好后,配置下环境变量,就OK了。最后,CMD,输入ride.py就可以弹跳出,RF的界面了。(另外还有几种打开方式,自己可以百度,很简单的。)
2,RF做自动化测试依赖的几个常用的第三方库,分别为:Selenium2Library(UI自动化),Collections(同上),String(同上),DatabaseLibrary(数据库自动化),RequestsLibrary(接口自动化)
其中需要注意的是,selenium2Library,databaselibrary,requestslibrary,需要先安装,然后重启后,才能导入成功。
RF中的BuildIn库中的关键字经常使用。
3,RF中的分层思想。(在程序设计的讲究设计模式,设计模式其实就是根据需求使用抽象与封装,其实就是分层思想。把一个实现过程分成不同多层。提高的灵活性,从而达到可扩展性和可维护性。)
RF中新建项目后,我是先把几个常用库先导入后,再进行用例的设计。
首先是环境的管理等数据的准备,再进行用例的设计,然后关建字(我是分为:公共关键字与业务关键字两种)的编写,最后整理一套用例模板。
我平时工作的顺序是:理解需求后,先设计一下哪些部分需要做自动化测试,哪些部分不需要(具体项目具体分析,根据需求来的)。确定需要做自动化的部分后,然后先把一些常用的公共关键字封装一次,再写用例,碰到需要新的关键字时,再封装。当用例设计完成后。再编写业务关键字,并对用例进行第二次封装。然后就执行用例,维护用例,调优等工作,直到一切OK。
上面只是个大概的流程,具体的前提是功能已手工测试过。另外,有些是先进行接口测试,接口通过后,再进行UI层的自动化测试。
今天先写这么多,明天再补充。
关于RF做自动化大致流程的梳理的更多相关文章
- [每日电路图] 7、设计一个PCB的流程及细节·总结——给外行的同学或刚入行的同学一个宏观鸟瞰电路板设计的大致流程的文章
前言 最近两天使用AD14软件设计了一个蓝牙防丢器电路板(PCB)图纸,中间有一些细节在本文中记录下,方便下次设计PCB时参考.也希望能给外行的同学或刚入行的同学一个宏观鸟瞰电路板设计的大致流程的文章 ...
- 【原创】storyboard启动应用程序的大致流程
storyboard启动应用程序的大致流程 [原创] 转载请注明出处:http://i.cnblogs.com/EditPosts.aspx?postid=5395023 1. 用户点击APP图标—— ...
- 参与github上开源项目的大致流程和注意事项
Foreword github是一个很火的代码托管服务网站,可能好多人都想参与一两个项目玩一玩学习一下,但由于是纯英文的网站,可能又会止步于想法上没有动手实践.接下来我就介绍一下参与github上开源 ...
- AppVeyor-CI为GitHub项目做自动化集成(dotnet为主)
travis-ci对dotnet的项目做自动化集成不太友好,尤其是使用mono的编译和不能使用MSTest进行自动化测试,所以转到appveyor进行. appveyor的配置非常简单,有两种方式: ...
- 记录archlinux中安装pcl的大致流程
贴一下pcl在github上的网址: https://github.com/PointCloudLibrary/pcl/ 从这个网址出发,一般能找到安装的 tutorial.以下只说一下在archli ...
- Unity3D|-XLua热更新用法的大致流程
xlua是由腾讯维护的一个开源项目,我们可以在github上下载这个开源项目并查看一些相关文档 官网:https://github.com/Tencent/xLua 配置文档:https://gith ...
- 【Golang 接口自动化00】为什么要用Golang做自动化?
为什么使用Golang做自动化 顺应公司的趋势学习了Golang之后,因为没有开发那么多的时间和项目来实践,怕步此前学习Java缺少练习遗忘殆尽的后尘,决定利用工作之余的时间把此前用Python的写的 ...
- 解析XML文档大致流程以及相关方法
---恢复内容开始--- 使用dom解析XML文档的大致流程(要导入dom4j)1:创建SAXReader2:使用SAXReader读取xml文档,并生成对应的Document对象,该对象保存了该文档 ...
- [iOS 高级] iOS远程推送与本地推送大致流程
本地推送: UILocalNotification *notification=[[UILocalNotification alloc] init]; if (notification!=nil) { ...
随机推荐
- NetHogs——Linux下按进程实时统计网络带宽利用率
Debian/Ubuntu下安装很简单,执行:apt-get install nethogs 就可以安装. CentOS/RHEL下建议先安装上EPEL,再执行:yum install libpcap ...
- 阿里云Redis 配置
查看路径whereis redis 1.修改配置文件 vim /etc/redis.conf 这三个配置是必须的 修改内容,把 daemonize no 修改为:daemonize yes requi ...
- python find()函数
实例(Python 2.0+) str1 = "this is string example....wow!!!"; str2 = "exam"; print ...
- 二级域名解析设置及Apache 子域名配置
域名管理解析项 如: cy.wanggangg.top 为wanggangg.top域名添加解析 主机记录设为 cy 记录值 为服务器ip地址 打开apache配置文件 新增如下:<Virtua ...
- Intellij IDEA 安装Scala插件 + 创建Scala项目
一.IDEA 2018 Ultimate edition (旗舰破解版下载地址) 百度网盘地址:https://pan.baidu.com/s/1d9ArRH6adhDUGiJvRqnZMw 二.I ...
- 使用latex绘制多层神经网络结构图
1,使用Tikz包: 2,参考官方例程单层神经网络结构,绘制了一个含有3隐藏层的BP神经网络节点图 代码如下: \documentclass{article} \usepackage{tikz} \b ...
- mysqldump备份和恢复
一.备份单个数据库 1.备份命令:mysqldump MySQL数据库自带的一个很好用的备份命令.是逻辑备份,导出 的是SQL语句.也就是把数据从MySQL库中以逻辑的SQL语句的形式直接输出或生成备 ...
- pip安装Scrapy因网络问题出错备选方案
一 更改pypi默认源 执行 pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple 执行pip instal ...
- 关于JS递归函数求斐波那契数列两种实现方法
百度已经解释的很详细了,但是不写注释还真是看不懂,递归,就直接套公式了,for循坏,我们就用EXCEL看一下规律 可以看到B是A+B的和,A往后就是B的值,所以我们需要第三个变量来保存他们的和,取出B ...
- [轉]udp_sendmsg空指针漏洞分析 by wzt
udp_sendmsg空指针漏洞分析 by wzt 漏洞描述: 由于Linux ipv4协议栈中udp_sendmsg()函数设计上存在缺陷, 导致struct rtable *rt以空指针形式 ...