我已实施QuickFIX/J申请(J
代表Java
)。现在我考虑如何设置固定的测试用例。
我对JUnit
有点熟悉,但我不知道它是否适合该问题,因为QuickFIX/J
有回调(fromApp
- 例如Application
类的方法。
也许有人在那里遇到了同样的问题,并为这个问题找到了一个很好的解决方案。 ;)
答案 0 :(得分:1)
我已经使用JUnit和QuickFIX / J测试。对于回拨,您可以使用BlockingQueue<Message>
,这样您就可以在主线程中检查您是否收到了预期的消息。或者您可以使用您选择的数据类型的BlockingQueue。
答案 1 :(得分:1)
如果您正在测试QuickFix应用程序的响应,那么您真正进行集成测试而不是单元测试。
因为您已经编写了一个QuickfixJ应用程序,您可以编写一个连接它的测试应用程序。因此,如果您的应用程序是修复接受器,请编写一个启动器。
现在,您可以将测试应用程序中的消息发送到实际应用程序。来自您的实际应用程序的任何响应都将在您的测试应用程序中调用onMessage()。
您可以捕获这些回调,然后您可以验证它们是否与某些模式匹配(例如,应用程序返回测试发送的相同客户订单ID)。你当然可以使用JUnit。