新媒体营销h5制作网站,公装设计网站,青县网站建设,自助式网站制作用Maven实施单元测试是很普通的事情#xff0c;我们大多数人都熟悉项目结构以及单元测试所在的位置。 但是#xff0c;集成测试是一种不同的情况#xff0c;大多数情况下它们具有完全不同的要求。 例如#xff0c;可以让您的单元测试在内存数据库中的h2上运行#xff0c;… 用Maven实施单元测试是很普通的事情我们大多数人都熟悉项目结构以及单元测试所在的位置。 但是集成测试是一种不同的情况大多数情况下它们具有完全不同的要求。 例如可以让您的单元测试在内存数据库中的h2上运行但是在集成测试和复杂查询方面 最好针对实际的关系数据库如生产中使用的关系数据库执行它们。 考虑以上示例我们的集成测试可能具有不同的配置和依赖性。 因此我们集成测试的目标是使它们与其他测试分开并分别执行。 关于源目录中的Maven结构我们有主要的“文件夹”和测试“文件夹”。 以同样的方式我们将添加一个名为“ it”的额外目录。 “ it”目录将包含一个用于Java源代码的Java目录和一个资源目录。 与测试目录的结构相同。 然后我们应该指导maven构建代码并将其添加到测试源中。 plugingroupIdorg.codehaus.mojo/groupIdartifactIdbuild-helper-maven-plugin/artifactIdversion1.5/versionexecutionsexecutionidadd-test-source/idphaseprocess-resources/phasegoalsgoaladd-test-source/goal/goalsconfigurationsourcessourcesrc/it/java/source/sources/configuration/execution/executions/plugin 通过使用构建助手maven插件我们可以指示maven将额外的测试源目录添加到我们的构建中。 下一步是指示Maven运行我们的单元测试。 为此我们将使用Maven 故障安全插件 。 故障安全插件旨在运行集成测试而Surefire插件旨在运行单元测试。 选择failsafe这个名称是因为它是surefire的同义词也因为它暗示了当它失败时它是以安全的方式这样做的。 plugingroupIdorg.apache.maven.plugins/groupIdartifactIdmaven-failsafe-plugin/artifactIdversion2.15/versionexecutionsexecutionidintegration-test/idgoalsgoalintegration-test/goal/goals/executionexecutionidverify/idgoalsgoalverify/goal/goals/execution/executions/plugin 然后执行集成测试我们应该发出。 mvn verify 正如预期的那样我们的集成测试单独运行。 综上所述我们希望将集成测试与单元测试分开。 我们也希望它们分开运行。 这可以通过使用Maven故障安全插件来实现。 您可以在github上找到示例项目。 翻译自: https://www.javacodegeeks.com/2018/01/integration-tests-maven.html