2012-05-03 1 views
0

거기에 범주를 사용하고 MSTest 함께 테스트를 주문하는 방법은 무엇입니까?범주 및 MSTest (콘솔)에서 .orderedtest

[TestMethod, TestCategory("UITest")] 
public void TestMethod() 
{ 
} 

테스트 프로젝트에 새로운 테스트를 추가하십시오.

MSTest.exe /testcontainer:MyOrderedTest.orderedtest 

는 testmethod를 실행 :

잘 .. 같은 명령 행이 메소드를 호출.

하지만 같은 MSTEST를 호출 할 때 다음

이 할 수있는 방법이

이상한 행동

..

MSTest.exe /testcontainer:MyOrderedTest.orderedtest /category:UITest 

는 testmethod을 찾을 수 없습니다 ..?

답변

1

/testcontainer:[file name] 옵션을 사용하면이 파일에 지정된 테스트를 실행하도록 MSTest에 알립니다. 따라서 [TestMethod, TestCategory("UITest")] 단위 테스트는 MyOrderedTest.orderedtest 안에 포함되어 있지 않기 때문에 실행되지 않습니다.

MSTest.exe /testmetadata:$(ProjectDir)\TestProject.vsmdi /testlist:ListName 
+0

흠 ..이 정말입니다 :

는 다음과 같은 명령을 UITest 범주에 속한 모든 테스트를 포함하고 또한 OrderedTest를 한 후 실행이 동작을 달성하기 위해 TestList를 만들 수 있습니다 불편하고 융통성이없는 방식으로 .. 나는 그것이 작동 할 것이라고 믿는다. testmethods alphanumericaly의 당신의 이름을 정의함으로써 당신의 주문을 정렬하는 대안이있다 .. orderedtest의 필요성은 이제 더 이상 존재하지 않는다 ... 나는 모른다. 어느 쪽이 더 우아한가 -_- ' – hagem

+0

주문이 항상 똑같다면 테스트 방법을 영숫자로 정의하는 것이 좋습니다. 하지만 OrderedTest는 원하는 테스트 메소드 만 정의 할 수 있기 때문에 (테스트 카테고리에 관계없이) 새로운 테스트 메소드가 추가되거나 기존 테스트 메소드의 이름이 변경되면이를 변경할 필요가 없기 때문에 OrderedTest를 선호합니다. – Schaliasos