C#/단위테스트
[C# 단위테스트] xUnit FluentAssertions 사용하기
범범조조
2021. 11. 18. 19:32
소개
- 안녕하세요. 오늘은 xUnit 단위테스트에서 좀 더 직관적으로 단위테스트를 할 수 있는 Nuget 패키지가 있어서 해당 패키지 사용 방법에 대해서 간략히 설명 드리려고 합니다.
- FluentAssertions Nuget 패키지 인데요, 해당 누겟을 설치하여 xUnit으로 단위테스트를 진행하게 되면, Assert 부분을 보다 직관적으로 프로그래밍 하여 단위테스트를 할 수 있습니다.
- 그럼 어떻게 사용하는지 보여 드리도록 하겠습니다.
- 참고로, 앞서 xUnit 을 이용하여 단위테스트 진행하는 방법을 모르시는 분은 아래 링크에 가셔서 선행 학습을 하고 따라하시는 걸 추천 드리겠습니다.
- https://afsdzvcx123.tistory.com/entry/C-%EB%8B%A8%EC%9C%84%ED%85%8C%EC%8A%A4%ED%8A%B8-C-xUnit%EC%9C%BC%EB%A1%9C-%EB%8B%A8%EC%9C%84%ED%85%8C%EC%8A%A4%ED%8A%B8-%EC%A7%84%ED%96%89%ED%95%98%EA%B8%B0
1. Nuget 패키지 -> FluentAssertions 설치하기
- 앞서 xUnit 단위테스트 포스팅을 통해 xUnit 단위테스트 진행할 프로젝트를 생성하였습니다.
- 해당 프로젝트에서 Nuget 패키지 -> FluentAssertions 입력하여 해당 누겟을 설치합니다.
2. FluentAssertions 사용하기
- 설치가 완료 되었다면, xUnit 프로젝트에 using FluentAssertions; 네임스페이스를 추가합니다.
- 네임스페이스를 추가해야 FluentAssertions 사용할 수 있습니다.
- 다음으로 FluentAssertions 테스트 코드를 작성합니다.
using FluentAssertions;
using Test;
using Xunit;
namespace Calculator_Test
{
public class UnitTest1
{
[Fact]
public void Should_Add_Test()
{
// Arrange
Calculator calc = new Calculator();
// Act
int result = calc.Add(10, 2);
// FluentAssertions 이전 Assert
Assert.Equal(12, result);
// FluentAssertions 사용
result.Should().Be(12);
}
}
}
- 위와 같이 이전에 Assert 사용할 때는
Assert.Equal(12, result)
로 사용했습니다. - 하지만, FluentAssertions 누겟을 통해
result.Shoule().Be(12)
라고 해서 단위테스트 검증을 영어로 풀어서 사용하도록 하였습니다. - 앞으로 단위테스트 포스팅에서는 FluentAssertions 누겟을 사용해서 xUnit 단위 테스트를 진행합니다.
728x90