Maven surefire-plugin은 통합 테스트를 실행하지 않지만 (규약에 따라 "IT"접미어로 이름 지어 짐) sbt는 유닛과 통합을 모두 실행합니다. 그래서, 어떻게 이런 행동을 막으시겠습니까? ScalaTest에 대한 통합 및 단위 테스트를 구별하는 일반적인 방법이 있나요 (기본적으로 FeatureSpec-테스트를 실행하지 않는)sbt가 통합 테스트를 실행하는 것을 방지하려면 어떻게해야합니까?
12
A
답변
19
이 정확히 http://www.scala-sbt.org/release/docs/Detailed-Topics/Testing#additional-test-configurations-with-shared-sources에 SBT 설명서에 설명되어 수행하는 방법 :
//Build.scala
import sbt._
import Keys._
object B extends Build {
lazy val root =
Project("root", file("."))
.configs(FunTest)
.settings(inConfig(FunTest)(Defaults.testTasks) : _*)
.settings(
libraryDependencies += specs,
testOptions in Test := Seq(Tests.Filter(itFilter)),
testOptions in FunTest := Seq(Tests.Filter(unitFilter))
)
def itFilter(name: String): Boolean = name endsWith "ITest"
def unitFilter(name: String): Boolean = (name endsWith "Test") && !itFilter(name)
lazy val FunTest = config("fun") extend(Test)
lazy val specs = "org.scala-tools.testing" %% "specs" % "1.6.8" % "test"
}
전화 단위 테스트의 경우 sbt test
이고 통합 테스트의 경우 sbt fun:test
이고 둘 다의 경우 sbt test fun:test
입니다.
2
최신 SBT와 가장 간단한 방법은, IntegrationTest
설정 및 설명 here로 해당 설정을 적용하는 것입니다 - 당신은 당신의 프로젝트에 src/it/scala
디렉토리에 테스트를했습니다.
관련 문제
- 1. 스크립트를 다운로드하고 실행하는 것을 방지하려면 어떻게해야합니까?
- 2. 앵커가 스크롤하는 것을 방지하려면 어떻게해야합니까?
- 3. Pharo가 클래스의 # startUp-Method를 실행하는 것을 방지하려면 어떻게해야합니까?
- 4. Java에서 Linux 명령을 별도의 프로세스로 실행하는 것을 방지하려면 어떻게해야합니까?
- 5. XMLSerializer.serializeToString()이 속성을 재정렬하는 것을 방지하려면 어떻게해야합니까?
- 6. 대상 서버에서 NUnit 통합 테스트를 실행하는 방법
- 7. 커밋하기 전에 테스트를 실행하는 것을 기억하십시오.
- 8. 특정 너비의 장치에 이미지가로드되는 것을 방지하려면 어떻게해야합니까?
- 9. force_ssl이 리디렉션에서 params를 파괴하는 것을 방지하려면 어떻게해야합니까?
- 10. 서버가 304로 회신하는 것을 방지하려면 어떻게해야합니까?
- 11. PictureBox가 내부적으로 새로 고쳐지는 것을 방지하려면 어떻게해야합니까?
- 12. GWT가 인라인 스타일을 생성하는 것을 방지하려면 어떻게해야합니까?
- 13. 메서드가 파생 클래스에서 재정의되는 것을 방지하려면 어떻게해야합니까?
- 14. presentModalViewController를 사용하여 기본보기를 숨기는 것을 방지하려면 어떻게해야합니까?
- 15. ListvView에서 뷰가 보이지 않게하는 것을 방지하려면 어떻게해야합니까?
- 16. UITextField가 문구 끝점을 추가하는 것을 방지하려면 어떻게해야합니까?
- 17. nHibernate에서 중복 데이터를 삽입하는 것을 방지하려면 어떻게해야합니까?
- 18. 탭 표시 줄이 겹치는 것을 방지하려면 어떻게해야합니까?
- 19. jQuery draggable이 컨테이너에서 사라지는 것을 방지하려면 어떻게해야합니까?
- 20. Windows에서 subprocess.popen이 "손실"되는 것을 방지하려면 어떻게해야합니까?
- 21. jQuery - html에서 요소를 숨기는 것을 방지하려면 어떻게해야합니까?
- 22. Java에서 메서드가 오버로드되는 것을 방지하려면 어떻게해야합니까?
- 23. 트리 항목이 자신으로 드래그되는 것을 방지하려면 어떻게해야합니까?
- 24. 콜백이 여러 번 실행되는 것을 방지하려면 어떻게해야합니까?
- 25. UIScrollView가 두 페이지를 스크롤하는 것을 방지하려면 어떻게해야합니까?
- 26. 봇이 CodeIgniter에서 세션을 생성하는 것을 방지하려면 어떻게해야합니까?
- 27. JScrollPane이 자동으로 아래로 스크롤하는 것을 방지하려면 어떻게해야합니까?
- 28. GridView가 너비 속성을 sptting하는 것을 방지하려면 어떻게해야합니까?
- 29. JBoss-Cache 영역이 퇴거되는 것을 방지하려면 어떻게해야합니까?
- 30. C#에서 예외가 발생하는 것을 방지하려면 어떻게해야합니까?