问题标签 [citrus-framework]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
401 浏览

citrus-framework - 发送带有编码 URI 的 http 请求

我试图发送http请求如下,使用柑橘测试框架http://www.citrusframework.org/

它正在传递一个 url 编码值,但是当它通过 Citrus.as 发送请求时再次编码时 tel%253A%252B94xxxxxxx

有没有办法正确发送编码的 URI?

0 投票
2 回答
1532 浏览

java - Citrus Framework - 可以从响应中分配变量吗?

我正在尝试测试以下两个 REST 调用:

请求 1

请求 2

是否可以将请求 1 中的“版本”分配给一个变量以在同一测试中的请求 2 中使用?

0 投票
1 回答
805 浏览

xml - 如何强制在 citrus-ws 上发送 XML 声明标签

我正在尝试使用 citrus-framework 进行简单的肥皂测试,但我无法让服务器接受该消息。经过一番挖掘,我发现发送的消息中不包含 xml 声明标签。

根据日志,它应该被发送:

但是从 TCP/IP Monitor 我看到的是这样的:

所以根据记录器的说法,它应该在那里,但是当检查通过管道的东西时,它不是。

我已经确认缺少的是 xml 声明(<?xml version="1.0" encoding="UTF-8"?>),将相同的消息直接发送到服务器和服务器进程没有它的请求与我运行柑橘测试时的结果相同(失败)。

有什么办法可以强制发送吗?在柑橘线程和春天搜索,但找不到解决方案。

我的 citrus-ws 配置文件:

java dsl块:

0 投票
1 回答
302 浏览

citrus-framework - 验证多个响应代码

我必须使用创建用户的 REST api。此 api 返回响应代码 201(已接受)、409(用户已存在)或其他代码,以防出现问题。我想验证收到的响应代码是 201 还是 409(而不是别的)。

现在我的代码只检查这些响应代码之一:

是否有可能改变这一点,所以这两个值都会导致 OK 测试?

干杯,埃德

0 投票
1 回答
424 浏览

citrus-framework - 有效载荷中的意外字符

我的 Citrus 测试向某些 REST API 发送(旅行)请求。响应处理如下:

虽然收到了响应代码 500,但这是我所期望的。在 Wireshark 中,我捕获了以下包:

当我将有效负载移动到模板时,我的测试的接收部分现在看起来像这样:

模板资源包含以下文本:

当我运行这个测试时,我收到了不同的响应代码:400。在 Wireshark 中,我捕获了以下包:

请注意,请求以意外的问号开头。这个问号在 Citrus 输出中不可见:

请注意左括号前的空格。

这是什么特殊人物吗?为什么将其添加到有效负载中?有没有合乎逻辑的解释?

干杯,埃德

0 投票
1 回答
202 浏览

citrus-framework - Continuosly running mocks while executing tests with Citrus Framework

I need to write automated tests for Enterprise Service Bus (ESB). When ESB is running it performs different scheduled operations including DB queries, SOAP and TCP calls, etc. Also it periodically checks whether some services are active and stops flows in case it is not.

So in my case there will be some problems:

  • some flows will stop because service is not responding
  • another flows will continuously run in negative scenariuos producing errors

Is it possible to have mocks continuosly running while executing tests using Citrus Framework?

How else can I overcome this problems with Citrus?

0 投票
1 回答
763 浏览

java - Citrus Framework - 使用 Spring 集成通过 SFTP 上传文件

作为 Citrus 测试的一部分,我想通过 SFTP 将 CSV 文件推送到服务器。使用 Spring Integration 似乎应该可以做到这一点。我尝试使用以下代码:

柑橘-config.xml

SftpTransferIT.java

在这种情况下会引发以下异常:

我认为错误在于我如何通过 Citrus 发送消息。有人可以建议如何通过 Citrus 正确发送 org.springframework.messaging.Message 吗?

还是在没有 Citrus 的 send() 的情况下使用纯 Spring 集成来执行这样的任务是更好的做法?

0 投票
1 回答
982 浏览

https - 如何在 Citrus 自动化框架中为 https 创建模拟服务器?

我一直在使用 Citrus 作为我的自动化框架并遇到了这个问题。

我正在调用一个 Web 服务,该服务调用另一个服务器以通过 https 调用获取访问令牌。我想使用静态端点适配器对 getToken 的响应进行硬编码。

我的代码:

Context.xml 文件

错误:

TID:[-1] [] [2017-05-17 12:33:27,726] 错误 {org.apache.synapse.transport.passthru.TargetHandler} - I/O 错误:无法识别的 SSL 消息,明文连接?{org.apache.synapse.transport.passthru.TargetHandler} javax.net.ssl.SSLException:无法识别的 SSL 消息,明文连接?在 sun.security.ssl.EngineInputRecord.bytesInCompletePacket(EngineInputRecord.java:156) 在 sun.security.ssl.SSLEngineImpl.readNetRecord(SSLEngineImpl.java:868) 在 sun.security.ssl.SSLEngineImpl.unwrap(SSLEngineImpl.java:781) ) 在 javax.net.ssl.SSLEngine.unwrap(SSLEngine.java:624) 在 org.apache.http.nio.reactor.ssl.SSLIOSession.doUnwrap(SSLIOSession.java:245) 在 org.apache.http.nio。 reactor.ssl.SSLIOSession.doHandshake(SSLIOSession.java:280) 在 org.apache.http.nio.reactor.ssl.SSLIOSession。

0 投票
0 回答
51 浏览

docker - Citrus-Framework:如何在 doFinally() 中启动/停止 docker 容器?

我想doFinally()在我的柑橘测试用例中启动一个先前停止的容器作为一个动作。
我在我的JUnit4CitrusTestDesigner测试类中尝试了以下内容(如文档所述):

但是我的 IDE 已经抱怨ContainerStart不适用于doFinally().

还有另一种方法可以实现这一目标吗?

0 投票
1 回答
119 浏览

docker - Citrus-Framework:如何等待容器健康?

我正在启动和停止用于多个柑橘测试的容器。为此,我需要确保在新测试开始时容器已启动并运行。docker 镜像实现了各自的健康检查。

柑橘有没有办法等待容器健康/完全启动?