Windows에서 조롱을 위해 with-redefs
을 사용하여 Clojure에서 간단한 단위 테스트를 만드는 데 어려움을 겪고 있습니다.with-redefs with Windows의 특정 프로젝트에서 작동하지 않습니다.
기능 테스트중인 : 제가 테스트하려고 해요 기능과 기능을 조롱하는 테스트 코드는 모두 다른 네임 스페이스/파일에
(ns com.mynamespace.a
(:require [com.mynamespace.b :as b]))
(defn afunc [param]
(b/bfunc param))
종속 B 네임 스페이스 조롱하는 아웃 :
(ns com.mynamespace.b)
(defn bfunc [param]
; External call
)
테스트 코드
(ns com.mynamespace.a-test
(:require [com.mynamespace.a :as a]
[com.mynamespace.b :as b])
(:use [clojure.test]))
(deftest a-tests
(with-redefs [b/bfunc (constantly "dummy")]
(print (a/afunc "test"))
)
)
는 내가 리눅스에 내 단위 테스트 때문에이 실행 잘, 제대로 with-redefs
를 사용할 생각 기계 (고정 표시기 컨테이너 또는 가상 우분투),하지만 내 Windows dev에 머신을 개발/실행할 때 그냥 작동하지 않습니다 다음 with-redefs
를 바인딩은 이 적용되지 않습니다. 테스트에서 실제를 만들기를 원합니다. http를 호출합니다. 나는 그것을 모의하고 싶습니다. lein test
을 실행하거나 Eclipse CCW를 통해 REPL에서 테스트를 실행하는 경우에도 마찬가지입니다.
with-redefs는 이상한 동작을하지만, Linux에서 잘 작동하므로, Windows에서이 프로젝트 테스트를 실행할 때 무언가를 놓친다 고 생각합니다. 내 Windows 컴퓨터에서 테스트를 작성할 때 빠른 피드백 루프를 얻고 싶습니다.
내가 뭘 잘못하고 있는지 아십니까? 감사합니다, 안드라스
Windows 7에서 Clojure 1.8.0으로 재생산 할 수 없습니다. –