在Play中声明测试依赖性!

dig*_*nie 9 java dependency-management playframework

有没有办法在依赖关系.yml文件中为Play声明一个测试依赖项!框架?我没有在文档中看到有关测试依赖项的任何信息.

例如,我可能想要使用诸如Mockito之类的测试库,但出于显而易见的原因没有在生产中使用它的类.

Tim*_*one 9

您似乎可以为每个Play 框架ID定义依赖项,类似于您可以在application.conf文件中定义特定ID的设置.为此,您需要为id依赖项定义添加其他属性.

例如,如果您只想在框架ID为的环境中包含mockito-core test,则dependencies.yml文件将如下所示:

require:
    - org.mockito -> mockito-core 1.8.5:
        id: test
Run Code Online (Sandbox Code Playgroud)

你也可以在使用一台机器时使用它,尽管你必须更加慎重.要使用仅测试依赖项进行测试,您需要定义依赖项,id: test然后运行:

play dependencies --%test --sync
play test
Run Code Online (Sandbox Code Playgroud)

然后,要切换回生产,您将运行:

play dependencies --sync
play run
Run Code Online (Sandbox Code Playgroud)

缺点是每次在测试和生产模式之间切换时都必须记住同步依赖关系,但我认为如果你想确保依赖关系仅在类路径上,那么这是目前最好的.测试模式.