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

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

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. 9.6 Binder系统_驱动情景分析_server的多线程实现

    当多个client对server发出请求的时候,如果server忙不过来的时候会创建多线程来处理请求 那么忙不过来由谁来判断? server进程有个binder_proc结构体,其里面有todo链表( ...

  2. SourceInsight打开的工程中中文字体显示乱码的问题

    1.在ubuntu下进入文件所在目录执行指令“file *”来查看文件的编码方式,sourceinsight有些版本只支持GB2312和ascil码,所以需要编码转换: 2.在ubuntu下可以通过i ...

  3. [RxJS] Stopping a shared observable execution

    ConnectableObservable has the connect() method to conveniently dictate the start of the shared execu ...

  4. python课程:python3的输入输出

    输出函数用法 (话说python3的输出好像没有python2的灵活了) print('hello,world')   #单引号和双引号都可以输出print("hello,world&quo ...

  5. Android——WebView方式开发web App

    昨天接到个酬劳丰厚的任务.把java新生系统做成webApp,想想蛮简单的.所以当时就装作非常为难的样子答应了. 所谓Web App,用曾经我那个老PM的话来说.就是在壳里面套上页面.这里的壳相当于浏 ...

  6. Solving the Problem of Overfitting

    The Problem of Overfitting Cost Function Regularized Linear Regression Note: [8:43 - It is said that ...

  7. iOS开发Block的介绍以及Block的循环引用问题

    1:block的循环引用问题最主要记住两点: 如果[block内部]使用[外部声明的强引用]访问[对象A], 那么[block内部]会自动产生一个[强引用]指向[对象A] 如果[block内部]使用[ ...

  8. 二:新浪微博:第三方框架管理工具CocoaPods的安装和使用

    一:CocoaPods的安装 我们可以用淘宝的Ruby镜像来访问cocoapods.按照下面的顺序在终端中敲入依次敲入 $ gem sources --remove https://rubygems. ...

  9. 【60.97%】【BZOJ 1925】 [Sdoi2010]地精部落

    Time Limit: 10 Sec  Memory Limit: 64 MB Submit: 1194  Solved: 728 [Submit][Status][Discuss] Descript ...

  10. [Vue] Parent and Child component communcation

    By building components, you can extend basic HTML elements and reuse encapsulated code. Most options ...