gpt4 book ai didi

unit-testing - 用于测试目的的假 http 服务器

转载 作者:可可西里 更新时间:2023-11-01 16:29:00 24 4
gpt4 key购买 nike

我有一个连接到 IP 摄像机的应用程序,它执行 HTTP 请求以获取图像和 M-JPEG。现在没关系,因为我在开发室里有相机。但几周后,该摄像头将投入生产(它们是非常昂贵的摄像头),因此我不会用它们来测试和调试我的应用程序。

我想知道“模拟”这些摄像头的最佳方式是什么?现在,我的应用程序使用 2 个摄像头,假设它们在 http://192.168.88.1 上和 http://192.168.88.2 .我想到了这个:

  1. 在我的应用程序中,我可以封装执行以下操作的函数类中的 http 调用可以在进入时执行真正的 http 请求在调试时发布和伪造。这不好的一面是它会不重现真实的东西,比如偶尔的超时和网络交通。
  2. 也许某个地方有一个网络摄像头模拟器,我可以把它放在我的电脑上网络和使用?
  3. 也许可以创建一个真正的 http 请求到我将拥有的真实服务器编程返回假图片?如果是这样,如何进行?

如您所见,我有一些想法,但我不确定什么是最好的,也不确定外面的人在做什么。根据您的回答,请考虑到我可能会在相机不在时将其用于单元测试和正常调试。

谢谢!

最佳答案

广告。 1:这是单元测试时的好方法——你的代码不应该依赖于外部服务器/设备/文件系统。但是您已经看到这种环境可能过于理想化了。然而,我的目标是外部化 HTTP 基础设施代码——这将提高您的测试能力和整体架构。

广告。 2: 没听说过,抱歉。

广告。 3:我认为这是最可行的方案。如果您曾经使用过 servlet,只需捕获 Tomcat 或 Jetty 并编写一个。然后在 localhost:8080/war_name/servlet_name 下连接到您的 servlet,并从中返回您想要的任何内容。 Here是一个非常简单的例子。

如果您从未听说过 Java servlet 和 servlet 容器 - 仍然值得了解它们。但是启动 Sun JDK 中内置的 HTTP 服务器可能会更快,请参阅 HttpServer API 和 example .

关于unit-testing - 用于测试目的的假 http 服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7966946/

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