使用 boost.test 进行分布式单元测试/基于场景的单元测试

发布于 2024-09-15 13:03:54 字数 221 浏览 7 评论 0 原文

我正在使用 Boost.test 库为应用程序开发单元测试用例。有一些API可以直接测试。

但是,有些 API 需要测试机器之间的交互。例如,在机器 1 中执行某个 API 应该会触发测试机器 2 中的 API,并且需要在机器 1 中再次使用其响应才能成功完成。

我怎样才能同步这个? Boost 是否为这种交互提供其他库?如果还有其他方法,请提出建议。

预先感谢您的时间和帮助。

I am developing unit test cases for an application using Boost.test libraries. There are certain APIs which can directly be tested.

But, there are APIs which require interaction between test machines. So for example, execution of a certain API in machine 1 should trigger an API in test machine 2 and its response needs to be used again in machine 1 for successful completion.

How can I synchronize this ? Does Boost provide other libraries for this interaction? If there are any other approaches, kindly suggest them.

Thanks in advance for your time and help.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

戈亓 2024-09-22 13:03:54

您可以为此交互编写两种测试:

  1. 单元测试 - 使用模拟/伪造,您可以伪造来自第一个组件的调用并伪造来自第二个组件的调用。通过这种方式,您可以测试第一个组件的内部逻辑 - 例如,确保如果没有返回响应,则会引发超时异常。
  2. 集成/验收测试 - 创建两个组件作为测试的一部分并配置它们并从组件一发出调用。

在这两种测试中,您可能需要使用事件和 WaitForSingleObject 以确保测试不会在响应返回之前结束。

There are two kinds of tests you can write for this interaction:

  1. Unit test - using mocks/faks you can fake the calls from the first component and fake the calls from the 2nd component back. This way you can test the internal logic of the first component - for example make sure that if no response were returned a time-out exception is raised.
  2. Integration/acceptance test - create both components as part of the test and configure them and raise the call from component one.

In both kinds of tests you might be required to use events and WaitForSingleObject to make sure that the test won't end before the response has returned.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文