2009-05-04 4 views
4

저는 C# 코드에 대한 복잡한 승인 테스트를 작성하려고합니다. 필자는 테스트를 작성할 때 C# 컴파일러를 만족시키기 위해 많은 명시 적 캐스팅을 수행하고 있음을 확인합니다. C#과 같이 정적 형식의 언어를 사용하여 제작 코드에 형식 안전성을 부여하는 것이 좋지만 테스트에서는 모든 명시 적 캐스팅을 피하기 위해 동적 형식 언어 (예 : IronPython 또는 IronRuby)를 사용하게되어 기쁩니다. 내 테스트가 객체에 존재하지 않는 메소드를 호출하면, 런타임에 코드가 실패하는 것은 괜찮을 것입니다 (단지 실패한 테스트 일뿐입니다). 현재 MS Test를 단위 테스트 프레임 워크로 사용하고 있으며 계속 사용할 수 있으면 편리 할 것입니다. MS Test와 통합 할 수있는 동적 (DLR 기반) 언어는 무엇입니까? 도움이된다면 다른 테스트 프레임 워크를 제안하십시오..NET 단위 테스트에 사용할 수있는 동적 언어는 무엇입니까?

답변

2

http://fitnesse.org/FitNesse.DotNet 내가 IronPython의 추천 - 장점 중 하나입니다 우수한 책을 "은 IronPython in Action "을 통해 테스트를 포함한 모든 중요한 측면을 안내 할 것입니다.

+0

좀 더 조사한 후에 DLR의 ScriptEngine 클래스를 사용하여 IronRuby 또는 IronPython 스크립트를 호출하고 개체를 전달할 수 있음을 알 수 있습니다. 단기간에 가장 좋은 방법은 스텁 테스트 메소드 ([TestMethod] 속성으로 장식 됨)를 작성하고 각각에 대해 다른 동적 스크립트를 호출하는 것입니다. 이 작업을 수행하는 방법을 보여주는 IronPython 책의 샘플 코드를 다운로드했습니다. C# 4.0이 나오면 '동적'키워드를 사용할 수 있으며 외부 스크립트가 필요하지 않습니다. –

2

내가 단위 테스트를위한 C 번호를 선호 ... 당신은 당신이 철 - 파이썬을 시도 할 수 있습니다 동적 언어를 찾고 있다면 ....

아이언 루비와 RSpec에 대한
2

당신은이 게시물에 체크 아웃 수 :

http://msdn.microsoft.com/en-us/magazine/dd453038.aspx

http://msdn.microsoft.com/sv-se/magazine/dd434651(en-us).aspx IronRuby .Net interop을 시작하십시오.

그럼 항상 fitnesse가 :

http://www.fitnesse.org/

Fitnesse .NET 1.1 및 2.0 바이너리는 여기에서 찾을 수 있습니다 :

+0

링크를 제공해 주셔서 감사합니다. 나는 여전히 MS Test에 통합 할 수있는 동적 언어를 찾고 있는데 (즉, 유형 및 메서드에 대한 .NET 특성을 지원해야 함을 의미 함) 작동하는 것으로 발견되지 않으면 RSpec을 고려할 것입니다. –