Узнать Scala с помощью TDD

Сейчас я изучаю Scala. Я видел, что там есть 2 тестовых рамки, ScalaTest и Specs. Моя единственная проблема заключается в том, что я не всегда спокоен с языком, чтобы решить, что лучше. Также я привык писать тесты перед кодом, на данный момент у меня нет четкого представления о том, как это сделать в функциональном программировании. В идеале я хотел бы узнать Scala в стиле TDD, есть ли какой-нибудь ресурс?

Ответ 1

Существует функциональный коан, который может быть тем, что вы ищете. Dick Wall из Java Posse запустил проект github:

https://github.com/relevance/functional-koans/tree/scala

Вам нужно maven, чтобы запустить его через mvn package.


Существует еще один Koan:

http://www.scalakoans.org/

Благодаря @MikeHoss!

Ответ 2

Итак, тестовые рамки. Есть другие вопросы об этом, хотя я хотел бы указать, что там также ScalaCheck. ScalaCheck не так полно функций, как Specs и ScalaTest, но, с другой стороны, Specs и ScalaTest может интегрироваться с ним.

Лично я предпочел бы пойти с ScalaCheck, который, вероятно, сильно отличается от структурных модулей тестирования, к которым вы привыкли. Это различие может быть хорошим в том, что вы не должны указывать тесты объектно-ориентированным образом.

Теперь, к главной заботе вашего вопроса: есть ли учебник TD60 как Scala? Я не знаю ни одного, хотя ответа о функциональных коанах подход, который вы хотите.

Ответ 4

ScalaTest является более богатым и гибким из двух фреймворков.

Сказав это... Я в настоящее время предпочитаю Specs, они, похоже, намного лучше справляются с последними релизами Scala, а интеграция IntelliJ также работает лучше.

У вас также есть преимущество в том, что у вас есть меньше API для изучения.