51Testing软件测试论坛

标题: Web_reg_find是否对 {} 里的数据无法识别? [打印本页]

作者: jacckljl    时间: 2011-11-22 17:34
标题: Web_reg_find是否对 {} 里的数据无法识别?
脚本如下:
   web_reg_find("Text={\"message\":\"\",\"result\":\"true\",\"time",
                                 LAST);

        web_url("ie6.html",
                "URL=http://ec2-50-19-142-2.compute-1.amazonaws.com/todolist/ie6.html?loginName={NewParam}&loginpass=123456",
                "Resource=0",
                "RecContentType=text/html",
                "Referer=http://ec2-50-19-142-2.compute-1.amazonaws.com/todolist/",
                "Snapshot=t5.inf",
                "Mode=HTML",
                EXTRARES,
                "Url=files/images/content_bg.gif", "Referer=http://ec2-50-19-142-2.compute-1.amazonaws.com/todolist/{SilverJRunner2}6.html?loginName={NewParam}&loginpass=123456", ENDITEM,
                "Url=files/images/head_bg.gif", "Referer=http://ec2-50-19-142-2.compute-1.amazonaws.com/todolist/{SilverJRunner2}6.html?loginName={NewParam}&loginpass=123456", ENDITEM,
                "Url=login.action?flag=auth&loginName={NewParam}&loginpass=123456&timestamp=1321269948498", "Referer=http://ec2-50-19-142-2.compute-1.amazonaws.com/todolist/", ENDITEM,
                "Url=files/images/under_pic.jpg", "Referer=http://ec2-50-19-142-2.compute-1.amazonaws.com/todolist/{SilverJRunner2}6.html?loginName={NewParam}&loginpass=123456", ENDITEM,
                LAST);

