很容易获得TestDefinition
in 的所有实例IntegrationTest
:
val tests: Seq[TestDefinition] = (definedTests in IntegrationTest).value
但是我如何获得xsbti.api.Definition
in 的所有实例IntegrationTest
?过去可以这样做:
val defs: Seq[Definition] = {
val analysis = (compile in IntegrationTest).value
analysis.apis.internal.values.flatMap(_.source.api.definitions)
}
(例如,用于基于套件注释过滤测试:say@RequiresCassandra
等@RequiresCluster
)。但analysis.apis
已被删除——不确定何时,但在 SBT 1.3.8 中不存在。我还没有找到任何关于使用什么的文档。
与 Maven 等基于 XML 的工具相比,SBT 的主要优势之一是能够以编程方式定义构建设置。应该可以根据测试代码本身的任何内容过滤测试,而不仅仅是测试名称。我无法相信如此有用的东西——真正将 SBT 置于竞争对手之上的东西——会被删除。
有什么建议么?