51Testing软件测试论坛

标题: 日志中查找报文问题 [打印本页]

作者: shengyan    时间: 2009-3-3 16:29
标题: 日志中查找报文问题
在测试执行过程中一个请求完成了,会在日志中记录下相应的报文.但该报文不具有唯一性,因为没有时间之类的记录.
日志文件比如:
-------------------------------------------------------------------------------------------
执行发送线程!
- 执行扫描线程
- 执行发送线程!
- 执行扫描线程
- 执行发送线程!
- 执行扫描线程
- 执行发送线程!
- 执行扫描线程
- 执行发送线程!
- <------------------发送信息体------------->
- XXBB110100000091100000000071<req><user_no>a0330000002</user_no><sys_id>1</sys_id></req>XXEE
- <----------------返回信息体--------------->
- XXBB999900000230100000000210<res><return_code>0000</return_code><return_msg>成功</return_msg><return_num>1</return_num><group><exchange_no>11bbb100112052544C28EA7C</exchange_no><exchange_type>1001</exchange_type></group></res>XXEE
- <------------------发送信息体------------->
- XXBB110100000091100000000071<req><user_no>a0057100961</user_no><sys_id>1</sys_id></req>XXEE
- <----------------返回信息体--------------->
- XXBB999900000318100000000298<res><return_code>0000</return_code><return_msg>成功</return_msg><return_num>2</return_num><group><exchange_no>11bbb100112052544C28EAA0</exchange_no><exchange_type>1001</exchange_type></group><group><exchange_no>test4@hz.cn</exchange_no><exchange_type>1003</exchange_type></group></res>XXEE
- 执行扫描线程
- 执行扫描线程
- 执行发送线程!
- 执行扫描线程
- 执行发送线程!
- 执行扫描线程
- 执行发送线程!
- <------------------发送信息体------------->
- XXBB110100000091100000000071<req><user_no>a0330000002</user_no><sys_id>1</sys_id></req>XXEE
- <----------------返回信息体--------------->
- XXBB999900000230100000000210<res><return_code>0000</return_code><return_msg>成功</return_msg><return_num>1</return_num><group><exchange_no>11bbb100112052544C28EA7C</exchange_no><exchange_type>1001</exchange_type></group></res>XXEE
- <------------------发送信息体------------->
- XXBB110100000091100000000071<req><user_no>a0057100961</user_no><sys_id>1</sys_id></req>XXEE
- <----------------返回信息体--------------->
- XXBB999900000318100000000298<res><return_code>0000</return_code><return_msg>成功</return_msg><return_num>2</return_num><group><exchange_no>11bbb100112052544C28EAA0</exchange_no><exchange_type>1001</exchange_type></group><group><exchange_no>test4@hz.cn</exchange_no><exchange_type>1003</exchange_type></group></res>XXEE
- 执行扫描线程
- 执行发送线程!
------------------------------------------------
请问如何在QTP执行完请求之后,并用QTP当下服务器上的日志之后如何查找并定位本次请求的日志段

[ 本帖最后由 shengyan 于 2009-3-3 16:30 编辑 ]
作者: dreamever    时间: 2009-3-3 17:26
首先必须明确”本次请求“是如何界定的,也就是说,在不做自动化测试只是由人工测试的时候,是如何查找本次请求的日志段,不然脚本也没法写。如果人都无法处理的事情,自动化测试也帮不上太多的忙
作者: sweekun    时间: 2009-3-3 18:04
顶一下
作者: shengyan    时间: 2009-3-3 20:43
原帖由 dreamever 于 2009-3-3 17:26 发表
首先必须明确”本次请求“是如何界定的,也就是说,在不做自动化测试只是由人工测试的时候,是如何查找本次请求的日志段,不然脚本也没法写。如果人都无法处理的事情,自动化测试也帮不上太多的忙

”本次请求“就是从后台发送一个赠送,这个事件会生成一段报文去做请求,通过SOCKET接口的处理返回赠送结果.
在人工测试的时候要查看这段报文就是用  tail -f  去查看的

我现在处理的方式是:
1.在执行"本次请求"前先把日志文件取下来,读到未行,记下行号.
2.执行"本次请求"
3.再把日志文件取下来,从记下的行号开始把之后的日志记到文件B中.
4.从文件B中去查找匹配所要的报文
作者: dreamever    时间: 2009-3-3 21:01
你说的tail -f我暂时就先理解它是一个命令了,那你可以通过qtp执行这个命令,然后设法将返回的信息存到变量或者文本文件中,如果那个命令是CMD窗口下运行的,那么可以在命令后面加“>c:\test.txt”将命令信息输出到文本文件中,然后人工怎么判断的,就让脚本执行相同的判断就可以了。
作者: shengyan    时间: 2009-3-4 19:01
可以尝试一下你的方法




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