c# 단위테스트 예제

이 예제의 CheckingAccount.Withdraw 메서드를 테스트하려면 메서드의 표준 동작을 확인하는 테스트와 잔액 이상의 인출이 실패하는 것을 확인하는 테스트두 가지 테스트를 작성할 수 있습니다. CheckingAccountTests 클래스에서 다음 메서드를 추가합니다: BankAccount 클래스를 확인 하려면 테스트 클래스를 만듭니다. 프로젝트 템플릿에서 생성된 UnitTest1.cs 파일을 사용할 수 있지만 파일 및 클래스에 더 자세한 설명 이름을 지정할 수 있습니다. 일반적으로 메서드가 특정 값에 대해서만 정의된 경우 허용되는 값의 테두리 를 통해 값을 테스트합니다. 즉, 메서드가 수행해야 하는 작업을 수행해야 하지만 더 이상 수행하지 않아야 합니다. 이것은 중요 한, 당신이 실패 하려고 할 때, 일찍 실패 하 고 싶어 하기 때문에. 당신은 그것을 테스트하기 위해 무엇을 할 것인가? 이 일이 어떤 종류의 GUI를 몰았다고 가정하면 GUI를 열고 두 숫자를 입력하고 결과를 검사 할 수 있습니다. “보자, 나는 15와 20에 넣어 다시 35있어 … 옳은 것 같습니다.” 나는 그들이 단지 간단한 작업을 할 때 게터와 세터를 테스트하는 것이 바보 라고 생각합니다.

개인적으로 나는 어떤 사용 패턴을 다루기 위해 복잡한 단위 테스트를 작성하지 않습니다. 정상적인 실행 동작과 생각할 수있는 많은 오류 사례를 처리했는지에 대해 충분한 테스트를 작성하려고합니다. 버그 보고서에 대한 응답으로 더 많은 단위 테스트를 작성합니다. 단위 테스트를 사용하여 코드가 요구 사항을 충족하는지 확인하고 나중에 쉽게 수정할 수 있습니다. 나는 뭔가를 깰 경우 테스트가 실패할 것이라는 것을 알고있을 때 코드를 변경하고자하는 것이 훨씬 더 기꺼이 느낍니다. 이제 테스트할 수 있는 메서드가 있는 프로젝트가 있습니다. 이 문서에서는 테스트가 Debit 메서드에 중점을 둡니다. 직불 방법은 계정에서 돈을 인출 할 때 호출됩니다. Microsoft Fakes를 통해 단위 테스트 방법을 격리하는 방법에 대해 자세히 알아봅니다.

팀의 다른 구성원이 이제 테스트가 필요하지만 테스트를 만들지 않은 논리를 포함하도록 set/get 메서드를 확장한 것일 수 있습니다. 그러나 이제 코드가 이러한 메서드를 호출하고 변경되어 심층 적인 테스트가 필요하다는 것을 인식하지 못하고 개발 및 QA에서 수행하는 테스트는 결함을 트리거하지 않지만 릴리스 첫날의 실제 비즈니스 데이터가 트리거됩니다. 소프트웨어 개발자가 테스트 기반 개발을 수행할 때 잊어버리는 한 가지는 우리의 행동 뒤에 있는 목적입니다. 프로덕션 코드가 이미 배치된 후 단위 테스트를 작성하는 경우 테스트 값이 내려가지만 완전히 손실되지는 않습니다. 단위 테스트 프로젝트에 [TestClass] 특성이 없는 다른 클래스를 가질 수 있으며 [TestMethod] 특성이 없는 테스트 클래스의 다른 메서드를 가질 수 있습니다. 테스트 메서드에서 이러한 다른 클래스 및 메서드를 호출할 수 있습니다. 이전과 같이 우리는 우리의 API 방법을 사용하는 3 가지 가능한 시나리오를 언급했다. VisualStudio 자동 테스트 사례는 첫 번째 시나리오를 다루며 위의 테스트 사례는 3번째 시나리오를 충족합니다. 같은 방법으로 위의 테스트 메서드에서 실제StringArray 변수에서 공백을 전달 하 여 2 번째 시나리오를 만들 수 있습니다.

이 문서에서는 관리되는 코드 및 Visual Studio 테스트 탐색기용 Microsoft 단위 테스트 프레임워크를 사용하여 일련의 단위 테스트를 만들고 실행및 사용자 지정하는 단계를 수행합니다. 개발 중인 C# 프로젝트로 시작하여 코드를 실행하는 테스트를 만들고 테스트를 실행하고 결과를 검사합니다. 그런 다음 프로젝트 코드를 변경하고 테스트를 다시 실행합니다. 단위 테스트 메서드의 정렬 섹션은 개체를 초기화하고 테스트 중인 메서드에 전달되는 데이터의 값을 설정합니다. 다음 페이지에서 프로젝트의 이름을 지정합니다. 이 예제의 계정 프로젝트를 테스트하려면 프로젝트 계정테스트의 이름을 지정할 수 있습니다. 이 항목에서는 콘솔 응용 프로그램에 대한 Microsoft Visual Studio 2010(C#)에서 가장 간단한 단위 테스트를 만드는 단계별 프로세스에 대해 설명합니다. 이 예제를 사용하여 고유한 단위 테스트를 만드는 방법을 배울 수 있습니다.