一般我们进行完功能测试,都需要进行下性能测试,那么这章我来介绍下,RobotFramework与loadrunner性能测试的融合,即运行完自动化功能测试,借助RobotFramework的Remote库来执行性能测试。

13.1 准备条件

A:一台pc,系统win7,安装有python、RobotFramework及ride。

B:一台pc,安装有loadrunner,python,IP为192.168.8.231

C:一台服务器

13.2 结构图

13.3步骤

13.3.1 下载robotremoteserver.py(Remote Server)并修改

Robotremoteserver.py为远程服务脚本,客户端通过它来调用服务器端的测试库来执行测试,下载地址如下:

http://robotframework.googlecode.com/hg/tools/remoteserver/robotremoteserver.py

Robotremoteserver.py中需要修改的地方,就是host和port:

  1. def __init__(self, library, host='192.168.8.231', port=8270, allow_stop=True):
  2. SimpleXMLRPCServer.__init__(self, (host, int(port)), logRequests=False)
  3. self._library = library
  4. self._allow_stop = allow_stop
  5. self._register_functions()
  6. self._register_signal_handlers()
  7. self._log('Robot Framework remote server starting at %s:%s'
  8. % (host, port))
  9. self.serve_forever()

修改: 设置host和port为安装loadrunner的测试机ip及端口

13.3.2 创建远程测试库(Test Library)

创建exampleremotelibrary.py脚本,脚本内容如下:

  1. import os
  2. import sys
  3. class ExampleRemoteLibrary:
  4. """Example library to be used with Robot Framework's remote server.
  5. This documentation is visible in docs generated by _libdoc.py_
  6. starting from Robot Framework 2.6.2.
  7. """
  8. def __init__(self):
  9. """Also this doc should be in shown in library doc."""
  10. def run_performance_test(self,scriptname):
  11. run_pfm_str = ''
  12. run_pfm_list = ["wlrun.exe -TestPath ",scriptname," -port 8080 -Run -DontClose"]
  13. os.chdir("C:\\Program Files (x86)\\Hp\\LoadRunner\\bin")
  14. os.system(run_pfm_str.join(run_pfm_list))
  15. if __name__ == '__main__':
  16. from robotremoteserver import RobotRemoteServer
  17. RobotRemoteServer(ExampleRemoteLibrary(), *sys.argv[1:])

run_performance_test函数为调用loadrunner的wlrun.exe,执行给出的场景脚本。

13.3.3运行服务端测试库

Exampleremotelibrary.py和Robotremoteserver.py都放置在安装loadrunner的PC上。

在安装loadrunner的PC上执行如下命令:

‘python   exampleremotelibrary.py’

13.3.4 用例写作及执行

下面操作是在RobotFramework及ride安装的PC上。

①测试套(suite)中引入Remote

注意:Remote后面的参数192.168.8.231:8270是测试执行机(安装loadrunner的PC)的ip及端口

②在用例中调用远程测试库

我们调用run_performance_test这个函数,E:\\loadrunner\\Scenario1.lrs是性能测试的场景脚本:

转至:https://blog.csdn.net/mengfanbo123/article/details/9042661

