trait ScoverageModule extends Module with ScalaModule
Adds targets to a mill.scalalib.ScalaModule to create test coverage reports.
This module allows you to generate code coverage reports for Scala projects with Scoverage via the scoverage compiler plugin.
To declare a module for which you want to generate coverage reports you can
Extends the mill.contrib.scoverage.ScoverageModule trait when defining your
Module. Additionally, you must define a submodule that extends the
ScoverageTests trait that belongs to your instance of ScoverageModule.
// You have to replace VERSION import $ivy.`com.lihaoyi::mill-contrib-buildinfo:VERSION` import mill.contrib.scoverage.ScoverageModule Object foo extends ScoverageModule { def scalaVersion = "2.12.9" def scoverageVersion = "1.4.0" object test extends ScoverageTests { def ivyDeps = Agg(ivy"org.scalatest::scalatest:3.0.5") def testFrameworks = Seq("org.scalatest.tools.Framework") } }
In addition to the normal tasks available to your Scala module, Scoverage Modules introduce a few new tasks and changes the behavior of an existing one.
- mill foo.scoverage.compile # compiles your module with test instrumentation # (you don't have to run this manually, running the test task will force its invocation)
- mill foo.test # tests your project and collects metrics on code coverage - mill foo.scoverage.htmlReport # uses the metrics collected by a previous test run to generate a coverage report in html format - mill foo.scoverage.xmlReport # uses the metrics collected by a previous test run to generate a coverage report in xml format
The measurement data by default is available at out/foo/scoverage/dataDir/dest/,
the html report is saved in out/foo/scoverage/htmlReport/dest/,
and the xml report is saved in out/foo/scoverage/xmlReport/dest/.
- Self Type
- ScoverageModule with ScalaModule
- Alphabetic
- By Inheritance
- ScoverageModule
- ScalaModule
- JavaModule
- CoursierModule
- GenIdeaModule
- TaskModule
- Module
- Cacher
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Type Members
- trait ScoverageTests extends Module with (ScoverageModule.this)#Tests
-
trait
Tests extends Module with TestModule with ScalaModule
- Definition Classes
- ScalaModule
Abstract Value Members
Concrete Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
allSourceFiles: Target[Seq[api.PathRef]]
- Definition Classes
- JavaModule
- Annotations
- @Scaladoc()
-
def
allSources: Target[Seq[eval.PathRef]]
- Definition Classes
- JavaModule
- Annotations
- @Scaladoc()
-
def
ammoniteReplClasspath: Target[Seq[eval.PathRef]]
- Definition Classes
- ScalaModule
- Annotations
- @Scaladoc()
-
def
ammoniteVersion: Target[String]
- Definition Classes
- ScalaModule
- Annotations
- @Scaladoc()
-
def
artifactId: T[String]
- Definition Classes
- ScalaModule → JavaModule
-
def
artifactName: T[String]
- Definition Classes
- JavaModule
- Annotations
- @Scaladoc()
-
def
artifactScalaVersion: T[String]
- Definition Classes
- ScalaModule
- Annotations
- @Scaladoc()
-
def
artifactSuffix: T[String]
- Definition Classes
- ScalaModule
- Annotations
- @Scaladoc()
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
assembly: Target[eval.PathRef]
- Definition Classes
- JavaModule
- Annotations
- @Scaladoc()
-
def
assemblyRules: Seq[Rule]
- Definition Classes
- JavaModule
-
def
cachedTarget[T](t: ⇒ T)(implicit c: Enclosing): T
- Attributes
- protected[this]
- Definition Classes
- Cacher
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate() @throws( ... )
-
def
compile: T[CompilationResult]
- Definition Classes
- ScalaModule → JavaModule
-
def
compileClasspath: Target[api.Loose.Agg[eval.PathRef]]
- Definition Classes
- ScalaModule → JavaModule
-
def
compileIvyDeps: Target[api.Loose.Agg[Dep]]
- Definition Classes
- JavaModule
- Annotations
- @Scaladoc()
-
def
console(): Command[Unit]
- Definition Classes
- ScalaModule
- Annotations
- @Scaladoc()
-
def
crossFullScalaVersion: T[Boolean]
- Definition Classes
- ScalaModule
- Annotations
- @Scaladoc()
-
def
defaultCommandName(): String
- Definition Classes
- JavaModule → TaskModule
-
def
docJar: Target[eval.PathRef]
- Definition Classes
- ScalaModule → JavaModule
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
finalMainClass: T[String]
- Definition Classes
- JavaModule
-
def
finalMainClassOpt: T[Either[String, String]]
- Definition Classes
- JavaModule
-
def
forkArgs: Target[Seq[String]]
- Definition Classes
- JavaModule
- Annotations
- @Scaladoc()
-
def
forkEnv: Target[Map[String, String]]
- Definition Classes
- JavaModule
- Annotations
- @Scaladoc()
-
def
forkWorkingDir: Target[Path]
- Definition Classes
- JavaModule
-
def
generatedSources: Target[Seq[eval.PathRef]]
- Definition Classes
- JavaModule
- Annotations
- @Scaladoc()
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
-
def
ideaCompileOutput: T[PathRef]
- Definition Classes
- GenIdeaModule
-
def
ideaConfigFiles(ideaConfigVersion: Int): Command[Seq[IdeaConfigFile]]
- Definition Classes
- GenIdeaModule
- Annotations
- @Scaladoc()
-
def
ideaJavaModuleFacets(ideaConfigVersion: Int): Command[Seq[JavaFacet]]
- Definition Classes
- GenIdeaModule
- Annotations
- @Scaladoc()
-
def
intellijModulePath: Path
- Definition Classes
- GenIdeaModule
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
def
ivyDeps: Target[api.Loose.Agg[Dep]]
- Definition Classes
- JavaModule
- Annotations
- @Scaladoc()
-
def
ivyDepsTree(inverse: Boolean): Command[Unit]
- Definition Classes
- JavaModule
-
def
jar: Target[eval.PathRef]
- Definition Classes
- JavaModule
- Annotations
- @Scaladoc()
-
def
javacOptions: Target[Seq[String]]
- Definition Classes
- JavaModule
- Annotations
- @Scaladoc()
-
def
javadocOptions: T[Seq[String]]
- Definition Classes
- JavaModule
- Annotations
- @Scaladoc()
-
def
launcher: Target[api.PathRef]
- Definition Classes
- JavaModule
- Annotations
- @Scaladoc()
-
def
localClasspath: Target[Seq[eval.PathRef]]
- Definition Classes
- JavaModule
- Annotations
- @Scaladoc()
-
def
mainClass: T[Option[String]]
- Definition Classes
- JavaModule
- Annotations
- @Scaladoc()
-
def
manifest: T[JarManifest]
- Definition Classes
- JavaModule
- Annotations
- @Scaladoc()
-
def
mapDependencies: Task[(Dependency) ⇒ Dependency]
- Definition Classes
- ScalaModule → CoursierModule
-
implicit
def
millModuleBasePath: BasePath
- Definition Classes
- Module
-
lazy val
millModuleDirectChildren: Seq[define.Module]
- Definition Classes
- Module
-
implicit
def
millModuleExternal: External
- Definition Classes
- Module
-
implicit
def
millModuleSegments: Segments
- Definition Classes
- Module
-
implicit
def
millModuleShared: Foreign
- Definition Classes
- Module
-
def
millOuterCtx: Ctx
- Definition Classes
- Module
-
def
millSourcePath: Path
- Definition Classes
- Module
-
def
moduleDeps: Seq[JavaModule]
- Definition Classes
- JavaModule
- Annotations
- @Scaladoc()
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
-
def
platformSuffix: T[String]
- Definition Classes
- JavaModule
- Annotations
- @Scaladoc()
-
def
prependShellScript: T[String]
- Definition Classes
- JavaModule
- Annotations
- @Scaladoc()
-
def
recursiveModuleDeps: Seq[JavaModule]
- Definition Classes
- JavaModule
- Annotations
- @Scaladoc()
-
def
repl(replOptions: String*): Command[Unit]
- Definition Classes
- ScalaModule
- Annotations
- @Scaladoc()
-
def
repositories: Seq[Repository]
- Definition Classes
- JavaModule → CoursierModule
-
def
resolveCoursierDependency: Task[(Dep) ⇒ Dependency]
- Definition Classes
- ScalaModule → CoursierModule
-
def
resolveDeps(deps: Task[Agg[Dep]], sources: Boolean): Task[Agg[eval.PathRef]]
- Definition Classes
- CoursierModule
- Annotations
- @Scaladoc()
-
def
resolvePublishDependency: Task[(Dep) ⇒ Dependency]
- Definition Classes
- ScalaModule → JavaModule
-
def
resources: Sources
- Definition Classes
- JavaModule
- Annotations
- @Scaladoc()
-
def
run(args: String*): Command[Unit]
- Definition Classes
- JavaModule
- Annotations
- @Scaladoc()
-
def
runBackground(args: String*): Command[Unit]
- Definition Classes
- JavaModule
- Annotations
- @Scaladoc()
-
def
runClasspath: Target[Seq[eval.PathRef]]
- Definition Classes
- JavaModule
- Annotations
- @Scaladoc()
-
def
runIvyDeps: Target[api.Loose.Agg[Dep]]
- Definition Classes
- JavaModule
- Annotations
- @Scaladoc()
-
def
runLocal(args: String*): Command[Unit]
- Definition Classes
- JavaModule
- Annotations
- @Scaladoc()
-
def
runMain(mainClass: String, args: String*): Command[Unit]
- Definition Classes
- JavaModule
- Annotations
- @Scaladoc()
-
def
runMainBackground(mainClass: String, args: String*): Command[Unit]
- Definition Classes
- JavaModule
- Annotations
- @Scaladoc()
-
def
runMainLocal(mainClass: String, args: String*): Command[Unit]
- Definition Classes
- JavaModule
- Annotations
- @Scaladoc()
-
def
scalaCompilerClasspath: T[api.Loose.Agg[eval.PathRef]]
- Definition Classes
- ScalaModule
- Annotations
- @Scaladoc()
-
def
scalaDocOptions: Target[Seq[String]]
- Definition Classes
- ScalaModule
-
def
scalaDocPluginClasspath: T[api.Loose.Agg[eval.PathRef]]
- Definition Classes
- ScalaModule
- Annotations
- @Scaladoc()
-
def
scalaDocPluginIvyDeps: Target[api.Loose.Agg[Dep]]
- Definition Classes
- ScalaModule
-
def
scalaLibraryIvyDeps: Target[api.Loose.Agg[Dep]]
- Definition Classes
- ScalaModule
-
def
scalaOrganization: T[String]
- Definition Classes
- ScalaModule
- Annotations
- @Scaladoc()
-
def
scalacOptions: Target[Seq[String]]
- Definition Classes
- ScalaModule
- Annotations
- @Scaladoc()
-
def
scalacPluginClasspath: T[api.Loose.Agg[eval.PathRef]]
- Definition Classes
- ScalaModule
- Annotations
- @Scaladoc()
-
def
scalacPluginIvyDeps: Target[api.Loose.Agg[Dep]]
- Definition Classes
- ScalaModule
- Annotations
- @Scaladoc()
- def scoverageClasspath: Target[Agg[eval.PathRef]]
- def scoverageReportWorkerClasspath: Target[api.Loose.Agg[eval.PathRef]]
-
def
skipIdea: Boolean
- Definition Classes
- GenIdeaModule
- Annotations
- @Scaladoc()
-
def
sourceJar: Target[eval.PathRef]
- Definition Classes
- JavaModule
- Annotations
- @Scaladoc()
-
def
sources: Sources
- Definition Classes
- JavaModule
- Annotations
- @Scaladoc()
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- Module → AnyRef → Any
-
def
transitiveIvyDeps: T[api.Loose.Agg[Dep]]
- Definition Classes
- JavaModule
- Annotations
- @Scaladoc()
-
def
transitiveLocalClasspath: T[api.Loose.Agg[eval.PathRef]]
- Definition Classes
- JavaModule
- Annotations
- @Scaladoc()
-
def
transitiveModuleDeps: Seq[JavaModule]
- Definition Classes
- JavaModule
- Annotations
- @Scaladoc()
-
def
unmanagedClasspath: Target[api.Loose.Agg[eval.PathRef]]
- Definition Classes
- JavaModule
- Annotations
- @Scaladoc()
-
def
upstreamAssembly: Target[eval.PathRef]
- Definition Classes
- JavaModule
- Annotations
- @Scaladoc()
-
def
upstreamAssemblyClasspath: Target[api.Loose.Agg[eval.PathRef]]
- Definition Classes
- ScalaModule → JavaModule
-
def
upstreamCompileOutput: Target[Seq[CompilationResult]]
- Definition Classes
- JavaModule
- Annotations
- @Scaladoc()
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )
-
def
zincWorker: ZincWorkerModule
- Definition Classes
- JavaModule
-
object
millInternal extends Internal
- Definition Classes
- Module
- Annotations
- @Scaladoc()
- object scoverage extends Module with ScalaModule