MSTest를 사용하여 비동기 코드를 테스트하는 방법
저는 매우 간단한 비동기 코드를 작성하고 있습니다. 스레드에서 파일을 저장하는 것뿐입니다.
Microsoft Visual Studio Team System 2008의 MSTest 단위 테스트 프레임 워크를 사용하여이 코드를 테스트하고 싶습니다.
어떻게해야합니까?
메서드가 반환 될 때까지 테스트 메서드를 간단히 차단하고 싶습니다. 이 작업을 수행하는 몇 가지 방법을 상상할 수 있지만 이에 대한 모범 사례 나 도우미 클래스가 없다는 사실에 놀랐습니다.
나는 볼 을 많이 실버 라이트하지만 일반적인 아무것도.
Visual Studio 2012 (이전의 "Visual Studio 11") 는 비동기 테스트에 대한 지원을 도입했습니다 . 다음과 같이 보입니다.
[TestMethod]
public async Task FooTest()
{
var result = await SomeAsyncOperation();
Assert.IsTrue(someCondition);
}
코멘트에 언급 한 바와 같이, 반환 형식은 중요하다 . 메서드를 returning으로 선언하면 작동하지 않습니다 .Task
void
System.IO 메서드를 직접 호출하는 대신 SystemWrapper 라이브러리를 사용해보십시오 . 그런 다음 테스트에서 원하는대로 호출을 모의 처리하고 오류 조건을 포함하여 원하는대로 테스트에 반환하고 논리가 예상대로 작동하는지 확인할 수 있습니다.
예제를 보려면 RhinoMocks와 함께 사용하는 방법을 보여주는 이 블로그 게시물 을 참조하십시오 .
참고 URL : https://stackoverflow.com/questions/2060692/how-does-one-test-async-code-using-mstest
'Program Tip' 카테고리의 다른 글
주어진 선택기와 일치하는 부모가있는 항목을 제외하는 JQuery 선택기는 무엇입니까? (0) | 2020.10.29 |
---|---|
Rails ActiveRecord : INNER JOIN 대신 LEFT JOIN으로 조인합니다. (0) | 2020.10.29 |
Python에서 Excel 파일을 어떻게 열 수 있습니까? (0) | 2020.10.29 |
Ruby에서 세미콜론을 사용할 수 있습니까? (0) | 2020.10.29 |
mongodb에서 자식 개체를 쿼리하는 방법 (0) | 2020.10.29 |