0

我正在测试一个 webapp,我想记录所有的 http 请求和响应,我该怎么做?
我只是在写

log =grinder.logger.info
def page15(self):
"""GET COPSApp (request 1501)."""
result = request1501.GET('/webdynpro/call_agent_dtop-login_wd/COPSApp')
log("---- -------------------------------")
返回结果

但它没有记录。我需要做什么才能登录

非常感谢

4

1 回答 1

1

请求记录

Grinder 通常会记录您的所有 HTTP 请求。所以至少对于请求日志,默认行为可能对你来说已经足够好了。查找名称如下的日志文件

<hostname>-0.log

在此文件中,您将看到您的请求以及服务器响应代码。

如果您想从代码中显式记录您的 http 请求,则需要使用与当前使用的模式稍有不同的模式。

    request1501.setUrl('/webdynpro/call_agent_dtop-login_wd/COPSApp')
    response1501=request1501.GET()
    log(request1501.getUrl())

响应记录

在记录 HTTP 响应时,您需要分别处理正文和标头。根据上面的代码示例,您可以像这样记录正文:

    log(response1501.getText())

有几种方法可以记录 HTTP 响应标头。最简单的方法是在单个语句中将它们全部转储到日志中,如下所示:

    log(response1501.toString())

要了解记录 http 响应标头的其他选项,以及您可以单独访问的不同内容,请参阅此处的 HTTPResponse API:

http://grinder.sourceforge.net/g3/script-javadoc/HTTPClient/HTTPResponse.html

登录

在您的问题中,您还问“我需要做什么才能登录”。我认为这是一个错字,您真正的意思是如何将内容写入日志。要进行实际登录,您需要提交用户名和密码,通常通过 HTTP 发布。Grinder 可以很容易地为您做到这一点,但该主题应在单独的问题中解决。

于 2012-07-06T21:49:26.513 回答