我正在与之合作的团队购买了 CloudPort 许可证(来自 CrossCheck Networks),我们目前面临的问题是无法在服务 Mocks 中实现任何类型的逻辑(以控制响应选择)。这很简单:
if (requestCounter++ == 1)
then
response = $fn:Global(MyFirstXmlString)$ // <-- this is CloudP syntax for vrbls
else
response = $fn:Global(MySecondXmlString)$.
我们没有找到任何使用 Dll 插件的示例,并且两个 JScript 和 VBScript 任务都没有工作(即,我们的客户端机器得到的不是期望的MySecondXmlString
响应,而是一个错误
<faultstring>
ActiveX control '0e59f1d5-1fbe-11d0-8ff2-00a0d10038bc' cannot be instantiated
because the current thread is not in a single-threaded apartment.
</faultstring>.
信不信由你,即使 J- 或 VB-Script 任务为空,也会出现上述故障!我们很难相信 CloudPort UI 中宣传的所有逻辑功能都是假的,没有任何东西可以帮助实现上述逻辑。
任何帮助,将不胜感激!
谢谢,庞皮
PS:这里有更多关于为什么需要上述逻辑的详细信息:我们在测试框架中使用 SoapSonar 来触发对 BizTalk 编排应用程序的请求。需要 CP 模拟来模拟该 BT 编排的环境。我们无法通过 SSonar 请求控制单个模拟响应:(对于 cloudport:传入)客户端请求是由生产代码发出的,并且不能由我们的 SSonar 客户端更改或控制)。唯一对我们有用的任务功能是一个 DB 表,作为离线通道使用 SSonar 和 CP(SSonar 写入其中,CP 从中读取)。CloudPort 从 DB 读取 responseXml 工作正常,但我们找不到在 CP 端实现进一步行为控制逻辑的方法。因此,这个stackoverflow发布。