- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 CitrusFramework 进行 Rest API 测试。我已经扫描了该方法,但没有得到任何可以打印响应堆栈跟踪的内容。
问候比杜
最佳答案
我假设您想要分析从被测服务器获得的 HTTP 响应的详细信息。
首先,您需要将 Citrus 的日志级别设置为 DEBUG
。您可以在 Citrus sample-http
存储库中找到有关如何实现此目的的示例:
https://github.com/christophd/citrus-samples/blob/master/sample-http/src/test/resources/log4j.properties
有两点需要注意:
log4j.logger.com.consol.citrus=DEBUG
:将所有 Citrus 类设置为以 Debug模式登录log4j.appender.out=org.apache.log4j.ConsoleAppender
会将日志附加到控制台日志,因此它会显示在您的控制台中。除非您的项目中已有 log4j.properties
或 log4j.xml
,否则您只需从示例中复制 log4j.properties
将您的项目添加到 src/test/resources/
中。
否则,您需要将条目添加到现有的 Log4J 设置中。
可以在 sample-flightbooking
中找到一个不同的更复杂的示例(使用 Log4Js XML 格式):
https://github.com/christophd/citrus-samples/blob/master/sample-flightbooking/src/test/resources/log4j.xml
如果您将 Citrus 设置为 DEBUG
,那么您会在日志中发现类似于以下内容的内容:
18:10:55,743 DEBUG ingClientInterceptor| Sending Http request message
18:10:55,744 DEBUG Logger.Message_OUT| GET https://jsonplaceholder.typicode.com/posts/1
Accept:text/plain, application/json, application/*+json, */*
Content-Type:text/plain;charset=UTF-8
Content-Length:0
18:10:56,096 DEBUG ingClientInterceptor| Received Http response message
18:10:56,096 DEBUG Logger.Message_IN| HTTP/1.1 200 OK
Date:Mon, 07 Aug 2017 16:10:52 GMT
Content-Type:application/json; charset=utf-8
Transfer-Encoding:chunked
Connection:keep-alive
Set-Cookie:__cfduid=d5ca2a6c467ea8aa495ab766d86e16eef1502122252; expires=Tue, 07-Aug-18 16:10:52 GMT; path=/; domain=.typicode.com; HttpOnly
X-Powered-By:Express
Vary:Accept-Encoding
Access-Control-Allow-Credentials:true
Cache-Control:public, max-age=14400
Pragma:no-cache
Expires:Mon, 07 Aug 2017 20:10:52 GMT
X-Content-Type-Options:nosniff
Etag:W/"124-yiKdLzqO5gfBrJFrcdJ8Yq0LGnU"
Via:1.1 vegur
CF-Cache-Status:HIT
Server:cloudflare-nginx
CF-RAY:38ab822e68527d08-MUC
{
"userId": 1,
"id": 1,
"title": "sunt aut facere repellat provident occaecati excepturi optio reprehenderit",
"body": "quia et suscipit\nsuscipit recusandae consequuntur expedita et cum\nreprehenderit molestiae ut ut quas totam\nnostrum rerum est autem sunt rem eveniet architecto"
}
如您所见,您将在日志中找到整个 HTTP 跟踪。
如果您需要真正的 HTTP 跟踪,并且不依赖于任何日志框架,那么最可靠的方法是使用 Wireshark 或 TCPMon 等嗅探器工具。我有时使用 TCPMon(即使不再支持)进行调试。
另一种方法是向 HTTP 客户端添加拦截器,如 Citrus documentation 中所述。 。这就是 Citrus 的 LoggingClientInterceptor
记录 HTTP 跟踪的方式,您可以在示例中看到。
关于citrus-framework - Citrus Framework - 如何跟踪和打印服务器的响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45498348/
我正在使用 CitrusFramework 进行 Rest API 测试。我已经扫描了该方法,但没有得到任何可以打印响应堆栈跟踪的内容。 问候比杜 最佳答案 我假设您想要分析从被测服务器获得的 HTT
我正在使用 CitrusFramework 进行 Rest API 测试。我已经扫描了该方法,但没有得到任何可以打印响应堆栈跟踪的内容。 问候比杜 最佳答案 我假设您想要分析从被测服务器获得的 HTT
我正在使用静态响应端点适配器返回从资源文件获取的模拟服务响应: private void setAdapterResponse(StaticResponseEndpointAd
我正在尝试使用 citrus 向 sftp 服务器进行身份验证我已经在这样的上下文文件中提供了用户名和密码 当程序正在执行时,我得到一些类似的提示 "KEBROS USERNAME : " 输入用
我正在使用 TestNg 框架来执行柑橘框架测试用例。在下面的代码中,我无法获取柑橘文本上下文对象,在执行测试用例时出现错误 import org.testng.annotations.Optiona
我正在将柑橘支付集成到 Android 应用程序中,在我的交易成功之前,一切都在沙箱中运行良好,但是一旦我的交易成功,我就会看到以下日志: MOTO 成功***{"txMsg":"交易成功","pgR
我是 Citrus 的新手,所以我尝试执行 航类预订示例,但我遇到了一些问题。首先,我认为有一点 自述文件错误(https://github.com/christophd/citrus-samples
使用 Citrus 测试框架对服务器进行测试时,我无法禁用证书检查。 我收到以下错误:org.springframework.web.client.ResourceAccessException:“”
我有一个带有元素 ValidationFault 的 XML 负载。我的验证的一部分是确认 ValidationFault 元素在 XML 负载中仅出现一次。使用以下 Citrus Java DSL:
我一直在研究 Citrus Framework 并下载了示例项目文件夹。运行指令指示如何构建代码、启动 Jetty 服务器以及运行所包含的各种测试。我已经尝试过这个,并且构建仅在第二个模块之后失败。这
我有一组通过Spring Boot实现的微服务,它们通过HTTP REST进行通信。我正在尝试使用Citrus框架设置集成测试。我已经为某些服务成功编写并执行了集成测试,但是正在为更复杂的用例而苦苦挣
我正在评估用于休息服务黑盒测试的 citrus-framework。 有没有办法使用 java DSL 和条件容器根据状态代码进行验证? http(httpActionBuilder -
我正在尝试测试以下两个 REST 调用: 请求 1 GET getLatestVersion Response: {"version": 10} 请求 2 POST getVersionData (b
我想对使用 Netty 构建的套接字服务器进行一些单元测试。 Socket Server 有如下简单的代码: import io.netty.bootstrap.ServerBootstrap; im
背景: 我有一个包含三个服务的简单Spring Boot应用程序。服务通过HTTP REST调用进行通信。以下是对服务的简要说明。 任务计划者(localhost:9100) 编排任务的“计划”。调用
我正在尝试在柑橘行为类中发送 image.jpeg,就我而言,我收到的响应是一个空白页面,这不是我所期望的。 这是我的代码: @Override public void run(Sce
我正在从 AMQ 代理获取消息,并且需要验证纯文本负载。看来 citrus 在纯文本验证方面非常有限,并且验证匹配器无法让我到达需要的位置,因此我需要使用 java 代码来处理它。 代码是使用基本的
我正在尝试通过 Citrus-Framework 发送和接收 TCP 消息,我在其中使用了这个线程作为引用: Receiving messages from tcp server with Citru
我必须将 Citrus 支付网关集成到我的 Android 应用程序中,我们将不胜感激。 website here提前谢谢你。 最佳答案 Citrus 提供了一些真正简化的开发人员指南,以实现高效的技
我正在尝试使用 Citrus Framework 从 JSON 响应中获取一些信息,但我不确定 .extractFromPayload 方法是如何工作的。例如,我发出 GET 请求,JSON 响应为:
我是一名优秀的程序员,十分优秀!