当前位置: 首页 > 知识库问答 >
问题:

空手道:如何验证是否调用了模拟服务器

尉迟卓
2023-03-14

我正在测试一个点对点应用程序,我可以向它发送网址,然后它应该向该网址发出请求。我可以用空手道模拟服务器模拟响应,但我也想验证请求是否已经发出。

我的一个想法是将每个到mock服务器的请求记录到一个文件中,然后在我的主要场景中(启动mock并将URL发送到应用程序)将其读回以进行验证。

还有更好的方法吗?我可以从创建模拟服务器的场景中访问模拟服务器的状态而不使用文件吗?我可以告诉模拟服务器验证它自己的状态吗?

如果有区别的话,我会使用独立的JAR。

共有1个答案

艾意蕴
2023-03-14

请记住,空手道模拟都是为了暴露任意的RESTendpoint,这些endpoint可以“看到”一堆全局变量

您所需要做的就是公开一个“秘密”endpoint,您的测试可以调用该endpoint,以从模拟的“状态”中获得您想要的任何东西。

详情如下:https://stackoverflow.com/a/61374079/143475在这里:https://stackoverflow.com/a/63512034/143475

 类似资料:
  • 当我用空手道开始模拟发球时,有没有办法将端口设置为我想要的端口。启动,而不是像这样获取端口,这将在某个端口启动服务器并返回它: 有类似的可能性:

  • 我正在尝试通过空手道关闭SSL证书验证。现在我得到了错误: javax.net.ssl.sslHandShakeException:Sun.Security.Validator.ValidatorException:PKIX路径构建失败:Sun.Security.Provider.CertPath.SunCertPathBuilderException:找不到请求目标的有效证书路径

  • 我试图为下面的响应编写JSON模式。响应是动态的它可以是细节或细节。如果响应中的是,那么响应将包含人对象(组织对象将不可用)。如果是,组织详细信息将包含在响应中(人对象将不可用)。下面给出了两种不同的预期反应 我试图使用下面给出的模式使上述条件有效 我目前面临的问题是,如果响应中的是,它会抛出以下错误 是否有任何方法可以在模式中指定,如果person对象可用,则organization对象将不可用

  • 我只是想知道如何进行条件模式验证。API响应是基于键的动态响应。如果是,那么,人的详细信息将被包括,如果是组织的详细信息将被包括在JSON响应中。所以响应可以是以下任何一种形式 我为验证上述2个场景而创建的架构如下 但是架构与实际响应不匹配。我应该对架构进行哪些更改才能使其工作?

  • 我一直在验证下面的回答。 当我使用空手道发出获取请求时,我会得到以下响应,我想验证它。 我试过: 它说它不是字符串。你能帮我确认一下这个请求吗?

  • 我试图用空手道验证响应模式,但数组存在问题。附加响应和功能以及my schema.json。 回应- } responseSchema.json {"页面":"#编号","per_page":"#编号","总计":"#编号","total_pages":"#编号","数据": "#[] #对象","支持":"#对象"}