Это в граалях, но я не думаю, что применимо что-то конкретное для граалей.
У меня есть скрипт Gant, который выглядит примерно так:
includeTargets << grailsScript( "Init" )
includeTargets << grailsScript( "TestApp" )
target(main: "run tests with jacoco code coverage...") {
taskdef ( name:'coverage', classname:'org.jacoco.ant.CoverageTask', classpathref:'core.classpath' )
coverage(*** NEED TO PUT RUN-TESTS TASK HERE ***)
}
setDefaultTarget(main)
Идея в том, что я пытаюсь запустить некоторые модульные тесты с покрытием кода jacoco. Цель для запуска тестов определена в TestApp.groovy (allTests ()) и может быть импортирована и запущена просто отлично, но задача покрытия из jacoco хочет, чтобы задача allTests () была добавлена в нее как дочерняя задача. Нужно «обернуть» задачу для запуска тестов. Эквивалент Ant xml для того, что я пытаюсь сделать, таков:
<jacoco:coverage>
<taskToRunTheTests ... >
< ... setup ... >
</taskToRunTheTests>
</jacoco:coverage>
Так что я думаю, что в Gant я ищу способ получить Задачу из определения цели и передать ее задаче покрытия (я могу сделать coverTask.addChild (theRunTestsTask) ... coverTask .execute () при необходимости).
Это неясно, надеюсь, кто-нибудь может помочь нам с этим.