java - Maven结构内的验收测试?
问题描述
我的问题是关于基于 docker 的验收测试的目录位置。
我的项目是一个基于 Spring Boot 的命令行应用程序,它从表中提取数据并构建电子表格。它具有单元测试和基于 JUnit 的验收测试。验收测试的 JUnit 运行器是标准的 JUnit 运行器,而不是基于 Spring 的运行器。
最后,我有一个验收测试结构,它针对专门为每个测试创建的专用 DB2 实例测试 Docker 组件。此时,有一个 docker-compose 文件:
- 专门为此测试启动一个 DB2 容器实例。
- 启动 Flyway 迁移容器以加载测试数据。
- 启动执行上述 Spring Boot 命令行应用程序的容器。
在 docker-compose 关闭后,将与生成的电子表格和预期文件进行比较。如果它们是逐字节等效的,则认为测试通过。
鉴于上面的验收测试是大量的 docker 负载并且从 Java 端删除了一些步骤,将这个测试放在 /src/test/acceptance 下是否仍然合适?
解决方案
正如您可以在https://maven.apache.org/guides/introduction/introduction-to-the-standard-directory-layout.html中参考的那样 ,最好有单独的目录进行测试。我建议对所有测试进行测试,并有单独的文件夹,test/acceptance/docker-test 或其他东西,但总的来说这取决于你。单独的文件夹确实有助于运行和分离不同的测试。
推荐阅读
- docker - 如何配置 Docker 以便用户只能停止他们启动的容器?
- angular - Angular 5 Component not removed on child route changed
- c# - 找不到路径“/Views/Shared/Error.cshtml”
- php - How to post to google plus profile using api?
- javascript - 根据嵌套数组值过滤数组
- php - 如何在 PHP 中将 CSV 划分为两个不同的字符串
- objective-c - 不兼容的指针类型将“NSString *__strong *”发送到“NSError * _Nullable __autoreleasing * _Nullable”类型的参数
- android - Android Studio apk 分析器显示比 finder 更小
- python-3.x - 用 Beautiful Soup 抓取网页(未捕获所有信息)
- html - 如何在元素之后添加字体真棒图标