在IntelliJ IDEA中使用Docker运行Gradle测试任务

3
我正在处理一个涉及功能测试的项目,这些测试需要特定的环境才能运行。
当运行测试时,一些依赖项(如数据库)会被引导。不幸的是,并非所有依赖项都可以这样做。
对于应用程序的生产版本,构建了一个Docker镜像来设置环境。
是否可能使用例如IntelliJ的运行目标在此Docker环境中运行功能测试?尝试使用大多数默认设置(参见下面的屏幕截图)运行它会导致连接被拒绝

docker run target


从CLI运行的方法是启动容器,将源代码复制到容器中并运行gradle命令: docker run --name ort-dev -d ort-dev && docker cp . ort-dev:"/root" && docker exec -it ort-dev /bin/bash -c 'cd /root && ./gradlew :analyzer:funTest --tests "org.ossreviewtoolkit.analyzer.managers.DotNetFunTest"'; docker stop ort-dev。如果能够在IntelliJ内部实现这一点,那就更好了。 - Marcel Bochtler
2
是的,这是可能的,但可能存在IDE错误,类似于IDEA-269184。请在重现后提交一个新的YouTrack问题,并附上IDE调试日志 - Andrey
1个回答

2
有趣的是,尽管我已经安装了Docker插件(编辑:结果发现“运行”选项仅适用于IntelliJ的Ultimate版本),但我甚至没有“Run on”选项。因此,我正在寻找另一种方式:不是配置Gradle任务在Docker上运行,而是创建一个Docker运行配置来执行Gradle任务,如下所示:

enter image description here

自己的备忘录:半相关的是使用IntelliJ IDEA调试在Docker中运行的应用程序 - sschuberth

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接