7
스택이있는 매우 간단한 프로젝트를 만들었습니다. 포함 된 파일 : 실행 파일, 라이브러리 및 테스트 대상 스택 ghci를 통해 ghci에 코드를로드 할 때 별도의 모듈에 있더라도 테스트에 액세스 할 수 없습니다. 그런 식으로 사용하는 방법이 있습니까?ghci에서 스택을 사용하여 테스트를로드하는 방법
스택이있는 매우 간단한 프로젝트를 만들었습니다. 포함 된 파일 : 실행 파일, 라이브러리 및 테스트 대상 스택 ghci를 통해 ghci에 코드를로드 할 때 별도의 모듈에 있더라도 테스트에 액세스 할 수 없습니다. 그런 식으로 사용하는 방법이 있습니까?ghci에서 스택을 사용하여 테스트를로드하는 방법
시도 stack ghci (your project name):(the test suite name)
. 그런 다음 main
을 입력하면 테스트가 실행됩니다. 당신의 .cabal 프로젝트 파일은 다음과 같은 값을 가지고 있다면
:
예
name: ExampleProject
...
test-suite Example-test
그런 다음 실행하는 명령은
stack ghci ExampleProject:Example-test
(편집 @ 크리스 Stryczynski에 의해 제안)
것test
및 src
디렉토리를보고을 다시로드 할 때 업데이트되도록하십시오., 실행 :
stack ghci --ghci-options -isrc --ghci-options -itest ExampleProduct:Example-test
고마워요! 그것은 효과가있다! –
이렇게하면': r'은 lib에 대한 변경 사항을 다시로드하지 않습니다. ': r'이 lib와 테스트를 다시 컴파일 할 수 있도록 어떻게해야하는지 알고 있습니까? –
@SeanClarkHess 테스트를 설정하는 몇 가지 방법이 있습니다. 테스트 할 라이브러리를 test-suite build-depends에 추가하여 설정하거나 라이브러리 소스 폴더를 테스트 스위트 hs-source-dirs에 추가 할 수 있습니다. 나는 믿는다.''r'은 전자가 아니라 후자와 함께 작동하지만 나는 확실하지 않다. 질문에 너무 오랜 시간을 드려 죄송합니다. – Libby