日志如下:
signin.c(27):     0727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)\r\n
signin.c(27):     Accept-Encoding: gzip, deflate\r\n
signin.c(27):     Accept-Language: zh-cn\r\n
signin.c(27):     Accept: */*\r\n
signin.c(27):     Proxy-Connection: Keep-Alive\r\n
signin.c(27):     Host: ec2-50-19-142-2.compute-1.amazonaws.com\r\n
signin.c(27):     Cookie: JSESSIONID=5CA99F6FF76BBBA55F83C79B1108DCB8\r\n
signin.c(27):     \r\n
signin.c(27): t=22313ms: 259-byte response headers for "http://ec2-50-19-142-2.compute-1.amazonaws.com/todolist/login.action?flag=auth&loginName=bbem001&loginpass=123456&timestamp=1321269948498" (RelFrameId=, Internal ID=45)
signin.c(27):     HTTP/1.0 200 OK\r\n
signin.c(27):     Server: Apache-Coyote/1.1\r\n
signin.c(27):     Date: Tue, 22 Nov 2011 09:16:47 GMT\r\n
signin.c(27):     X-Cache: MISS from hkcloud1.gigabud.com\r\n
signin.c(27):     X-Cache-Lookup: MISS from hkcloud1.gigabud.com:8628\r\n
signin.c(27):     Via: 1.0 hkcloud1.gigabud.com:8628 (squid/2.6.STABLE21)\r\n
signin.c(27):     Proxy-Connection: close\r\n
signin.c(27):     \r\n
signin.c(27): t=22349ms: 51-byte response body for "http://ec2-50-19-142-2.compute-1.amazonaws.com/todolist/login.action?flag=auth&loginName=bbem001&loginpass=123456&timestamp=1321269948498" (RelFrameId=, Internal ID=45)
signin.c(27):     {"message":"","result":"true","time":1321921007091}
signin.c(27): t=22358ms: Server 127.0.0.1 has shut down the connection [0]          [MsgId: MMSG-26000]
signin.c(27): t=22362ms: Closed connection [0] to 127.0.0.1:8628 after completing 22 requests          [MsgId: MMSG-26000]
signin.c(27): t=22367ms: Request done "http://ec2-50-19-142-2.compute-1.amazonaws.com/todolist/login.action?flag=auth&loginName=bbem001&loginpass=123456&timestamp=1321269948498"          [MsgId: MMSG-26000]
signin.c(27): Error -26366: "Text={"message":"","result":"true","time" not found for web_reg_find          [MsgId: MERR-26366]
signin.c(27): web_url("ie6.html") highest severity level was "ERROR", 61021 body bytes, 4439 header bytes          [MsgId: MMSG-26388]


为什么无法识别呢?怎样才能让web_reg_find函数识别?请指教,谢谢!
作者: jacckljl    时间: 2011-11-22 18:46
自己顶~~~怎么没人解答呢? 在线等哦。。。
作者: msnshow    时间: 2011-11-22 20:46
本身有你要查找你内容么
作者: ymwang119    时间: 2011-11-23 09:30
web_reg_find("Text={\"message\":\"\",\"result\":\"true\",\"time",
                                 LAST);
函数本身就有问题吧
请问楼主你想查找的内容是什么
作者: thirfing    时间: 2011-11-23 09:49
本帖最后由 thirfing 于 2011-11-23 10:47 编辑

对{}可以识别,确保服务器返回内容中存在你想查找的内容(generation log中的server response中ctr+f查下,有没有你想找的字符)
作者: 夏日摸摸茶    时间: 2011-11-23 10:02
web_reg_find("Text={\"message\":\"\",\"result\":\"true\",\"time",
                                 LAST);
我觉得是这个检查内容没有设置正确的原因

上次我测试的时候 关联的内容也是一对反斜杠和双引号组成的东西,转义多次也报错,但最后定位出问题的原因是,不用考虑这些代码中的反斜杠,只考虑双引号就行。LR本身已经自动对内容进行了转义,这些反斜杠都是LR自己加载脚步中的,并不是真正页面中的内容,不知道你这个是不是也是这个原因啊

你把text里的反斜杠都删了 试试看
作者: jacckljl    时间: 2011-11-23 10:33
谢谢解答
我想查找的内容是:   {"message":"","result":"true"   ,   准确的来说应该是:“result":"true"
  web_reg_find函数关于 双引号需要转义的,所以函数中每个双引号前都有反斜杠的。
作者: jacckljl    时间: 2011-11-23 10:38
本帖最后由 jacckljl 于 2011-11-28 19:10 编辑

signin.c(27):    {"message":"","result":"true","time":1321921007091}----------服务器返回的消息
signin.c(27): t=22358ms: Server 127.0.0.1 has shut down the connection [0]          [MsgId: MMSG-26000]
signin.c(27): t=22362ms: Closed connection [0] to 127.0.0.1:8628 after completing 22 requests          [MsgId: MMSG-26000]
signin.c(27): t=22367ms: Request done "http://ec2-50-19-142-2.compute-1.amazonaws.com/todolist/login.action?flag=auth&loginName=bbem001&loginpass=123456×tamp=1321269948498"          [MsgId: MMSG-26000]
signin.c(27): Error -26366: "Text={"message":"","result":"true","time" not found for web_reg_find          [MsgId: MERR-26366]-----脚本检查的语句
--------------------感觉是一样的哦,没什么区别,为什么找不到呢?
作者: jacckljl    时间: 2011-11-23 13:35
顶起~
作者: jacckljl    时间: 2011-11-23 16:48

作者: msnshow    时间: 2011-11-23 19:53
不明白
作者: jacckljl    时间: 2011-11-24 12:04
不明白啥? 是我说的不明白吗?还是....
作者: ymwang119    时间: 2011-11-28 14:25
帮忙顶,求正解
作者: jacckljl    时间: 2011-11-28 18:35
,期待达人的出现....
作者: QqiaoQ    时间: 2011-11-30 12:59
你可以右击,添加web_reg_find,使机器自动生成,如果还是识别不了,说明是你参数化地点有问题
作者: jacckljl    时间: 2011-11-30 18:58
找到原因了,主要是web_url 函数中有一个EXTRARES ,而这个参数又执行了增加task功能,通过HTTP View查看,这个web_url 发出了两个请求,导致有两个相应,第一个相应是没有我查找的内容,而web_reg_find仅仅只能捕获最近的缓存查看。拆分为两个,中间加入web_reg_find就成功了。
作者: msnshow    时间: 2011-12-1 00:00
找到原因就好!
作者: TonyTonyChopper    时间: 2011-12-5 10:50
学习了.不错!!!




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2