//上一篇的代码有点问题,问题出在 web_reg_find()函数中,这个函数简单的说是搜索下一步操作的请求对象(html)页面中是否存在相应的文本字符串。所以用在登录操作中,它搜索的是主页.html,用在注册中它搜索的就是注册页面,这里必须得感谢下51test论坛的luming同学帮我解决了这个问题。(所以虽然可以回放成功,但其实只是运气好,上一篇的示例代码就不去修改了,去掉web_reg_find函数就行了)。

(一) 代码

 1 Action()
2 {
3 /*集合点*/
4 lr_rendezvous("同时登录");
5
6 /*事务开始*/
7 lr_start_transaction("login");
8
9 //加载相应的url
10 web_url("WebTours",
11 "URL=http://127.0.0.1:1080/WebTours/",
12 "Resource=0",
13 "RecContentType=text/html",
14 "Referer=",
15 "Snapshot=t44.inf",
16 "Mode=HTML",
17 LAST);
18
19 //检查下一步操作请求对象(HTML页面)中是否存在相应的文本字符串
20 web_reg_find("Text=Welcome,","Search=Body",LAST);
21
22 //登录
23 web_submit_form("login.pl",
24 "Snapshot=t45.inf",
25 ITEMDATA,
26 "Name=username", "Value={username}", ENDITEM,
27 "Name=password", "Value={password}", ENDITEM,
28 "Name=login.x", "Value=58", ENDITEM,
29 "Name=login.y", "Value=11", ENDITEM,
30 LAST);
31 /*事务结束*/
32 lr_end_transaction("login", LR_AUTO);
33 return 0;
34 }

(二)设置、运行场景

  1. 运行Controller。

或者

1、可以选择面向目标场景、手动场景

面向目标场景:指定一个目标,loadrunner根据指定的目标自动生成方案。

手动场景:通过指定要运行的Vuser(虚拟用户数)手动创建方案。

2、选择面向目标场景时,可以设置场景目标。(这个比较像是直接测试软件是否符合用户需求,而不考虑系统能承受的最大负载、什么情况下系统会失效等问题)

场景目标设置好后,开始运行场景。

运行过程中,一开始还好,后面并发用户数多了后,CPU占用太高了

3、运行结束后(这里我因为没达到目标提前结束了)

查看错误信息。

第一个错误信息暂时看不明白。

第二个错误信息:web_reg_find 找不到welcome,

推测原因可能是:

1、 登录成功后,资源响应太慢(比如在响应的html页面只加载完成一部分内容的情况下,web_reg_find可能就执行检查了),没检测到该文本字符串

2、 没登录成功

第三个错误信息就很明显了,CPU占用过高。

(三)  分析结果、生成测试报告

1、打开Analysis。(点击Controller的结果-分析结果可以直接打开,也可以点击Analysis的快捷方式打开)

2、点击SLA配置向导,添加服务水平协议,这里设置90%的事务响应时间不超过0.5秒。(这个在Controller运行场景前也可以设置)

3、看这边应该是没达到预计的目标,目标是90%事务响应0.5秒,这里实际显示的是0.883。

4、生成html报告。(报告-html报告)

5、生成其他格式的测试报告(报告-新建报告)

直接点击【生成】,然后save保存一个格式就行了。没看到word格式的选项,不过可以导出PDF再转为word。

(三)  待解决问题

1、      场景设计应该加强,根据需求设计需要的场景

2、      SLA服务协议配置应该加强,熟悉不同指标、不同选项的作用

3、      生成报告部分,设置不同的报告模板,适应不同的用户。

4、      结果分析(不同图表、指标的分析及相关概念等)应该加强

