比如我要写一个应用。它的核心要求很简单。它不断扫描文件夹。如果有新文件到达,它会将其传输到 FTP 站点。它将作为控制台应用程序用 JAVA 编写。
我想知道是否有针对此类应用程序的集成测试框架,例如开源框架?它应该能够测试以下相同的测试用例。
- 生成文件,然后检查这些文件是否传输到 FTP。
- 如果FTP宕机,应用程序是否可以上报相应的警告日志?
- 等等
提前致谢。
最佳答案
JUnit结合一些模拟框架,比如 Mockito应该让你在路上有点公平。如果您想更进一步,例如运行外部服务的实际实例,您可以将 JUnit 与例如 Cargo 结合使用启动 Java EE 容器作为测试的一部分。轻量级内存数据库,如 HSQLDB通常用作集成测试的占位符数据库。
我听说有人使用 JBoss Arquillian ,但我自己还没有尝试过。不过,它更适用于 Java EE 组件的远程测试,因此可能不符合您的具体要求。
关于java - 是否有用于控制台 Java 应用程序的通用集成测试框架?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7191067/