今天继续进行一个更综合的脚本制作,录制设置、进行录制、脚本修改,一切都轻车熟路,进行得很顺利。经过近一个小时的对比和修改,OK,脚本大功告成,终于可以小试牛刀了,嘿嘿。
    运行,replay log一切正常(窃喜,小样,还不轻松搞定),看看服务器log,晕,一堆错误,这在直接操作时是不会的,估计脚本有问题,replay log看来是信不过的了(因为我没做另外的判断处理)。找了监控工具来查看请求和响应到底是怎么回事。哦,NULL_POINT_ERROR,空指针错误。没办法,慢慢排查咯。
    直接界面操作并监控请求和响应,再用脚本回放一下,对比,奇怪,没什么问题啊,所有的请求都很对,但怎么偏偏返回就出错了呢?折腾了半天没找出头绪,郁闷!没办法,找开发的同事帮忙吧。debuging...一会同事告诉我,请求的参数在服务器的解析中有乱码!shit,我在监控工具中看到的明明是正常的啊!!!再次分析,终于发现,原来http头一点不同,被我忽略了,那就是charset。通过web_add_auto_header("Content-Type","application/x-www-form-urlencoded;charset=UTF-8");在所有请求中自动添加上charset,回放,哈哈,过了!我举起了拳头,如同奥运会的世界冠军夺冠的那一刻。
    但是,事实证明,通往伟大的成功之路充满了坎坷,接着,我又受到了另一个打击。脚本后半部分运行中又出现了问题。比较奇怪的是这个方法请求前面都已经运行通过了,这次只是传输的参数不同,结果就错误了。这个就不再详细描述解决过程了,问题就是这个portlet中有两个报表,报表ID需要关联,结果前面的报表通过关联获取了正确的ID,然后执行第二个报表,当我再次刷新第一个报表的时候用的确是第二个报表的ID,这就导致了该错误。唉,都是关联惹得祸。
   
    总结:
    1、如果你自己没有进行错误判断,那么LR replaylog是信不过,因为除了HTTP级别的错误,服务器内部报错测试工具是无法发现的,最好自己处理。
    2、关注charset,或者说是HTTP Header的问题,这通常都会被我们所忽视。当你发现你的测试脚本的请求都很正常,但无法得到正确的响应时,请留意这一点。在LoadRunner HTTP协议中几个有用的选项一文中描述了录制设置方法。
    3、确保你很清楚被测产品的客户端与服务器如何交互的,并保持清晰的思路,最好在脚本制作前先整理一下你的思路,确保不会象我一样的糊涂。:)

