我们可以将 Spock 与普通 Java 一起使用吗

Can we use Spock with plain Java

我从几天开始就开始使用 Spock,在我看到的所有文档中,测试都是用 Groovy 编写的。有什么方法可以在 Java class 中使用 Spock?因为我们有一个要求只使用 Java 作为编程语言。

Spock 广泛使用 Groovy 魔法,例如 AST 转换,您只能在 Groovy 中编写 Spock 测试。但是,您当然可以使用 Spock 来测试仅包含 Java 的代码,而不包括 Groovy 或任何基于 Groovy 的代码在您的编译范围内。

我使用 spock 和 groovy 只是为了测试,必须说这是很棒的组合!

检查此项目用于 codepot.pl 会议期间的研讨会:

https://github.com/codepot-groovy-android/groovy_no_way_back

应用和测试都使用 groovy,测试也使用 spock。

但也有一个分支,带有用 Java 编写的应用程序,仅在 groovy 中使用 spock 进行测试:

https://github.com/codepot-groovy-android/groovy_no_way_back/tree/codepot/livetesting

正如其他人所说,如果生产代码的要求是 Java,是的,您可以使用 Spock 来测试 Java 代码。事实上,我单独写了一本关于这个主题的书:-)

https://www.manning.com/books/java-testing-with-spock

如果要求所有代码都应该在java中(包括单元测试)那么不,不能使用Spock。