MS Unit Test Framework

Soyee Sung·2025년 4월 11일

MS Unit Test Framework는 Microsoft에서 제공하는 .NET 애플리케이션용 단위 테스트 프레임워크입니다. 정식 명칭은 MSTest Framework 또는 간단히 MSTest라고 불리며, Visual Studio와 밀접하게 통합되어 있어 많은 C# 개발자들이 사용합니다.

✅ MSTest Framework란?

  • .NET용 테스트 프레임워크 (xUnit, NUnit과 유사한 기능 제공)
  • Visual Studio에 기본 내장되어 별도 설치 없이 바로 사용 가능
  • 테스트 실행, 결과 확인, 코드 커버리지 확인 등과 통합 가능

✅ 주요 어노테이션(특성)

using Microsoft.VisualStudio.TestTools.UnitTesting;

[TestClass]
public class CalculatorTests
{
    private Calculator _calculator;

    [TestInitialize]
    public void Setup()
    {
        _calculator = new Calculator();
    }

    [TestMethod]
    public void Add_TwoNumbers_ReturnsSum()
    {
        int result = _calculator.Add(2, 3);
        Assert.AreEqual(5, result);
    }

    [DataTestMethod]
    [DataRow(2, 3, 5)]
    [DataRow(-1, 1, 0)]
    [DataRow(0, 0, 0)]
    public void Add_VariousInputs_ReturnsCorrectSum(int a, int b, int expected)
    {
        int result = _calculator.Add(a, b);
        Assert.AreEqual(expected, result);
    }
}

✅ 장점

  • Visual Studio UI와 완벽한 통합 (디버깅, 테스트 탐색기 등)
  • 다른 Microsoft 도구 (Azure DevOps, TFS)와의 호환성
  • 간단하고 직관적인 문법

✅ 단점

  • 일부 기능은 NUnit이나 xUnit에 비해 유연성이 떨어짐
  • 오픈소스 커뮤니티에서 상대적으로 덜 활발

✅ 설치 (NuGet 패키지)
Visual Studio에서 기본 제공되지만, 별도로 설치해야 하는 경우:

Install-Package MSTest.TestFramework
Install-Package MSTest.TestAdapter

또는 *.csproj에 다음 추가:

<ItemGroup>
  <PackageReference Include="MSTest.TestFramework" Version="2.2.10" />
  <PackageReference Include="MSTest.TestAdapter" Version="2.2.10" />
</ItemGroup>

0개의 댓글