Учитывая проект, использующий файл build.sbt
, я хотел бы иметь общий файл TestUtils.scala
, на который полагаются как интеграция, так и модульные тесты.
У меня есть папка sr c в src/scala
и моя папка интеграционного тестирования it/scala
. Моя папка модульного тестирования находится по адресу test/scala
и содержит общий файл TestsUtils.scala
.
В настоящее время я запускаю свои тесты через ScalaTest в Intellij. Когда я запускаю его таким образом, Intellij может определить зависимость из папки интеграционного тестирования в папке модульного тестирования. Я пытаюсь перейти на использование набора задач SBT test
, it:test
и unit:test
. Когда я это делаю, папка интеграционного тестирования не компилируется, так как не может найти общий файл TestUtils.scala
. Если я скопирую файл TestUtils.scala
в свою папку для тестирования интеграции, он будет компилироваться, но я не хочу иметь один и тот же код в двух местах.
Вот подходы, которые я вижу для решения этой проблемы:
- Скопируйте файл в обе тестовые папки (плохо)
- Переместите файл в папку
src
(вводит src
зависимость от scalatest
, чего я бы предпочел избежать) - Найдите способ для папки
integration
использовать файл из папки test
(не знаю, как это сделать)
В идеале я бы хотел использовать третий подход, но не знаю, как его реализовать. Как заставить одну папку использовать другую папку как зависимость в SBT? Есть ли лучший подход, о котором я не знаю?