2017-02-17 3 views
0

복제 된 설정이 Spark입니다. 그것은 here에 위치한 마이크로 벤치 마크 스위트를 가지고 있습니다. 특정 파일 (예 : AggregateBenchmark.scala, 벤치 마크를 수행하는 주석의 지시 사항을 참조하십시오.sbt를 사용하여 스파크 마이크로 벤치 마크 실행

* To run this: 
* build/sbt "sql/test-only *benchmark.AggregateBenchmark" 

위의 명령을 프로젝트 폴더에서 시도했지만 매번 벤치 마크를 무시합니다. 다음은 위의 명령의 출력입니다.

[info] AggregateBenchmark: 
[info] - aggregate without grouping !!! IGNORED !!! 
[info] - stat functions !!! IGNORED !!! 
[info] - aggregate with linear keys !!! IGNORED !!! 
[info] - aggregate with randomized keys !!! IGNORED !!! 
[info] - aggregate with string key !!! IGNORED !!! 
[info] - aggregate with decimal key !!! IGNORED !!! 
[info] - aggregate with multiple key types !!! IGNORED !!! 
[info] - cube !!! IGNORED !!! 
[info] - hash and BytesToBytesMap !!! IGNORED !!! 
[info] ScalaCheck 
[info] Passed: Total 0, Failed 0, Errors 0, Passed 0 
[info] Warning: Unknown ScalaCheck args provided: -oDF 
[info] ScalaTest 
[info] Run completed in 1 second, 393 milliseconds. 
[info] Total number of tests run: 0 
[info] Suites: completed 1, aborted 0 
[info] Tests: succeeded 0, failed 0, canceled 0, ignored 9, pending 0 
[info] No tests were executed. 
[info] Passed: Total 0, Failed 0, Errors 0, Passed 0, Ignored 9 
[success] Total time: 94 s, completed Feb 17, 2017 2:57:21 PM 

내가 여기에 뭔가가 있습니까? 테스트를 실행하기 위해 추가 플래그, 명령을 전달해야합니까?

답변

1

소스를 변경하지 않고 CLI에서 무시 된 테스트를 실행하는 방법은 없습니다.

참조하고있는 마이크로 벤치 마크 테스트는 FunSuite를 사용하여 작성되었으며 무시 태그 지정 시스템을 사용합니다. 이 API에는 테스트를 무시할 수있는 기능이 없습니다. FunSuite 및 테스트 무시에 대한 자세한 내용은 다음을 참조하십시오. http://doc.scalatest.org/3.0.1/#org.scalatest.Ignore

테스트를 무시하면 테스트가 소스 코드로 주석 처리되는 것과 다소 유사하지만 컴파일러에서 소스 코드를 볼 수 있도록 유지하면 테스트를 수행 할 수 있습니다. 유지 관리하고 그들이 테스트 한 출처와 최신 상태를 유지해야합니다. 개발자는 여러 가지 이유로 테스트를 무시하지만이 경우에는 마이크로 벤치 마크를 실행하는 것이 단위 테스트 스위트의 일부로 수행하는 데 다소 비용이 많이 들기 때문에 테스트를 무시합니다.

테스트를 실행하는 유일한 방법은 선택한 편집기를 사용하여 테스트 메서드 호출을 ignore(...)에서 test(...)으로 변경하고, 다시 컴파일 한 다음 벤치 마크를 실행하는 것입니다.

+0

내 질문에 답하십시오. 감사! – user2512324