gpt4 book ai didi

java - 通过 Fitnesse 测试第三方 API

转载 作者:太空宇宙 更新时间:2023-11-04 08:37:10 27 4
gpt4 key购买 nike

我们必须测试远程计算机上的一些 API,这些 API 需要使用 Fitnesse 进行测试。

我们有一些先决条件。

  1. 我们需要使用网络服务来测试这些 API。 API 的 jar(比如 xyz.jar)位于服务器端。 Web服务部署在哪里。
  2. 必须使用fitnesse给出输入。并且 xyz.jar 在fitnesse端不可用。因为客户端 Fitnesse 需要独立于 xyz.jar 中的更改,因此它使其对所有 future 版本通用。
  3. 用户将在 wiki 页面中给出要测试什么类的什么方法以及输入数据。

这里的一个假设是使用 wiki 页面上给出的输入值和 API 名称:通过反射,将从 Web 服务调用 API。

数据流示例

|健身| -----> |业务层| --> |网络服务代理 | -------->|网络服务| -------->| xyz.jar |

我们面临着一些问题,例如。

  1. 一些 API 就像 doSomething(CustomId someId, DBLoaderType type, DBFilter filter, boolean exclus) 返回 java.util.List 但这些 CustomId、DBLoaderType、DBFilter、SomeNavigationSystem 不是可序列化的对象。

  2. 某些 API 返回的值可以是 Java 原语、包装器或自定义对象或自定义对象集合类型。 ( boolean 值, boolean 值,列表映射,映射>如何验证返回类型?

  3. 我们面临的一个问题是:如何将fitnesse的输入数据输入到java层(这将调用webservice来测试API)如果API的类型为registerUsersForMessage(int messageId,List users,boolean forceRegister,int maxBatch,Map)如何将这些数据从fitnesse wiki页面传递到java层?有没有办法将输入数据推送到“某个地方”,以便测试人员的 wiki 页面保持干净?

欢迎对此提供任何帮助。或者任何可能引发头脑 Storm 的问题也都受到欢迎。提前致谢。

最佳答案

我不确定您在这里测试的是哪种应用程序,但我强烈建议您仅保留 Fitnesse 测试页面中的业务细节和逻辑,并将所有有关 API 和其他技术细节的内容移至固定代码中。它使灯具变得更加复杂,但它们所处的环境中您拥有一整套强大的工具来管理这种复杂性。

如果您考虑验证 API 函数的返回类型,这听起来像是一种完全不同类型的测试。

除非您正在测试 Web 服务本身,否则涉及使您的应用程序正常工作的 Web 服务这一事实对于 Fitnesse 测试应该是透明的。

关于java - 通过 Fitnesse 测试第三方 API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6094809/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com