2016-03-08 90 views
1

我想做一些自定義任務來運行測試(scalatest)的標記。例如:現在我可以在SBT控制檯運行此:自定義sbt任務運行測試標記

sbt test-only -- -n UnitTests 

我希望排除測試運行此做這樣的事情

sbt test-unit // or something like that 

我也想做同樣的

SBT測試只 - -l ExternalTests

到:

sbt test-exclude-external 

爲了完成我試圖創建一個自定義SBT任務......但我不知道該怎麼辦了-- -l東西

val testUnit = taskKey[Unit]("Launch unit tests") 
testUnit := { 
    // sbt test-only -- -n UnitTests 
    //(test in Test) 
} 

這將是有用的,如果我也可以運行通過命名空間測試在自定義的SBT任務:

sbt testOnly integration.actors.* 

你能幫助我的傢伙?我有點新手與SBT :(

回答

1

fullInput不能很好地與「試驗」工作。我終於做到了這一點:

val unit = taskKey[Unit]("Launch unit tests") 
unit := { 
    (testOnly in Test).toTask(s" com.trololo.unit.*").value 
}