Web测试中容易被忽略的Charset问题的更多相关文章

  1. Web测试中常见分享问题

         Web测试中,由于开发通常指注重完成H5页面的逻辑功能,对各种系统.浏览器等考虑不周,同时Android端各类机型碎片化,容易产生兼容性问题,这其中以分享类型为最. 本文简单分析总结一些测试 ...

  2. 【测试方法】Web测试中bug定位基本方法

    知识总结:Web测试中bug定位基本方法 涉及知识点:测试方法 在web测试过程中,经常会遇到页面中内容或数据显示错误,甚至不显示,第一反应就是BUG,没错,确实是BUG.进一步了解这个BUG的问题出 ...

  3. Web测试中定位bug方法

    在web测试过程中,经常会遇到页面中内容或数据显示错误,甚至不显示,第一反应就是BUG,没错,确实是BUG.进一步了解这个BUG的问题出在那里,是测试人员需要掌握的,可以简单的使用浏览器自带开发者工具 ...

  4. web测试中的测试点和测试方法总结

    测试是一种思维,包括情感思维和智力思维,情感思维主要体现在一句俗语:思想决定行动上(要怀疑一切),智力思维主要体现在测试用例的设计上.具有了这样的思想,就会找出更多的bug.   一.输入框 1.字符 ...

  5. 【转】Web测试中定位bug方法

    在web测试过程中,经常会遇到页面中内容或数据显示错误,甚至不显示,第一反应就是BUG,进一步了解这个BUG的问题出在那里,是测试人员需要掌握的,可以简单的使用浏览器自带开发者工具.数据库工具配合去排 ...

  6. Web测试中定位bug的方法

    在web测试过程中,经常会遇到页面中内容或数据显示错误,甚至不显示,第一反应就是BUG,没错,确实是BUG.进一步了解这个BUG的问题出在那里,是测试人员需要掌握的,可以简单的使用浏览器自带开发者工具 ...

  7. web测试中不容忽视的细节

    最近在自动化测试的圈子里,我总是碰到很多人在群里和其他地方问为什么这个会出现错误? 为什么这个运行不了?为什么我百度了还是没用? 其实真正的原因可能是你忽略了下面这些需要注意的小地方: 1.页面分辨率 ...

  8. <转+改>Web测试中关于登录的测试

    请问,你为自己写过的用例怀疑过吗? 前两天听一个朋友说他同事写了100个用例,结果有92个是无效的,差点被公司开了,本人以前也写过不少用例,但现在忽然怀疑我的用例了,觉得越来越糊涂了,拿登陆框来说吧, ...

  9. [Tommas] Web测试中,各类web控件测试点总结

    一 .界面检查 进入一个页面测试,首先是检查title,页面排版,字段等,而不是马上进入文本框校验 1.页面名称title是否正确 2.当前位置是否可见  您的位置:xxx>xxxx 3.文字格 ...

随机推荐

  1. bzoj 4724 [POI2017]Podzielno 二分+模拟

    [POI2017]Podzielno Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 364  Solved: 160[Submit][Status][ ...

  2. FreeMarker + xml 导出word

    转载自:http://hongqiang.iteye.com/blog/1632998 首先介绍几种java导出word方案 1.Jacob是Java-COM Bridge的缩写,它在Java与微软的 ...

  3. Struts2.X深入浅出 学习笔记

    第一节.MVC以及Struts2简介 第二节.Action生命周期以及接收表单数据 第三节.Struts2配置以及Struts.xml详解 Struts2 主要配置文件 Web.xml 设置过滤器以及 ...

  4. 诱惑当前 你的孩子能hold住吗?

    1.打好态度.动机.价值观基础 培养未成熟主体远大的志向,并不是向他们讲一些抽象的道理,而是根据他们的年龄特点,从形象的故事.童话开始,从身边的人物.事例出发,逐渐渗透一些人生的哲理.有一位自觉性非常 ...

  5. Redis 模糊匹配 SearchKeys

    语法:KEYS pattern说明:返回与指定模式相匹配的所用的keys.该命令所支持的匹配模式如下:(1)?:用于匹配单个字符.例如,h?llo可以匹配hello.hallo和hxllo等:(2)* ...

  6. 【POJ】2947 Widget Factory(高斯消元)

    http://poj.org/problem?id=2947 各种逗啊..还好1a了.. 题意我就不说了,百度一大把. 转换为mod的方程组,即 (x[1,1]*a[1])+(x[1,2]*a[2]) ...

  7. fileinput 小计(显示历史上传图片)

    今天又需要,要求在选中某条记录后显示历史上传图片 上传控件是fileinput.js 想法:界面有上传图片的控件,重新加载控件,并加入历史上传图片地址 实现代码: var filepathArray ...

  8. Arduino 舵机sg90电位器实现转动方向控制

    /* Sweep*/ #include <Servo.h> int potpin = 0;//电位器接到A0 int val; //存储电位器读取的数值 Servo myservo//定义 ...

  9. perl6中函数参数(2)

    use v6; #如果参数是可选的, 可以在后面加个?后定义 sub Choo($x, $y?){ say $x+$y; } Choo(); Choo(,); #具名参数, 也就是字典形式的调用 su ...

  10. 基于Django Form源码开发自定义Form组件

    import copy import re class ValidateError(Exception): def __init__(self, detail): self.detail = deta ...