由于近期公司需要,需要一个测试框架对于公司的服务做自动化测试。

由于服务的复杂性,人工测试的方式越来越复杂,体现在以下方面:

1.人工测试步骤复杂,容易出错。服务的复杂性会使人工测试的准备工作,测试条件以及测试反馈都越来越复杂。

2.人工测试难以重复。随着产品的迭代越来越快,人工测试需要不断重复测试,此时人力投入成本很高。

自动化测试框架

优点

1.测试步骤自动化,不像人工测试那样容易出错。

2.测试步骤可以反复进行,不需要或者很少需要人工介入。

3.测试步骤在接口等改变后,容易替换,因为其测试数据和测试步骤是分离。

缺点

1.测试自动化需要人编写代码,初期投入较大。

2.测试自动化需要人维护以及测试其正确性,维护也需要成本。

在这个阶段不得不新增自动化测试框架对于服务进行操作。我一个软件研发工程师现在需要做测试开发工程的工作还是有点变扭。

robot framework简介

robot framework是使用python语言写的一种验收测试和验收测试驱动开发(ATDD)的自动化测试框架,这是一个跨平台的自动化测试框架。由于robot framework的关键字以及测试套件特性。通过类似于函数一样的关键字不仅可以实现复用和组合编程,而且还可以通过python语言实现的函数来灵活地实现自动化测试。

robot framework适用场景

1.用于单元测试,这是没有问题的,一般单元测试中一般都是一步一步完成的

2.用于功能测试,这是没有问题的,一般功能测试中一般都是一步一步完成的

3.用于集成测试,这时有不合适的地方,rf一般是顺序执行的,但在集成测试中需要并发测试,这种测试需要加入写入的并发关键字

robot framework使用心得

1.自定义库

go test的函数调用gotest.py

 class GOTest(object):
def __init__(self):
pass
def run(self,goPath,binPath):
cmd = 'set GOPATH=' + goPath + ' && cd ' + binPath \
+ ' && go test -v'
res = os.popen(cmd)
if 'FAIL' in res:
return False
return True

robot framework的python库__init__.py

 from gotest import GOTest

 class GOTEST(GOTest):
ROBOT_LIBRARY_SCOPE = 'GLOBAL'

将其放入python的第三方库中就是Lib\site-packages。

通过robot framework创建资源的方式加载GOTEST库,然后通过robot framework的关键字对函数run加载。

2.测试用例

测试用例中setup可以初始化,teardown哪怕在失败时也会执行,编辑时可以使用关键字,如gotest | d:\\gotest | d:\\project。

3.测试套件

a.测试套件中setup可以初始化,teardown哪怕在失败时也会执行,编辑时可以使用关键字,如gotest | d:\\gotest | d:\\project。

b.测试套件的setting中可以加载资源以及自定义库。

4.使用命令行跑测试用例

pybot -T -o D:\\output D:\\testcase,这个命令schtasks /creat /tn 设定定时运行的名字 /tr “运行程序” /sc daily可以用于每日自动化用力运行

安装robot framework步骤

1.安装python

2.安装robot framework

3.安装wxPython

4.安装ride,这是robot framework的图形编辑界面

