하나의 Test 메소드에서 객체를 만들고 코드를 다시 작성하는 대신 다른 [TestMethod]의 나머지 부분에서 만든 객체를 사용하고 싶습니다. 몹시 떠들어 대다. 클래스 내부에 전역 변수를 선언하고 생성 테스트 메서드에서 할당하려고했습니다. 그러나 컨트롤이 다음 [TestMthod]로 갈 때 전역 변수의 값은 null이됩니다.하나의 [TestMethod]에서 C# 단위 테스트 프레임 워크의 다른 사람에게 정보 전달하기
namespace ABC
{
class UnitTest
{
[TestMethod]
public void CreateObject()
{
var createdObject = \\ logic to create object;
}
[TestMethod]
public void Display()
{
//Here i want to use the created object instead of using object.
}
}
}
어떻게하면됩니까?
TestMethods의 실행은 결정적이지 않으므로 순서를 제어 할 수 없습니다. TestInitialize 또는 setup-help 메소드가 앞으로 나아갈 길입니다. 또한 독립적 인 테스트가 가장 안정적이고 쉬운 방법이기 때문에 병렬로 실행합니다. – Jocke
@Jocke 실제로 테스트 메소드를 오름차순으로 명명하여 모든 테스트 메소드를 자동화하는 아이디어를 가지고 있으므로 순서대로 실행합니다. . 그럼이게 가능하지 않니? – user1168608
@ user1168608 가능한지 여부는 단위 테스트 러너의 구현 세부 사항입니다. 그럼에도 불구하고 단위 테스트는 여러 가지 이유로 성능이 뛰어납니다 (병렬 처리가 가능함). 유지 관리가 더 좋습니다. –