Я планирую использовать ScalaTest для тестирования игровых контроллеров, но все еще не решил, следует ли мне издеваться над Mockito или ScalaMock. На веб-сайте Play упоминается Mockito, однако, похоже, он сосредоточен на Java. ScalaMock выглядит более естественно при разработке приложений на Scala, однако из того, что я читал, кажется, что он поддерживает меньше тестовых сценариев по сравнению с Mockito, а также менее зрелый. Какие-либо предложения?
Насмешливые классы в Play для Scala
Ответы (2)
На веб-сайте Play упоминается Mockito, однако, похоже, он сосредоточен на Java.
Mockito был написан для Java, но это не мешает ему быть очень эффективным инструментом в проектах Scala и, как мне кажется, довольно широко используется в сообществе Scala.
Я использовал оба, но предпочитаю использовать Mockito, когда у меня есть выбор, поскольку я предпочитаю синтаксис немного больше, но это больше личное предпочтение. Mockito существует намного дольше, чем ScalaMock, и гораздо активнее поддерживается из-за гораздо большей базы участников.
Сначала поиграйте с обоими, иначе, если вы не уверены, я бы лично просто выбрал Mockito.
Я стараюсь часто проверять свой дизайн, чтобы убедиться, что мне действительно нужны эти моки однако - это хорошая практика, как я уверен, вы знаете.
Всегда рад просмотреть запросы функций на ScalaMock, если вы считаете, что чего-то не хватает. Одним из преимуществ ScalaMock, вероятно, является более компактный синтаксис, особенно при имитации типов scala.Function*.