我眼中的robot framework的更多相关文章

  1. Robot Framework用户手册 (版本:3.0)

    版权信息:诺基亚网络和解决中心 本翻译尊重原协议,仅用于个人学习使用 1.开始: 1.1 介绍: Robot Framework是一个基于Python的,为终端测试和验收驱动开发(ATDD)的可扩展的 ...

  2. RIDE -- Robot Framework setup

    RobotFramework 是一款基于python 的可以实现关键字驱动和数据驱动并能够生成比较漂亮的测试报告的一款测试框架 这里使用的环境是 python-2.7.10.amd64.msi RID ...

  3. Robot Framework自动化测试 ---视频与教程免费分享

    当我第一次使用Robot Framework时,我是拒绝的.我跟老大说,我拒绝其实对于习惯了代码的自由,所以讨厌这种“填表格”式的脚本.老大说,Robot Framework使用简单,类库丰富,还可以 ...

  4. Robot Framework 的安装和配置(转载)

    Robot Framework 的安装和配置 在使用 RF(Rebot framework)的时候需要 Python 或 Jython 环境,具体可根据自己的需求来确定.本文以在有 Python 的环 ...

  5. 解决从jenkins打开robot framework报告会提示‘Opening Robot Framework log failed ’的问题

    最新的jenkins打开jenkins robot framework报告会提示如下 Verify that you have JavaScript enabled in your browser.  ...

  6. 在centos7中安装Robot Framework

    安装前景介绍: 最初,我们是在Windows环境下搭建Robot Framework来对我们的服务进行接口测试的(想知道如何在Windows下安装Robot Framework,可以参考我同事的博客h ...

  7. 移动端自动化环境搭建-Robot Framework的安装

    A.安装依赖 RF框架,robotframework本身. B.安装过程 可以通过下载 exe 程序进行安装,Robot Framework 分别提供了,win-amd64.exe 和 win32.e ...

  8. robot framework 安装配置

    robot framework 是一款专门用作自动化测试的框架,提供了丰富的内置库,与第三方库,也支持用户自己编写的库,robot framework +library 可以 用来做ui的自动化测试, ...

  9. Robot Framework入门学习1 安装部署详解

    安装注意: 目前Robot framework-ride不支持python3,安装时请下载python2.7版本. Robot Framework安装时出现了一点小问题,网上没有找到直接的介绍,现将安 ...

随机推荐

  1. UVA 11987 - Almost Union-Find

    第一次交TLE,说好的并查集昂. 好吧我改.求和.个数 在各个步骤独立算.. 还是TLE. 看来是方法太慢,就一个数组(fa),移动的话,移动跟结点要遍历一次 T T 嗯,那就多一个数组. 0.189 ...

  2. ftp 下载时防止从缓存中获取文件

    //http://baike.baidu.com/link?url=QucJiA_Fg_-rJI9D4G4Z4687HG4CfhtmBUd5TlXrcWCeIEXCZxIh0TD7ng1wROAzAu ...

  3. 【例题5-9 UVA - 1592】Database

    [链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] 枚举不同的列是哪两个列,然后枚举行. 把那一行的这两列的字符接在一起,然后用map判重. 为了防止逐个比较字符. 可以一开始先把字符 ...

  4. [TypeScript] Interface and Class

    When to use Interface and when to use Class. Let's see one example: export interface Lesson { course ...

  5. 算法求解中的变量、数组与数据结构(STL 中的容器)

    本质上算法都是对数据的操作,没有数据,没有存储数据的容器和组织方式,算法就是无源之水无本之木,就是巧妇也难为无米之炊.算法是演员,变量.数组.容器等就是舞台, 然后整个算法的处理流程,都是针对这些数据 ...

  6. POJ 3086 Triangular Sums (ZOJ 2773)

    http://poj.org/problem?id=3086 http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=1773 让你计算两 ...

  7. 【z08】乌龟棋

    描述 小明过生日的时候,爸爸送给他一副乌龟棋当作礼物. 乌龟棋的棋盘是一行N个格子,每个格子上一个分数(非负整数).棋盘第1格是唯一的起点,第N格是终点,游戏要求玩家控制一个乌龟棋子从起点出发走到终点 ...

  8. HDU4911-Inversion

    题意:依据题目要求交换相邻的两个元素k次,使得最后剩下的逆序对数最少 思路:假设逆序数大于0,存在0 <= i < n使得交换Ai,Ai+1后逆序数降低1,所求答案就为max(invers ...

  9. mysql 查询字段名所在的表

    select * from (select * from information_schema.COLUMNS where table_schema = '数据库名') temp where colu ...

  10. jquery-9 京东和酒仙网左侧导航如何实现

    jquery-9 京东和酒仙网左侧导航如何实现 一.总结 一句话总结:布局的话多用定位,由底往上一层层的来布. 1.如何实现导航向div的平滑滑动? 右侧div和左侧的li一定要放在一起 127 &l ...