在单个项目中混合使用java和scala—scala测试,java核心
假设有人更喜欢功能风格的测试框架(例如规范),而不喜欢Java的行业标准框架(例如JUnit)。让一个Java项目只使用scala编写单元/集成测试(其他项目使用Java编写),这是一个好的实践吗?这种方法有什么缺点吗?我在几个项目中使用了它,例如使用Spock(groovy)、scala测试。这是评估、学习和使用新编程语言的非常有效的方法。在单个项目中混合使用java和scala—scala测试,java核心,java,scala,unit-testing,testing,Java,Scala,Unit Testing,Testing,假设有人更喜欢功能风格的测试框架(例如规范),而不喜欢Java的行业标准框架(例如JUnit)。让一个Java项目只使用scala编写单元/集成测试(其他项目使用Java编写),这是一个好的实践吗?这种方法有什么缺点吗?我在几个项目中使用了它,例如使用Spock(groovy)、scala测试。这是评估、学习和使用新编程语言的非常有效的方法。 有什么缺点吗? 如果您的团队使用持续集成,那么您可能需要花费一些时间来配置Maven/Gradle,以包括您的测试和其他配置,以便CI可以构建它。我对此
有什么缺点吗?
如果您的团队使用持续集成,那么您可能需要花费一些时间来配置Maven/Gradle,以包括您的测试和其他配置,以便CI可以构建它。我对此有一些经验,我们以前使用过 缺点:
我想其他人也可能有类似的经历,我希望我能学到:)从技术上讲,这样做是可能的,但我认为这不是正确的做法。 如果您的团队知道/愿意学习scala,那么他们可能希望用scala编写整个代码,而不仅仅是测试(或者至少对新代码这样做)。
如果团队不了解scala,学习曲线很高,而且由于测试通常会限制范围,他们不会从中学到很多东西。
如果您试图使用测试来偷袭scala,则可能会得到相反的效果。
scala存在一些问题(比如强大的IDE支持、冗长的编译、与第三方工具的集成等等)。我认为在scala中开发时支付它是值得的,但如果不限于测试的话 如果您只想用更实用的方式编写测试,我建议您使用。这是一个非常好的Java和Groovy测试和规范框架。由于groovy本身对java开发人员来说很熟悉,所以他们可能会觉得使用它更舒服。
我以前开始使用它,但后来用scala重写了整个应用:)如果你的团队准备好了,那就开始吧。大多数scala/Java互操作问题都是在Java->scala时出现的。Scala->Java非常完美。