LoadRunner生成测试报告的更多相关文章

  1. loadrunner笔记(三):设置、运行场景和生成测试报告

    //上一篇的代码有点问题,问题出在 web_reg_find()函数中,这个函数简单的说是搜索下一步操作的请求对象(html)页面中是否存在相应的文本字符串.所以用在登录操作中,它搜索的是主页.htm ...

  2. jmeter之jtl文件解析(生成测试报告)

    我们知道命令行的方式执行完成jmeter后,会生成jtl文件,里面打开后就是一行行的测试结果, <httpSample t="1" lt="1" ts=& ...

  3. jemeter生成测试报告

    Jmeter生成测试报告   相对于Loadrunner,Jmeter其实也是可以有测试报告产出的,虽然一般都不用(没有Loadrunner的报告那么强大是一方面),还是顺手写一下吧,其实方法在用命令 ...

  4. python+selenium生成测试报告后自动发送邮件

    标签(空格分隔): 自动化测试 运行自动化脚本后,会产生测试报告,而将测试报告自动发送给相关人员,能够让对方及时的了解测试情况,查看测试结果. 整个脚本包括三个部分: 生成测试报告 获取最新的测试报告 ...

  5. pycharm运行脚本为何不生成测试报告?

    今日使用python+selenium编写自动化测试脚本并执行过程中,使用pycharm运行结果后发现脚本运行无报错,脚本中的操作也正常被执行,但就是没有生成测试报告. 为什么呢,为什么呢,生成测试报 ...

  6. loadrunner生成随机数

    loadrunner生成随机数一: 对网站注册进行压力测试时,需要对注册的用户名进行参数化,因为可以会用到大量的测试数据,所以选择通过生成随机数来进行参数化.最开始用loadrunner自带的参数随机 ...

  7. Python单元测试框架之pytest -- 生成测试报告

    继续pytest单元测试框架的学习,pytest可以生成多种类型的测试报告.这一节就来学习pytest如何生成测试报告. 创建test_calss.py 测试用例文件,这里以测试该文件为例. #cod ...

  8. 调用test case集,并生成测试报告

    结构是 test_all.py 进行配置,执行所有测试用例集,并合并测试报告到同一个文件 #test_all.py 进行配置,执行所有测试用例集 # coding = utf-8 from time ...

  9. JMeter-自动生成测试报告

    很多朋友都在问jmeter如何生成测试报告,这里随便说两句. 环境要求 1:jmeter3.0版本之后开始支持动态生成测试报表 2:jdk版本1.7以上 3:需要jmx脚本文件 基本操作 1:在你的脚 ...

随机推荐

  1. 3种PHP实现数据采集的方法

    https://www.php.cn/php-weizijiaocheng-387992.html

  2. Docker从国内代理下载镜像

          docker从国内拉取镜像,或者通过加速器拉取         由于国内访问直接访问Docker hub网速比较慢,拉取镜像的时间就会比较长.一般我们会使用镜像加速或者直接从国内的一些平台 ...

  3. Python开发【杂货铺】:作用域的痛点

    1.块级作用域 想想此时运行下面的程序会有输出吗?执行会成功吗? #块级作用域 if 1 == 1: name = "lzl" print(name) for i in range ...

  4. ngix介绍

    ngix能做什么?  1 反向代理 2 负载均衡 3 正向代理 4 HTTP服务器(动静分离) 1 反向代理 Reverse Proxy 是指以代理服务器来接受来自internet或者是客户端的连接请 ...

  5. 怎样理解构造函数中的return语句

    因为构造函数也是一个函数, 自然也可以有return语句, 不过和一般函数不太一样的是, 在构造函数中如果return的是一个对象, 则会直接返回这个对象, 如果return 的不是一个对象, 那在n ...

  6. C#工厂模式案例

    class JianDanGongChang { static void Main(string[] args) { Factory factory=new LianXiangFactory(); D ...

  7. CentOS下 .Net Core 1.0 升级到 3.0 遇到的一个小问题

    之前.net core 1.0的安装方式,不是用yum方式安装的,所以,在用yum安装3.0之后,用dotnet --version还是1.0的版本,想起了之前 做过链接映射dotnet目录,删除之前 ...

  8. 七、Flex 布局

    布局的传统解决方案,基于盒状模型,依赖 display 属性 + position属性 + float属性.它对于那些特殊布局非常不方便,比如,垂直居中就不容易实现. 2009年,W3C 提出了一种新 ...

  9. POJ2729 Robocode(离散化与模拟-----提醒曾经爱玩游戏的自己没做出这个

    题目链接 :http://poj.org/problem?id=2729 题目很长,有不少也是废话.类似小时候玩的坦克大战.每个坦克速度为10,炮弹速度为20.子弹出界就消失,坦克出不了界限.相向的子 ...

  10. ElementUI 复杂顶部和左侧导航栏实现

    描述:如图 项目路径如下图所示: 代码实现: 首先在store.js中添加两个状态: import Vue from 'vue' import Vuex from 'vuex' Vue.use(Vue ...