RobotFrameWork(十三)RobotFramework与loadrunner性能测试结合(基于Remote库)的更多相关文章

  1. LoadRunner性能测试巧匠训练营

    <LoadRunner性能测试巧匠训练营>基本信息作者: 赵强 邹伟伟 任健勇 丛书名: 实战出版社:机械工业出版社ISBN:9787111487005上架时间:2015-1-7出版日期: ...

  2. LoadRunner性能测试结果分析

    LoadRunner性能测试结果分析http://www.docin.com/p-793607435.html

  3. LoadRunner性能测试专项班隆重开班

    LoadRunner性能测试专项班隆重开班 POPTEST首届高级性能测试提升强化班开课. 也许你只是看到成功者的光鲜,却没看到他们的努力和汗水.不要否定现在,要看到未来.提高自己.怎么自己.成就自己 ...

  4. 如何学习LoadRunner性能测试?

    最近组内同事针对性能测试LR的脚本部分做了介绍,是个不错的分享.会后反思自己也有很长一段时间没做性能测试了,根据以往的经验,有必要做些整理和补充,本文主要介绍一些Loadrunner性能测试的学习方法 ...

  5. LoadRunner性能测试入门教程

    javaweb性能测试那些事 一:什么是javaweb性能测试: 二:javaweb性能测试基本流程 三:javaweb性能测试常用指标: 1:响应时间:2-5-8 原则 2:吞吐量 3:资源使用率 ...

  6. LoadRunner性能测试结果分析(转载)

    性能测试的需求指标:本次测试的要求是验证在30分钟内完成2000次用户登录系统,然后进行考勤业务,最后退出,在业务操作过程中页面的响应时间不超过3秒,并且服务器的CPU使用率.内存使用率分别不超过75 ...

  7. LoadRunner性能测试样例分析

    LR性能测试结果样例分析 测试结果分析 LoadRunner性能测试结果分析是个复杂的过程,通常可以从结果摘要.并发数.平均事务响应时间.每秒点击数.业务成功率.系统资源.网页细分图.Web服务器资源 ...

  8. LoadRunner性能测试工具下载

    LoadRunner性能测试工具 LoadRunner是前美科利(Mercury Interactive)公司著名的性能测试产品.Mercury公司曾经是全球业务优化科技领域的领导者.2006年由惠普 ...

  9. WebGIS中基于控制点库进行SHP数据坐标转换的一种查询优化策略

    文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/ 1.前言 目前项目中基于控制点库进行SHP数据的坐标转换,流程大致为:遍 ...

随机推荐

  1. 最全的MonkeyRunner自动化测试从入门到精通(1)

    一.环境变量的配置 1.JDK环境变量的配置 步骤一:在官网上面下载jdk,JDK官网网址: http://www.oracle.com/technetwork/java/javase/downloa ...

  2. Excel--数据透视图

    原文:https://ke.qq.com/course/289406 1.数据源注意项 2. 3.选中数据源操作 任意选中数据源表格中的单元格(有值得单元格),插入数据透视表 默认数据源区域就是整个表 ...

  3. pacakge-info.java

    翻看以前的笔记,看到一个特殊的java文件:pacakge-info.java,虽然有记录,但是不全,就尝试着追踪一下该问题, 分享一下流水账式的结果. 首先,它不能随便被创建.在Eclipse中, ...

  4. python-面向对象-05_面向对象封装案例 II

    面向对象封装案例 II 目标 士兵突击案例 身份运算符 封装 封装 是面向对象编程的一大特点 面向对象编程的 第一步 —— 将 属性 和 方法 封装 到一个抽象的 类 中 外界 使用 类 创建 对象, ...

  5. SQL优化之踩过的坑【一】

    正看资料看的过瘾,突然收到报警,说服务器负载太高,好吧,登录服务器看看,我擦嘞,还能不能愉快的玩耍了?下面是当时的负载情况 看见mysql使用cpu已经到了2000,io没有等待.说明应该没有大的临时 ...

  6. entry.define编程思路

    0.lua将文字传给场景脚本. 1.场景脚本将pattern.define文件中的PAT当作子弹(水泡弹,带颜色) 2.用户的问题作为客户端的请求,发送给服务器端 3.服务器端接受客户端的问题请求 4 ...

  7. 万恶之源 - Python生成器

    生成器 首先我们来看看什么是个生成器,生成器本质就是迭代器 在python中有三种方式来获取生成器 1.通过生成器函数 2.通过各种推到式来实现生成器 3.通过数据的转换也可以获取生成器 首先,我们先 ...

  8. [sh]basename&dirname截取路径和文件名&case参数选项

    给出全路径,取出路径和文件名 basename使用示例 http://codingstandards.iteye.com/blog/840784 示例一 [root@web ~]# basename ...

  9. Tomcat部署及优化

    一.Tomcat安装部署 一.安装jdk和Tomcat 1.上传jdk和Tomcat mkdir -p /opt/tools/ /application ##jdk:jdk-8u131 tomcat: ...

  10. 【Java】-NO.16.EBook.4.Java.1.008-【疯狂Java讲义第3版 李刚】- 集合/容器

    1.0.0 Summary Tittle:[Java]-NO.16.EBook.4.Java.1.008-[疯狂Java讲义第3版 李刚]- 集合 Style:EBook Series:Java Si ...