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

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

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. Cmake 实现debug和release lib依赖项处理

    一.说明 最近用cmake开发东西,编译vs时候,发现debug和release版本的lib库的依赖项问题,故此小结一下.若有不对之处,还请看官多多指教. 使用的工程有自己编写的工程,也有借用第三方库 ...

  2. Android layer-list的属性和使用具体解释

    Android layer-list的属性和使用具体解释.layer-list是用来多个图层堆叠显示的,借这个特性能够做一些特别的效果(比方:阴影.以下的效果等),也能够投机取巧. 1.代码片 < ...

  3. java回调函数这样说,应该明确了吧!

    有哥们问我回调怎么用,回调怎么理解? 怎么说好呢,仅仅可意会不可言传呐,非也,回调在实际开发中使用频率事实上是非常高的,恰好我小时候也被回调函数欺负过,居然问了,那么肯定要好好分享一下我的一些经验. ...

  4. [Nuxt] Update Vuex State with Mutations and MapMutations in Vue.js

    You commit changes to state in Vuex using defined mutations. You can easily access these state mutat ...

  5. Android 利用an框架快速实现网络请求(含下载上传文件)

    作者:Bgwan链接:https://zhuanlan.zhihu.com/p/22573081来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处. an框架的网络框架是完全 ...

  6. POJ 1458 Common Subsequence (zoj 1733 ) LCS

    POJ:http://poj.org/problem?id=1458 ZOJ:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=73 ...

  7. 用css3解决移动端页面自适应横屏竖屏的思考

    之前对于横屏的webapp做过一些尝试,可是始终不是非常好的解决方式,前段时间又接触了类似的需求,尝试了感觉更好的解决方式. 之前的方法写的博客:移动网页横竖屏兼容适应的一些体会 这里举的样例还是平时 ...

  8. Opencv距离变换distanceTransform应用——细化字符轮廓&&查找物体质心

    Opencv中distanceTransform方法用于计算图像中每一个非零点距离离自己最近的零点的距离,distanceTransform的第二个Mat矩阵参数dst保存了每一个点与最近的零点的距离 ...

  9. JavaWeb网站技术架构

    JavaWeb网站技术架构总结   题记 工作也有几多年了,无论是身边遇到的还是耳间闻到的,多多少少也积攒了自己的一些经验和思考,当然,博主并没有太多接触高大上的分布式架构实践,相对比较零碎,随时补充 ...

  10. js 省市二级联动

    <html> <head> <meta charset="UTF-8"> <title></title> </he ...