파일 읽기 기능에 대한 단위 테스트를 수행하는 방법은 무엇입니까?

지금까지 AAA 방법을 사용해 왔는데, 파일이 존재하는지, 파일을 읽을 수 있는지 등을 테스트하기 위해 '모형'테스트 세트에 배포하고 싶습니다.

내가 사용한 코드 유형은 다음과 같습니다.

[TestMethod]
public void Mul_TestValues0and0_EvaluatesTo0() {
    // Arrange
    var testArgument1 = 0;
    var testArgument2 = 0;
    var expectedResult = 0;

    // Act
    var actualResult = testedClass.Mul(testArgument1, testArgument2);

    //Assert
    var failMessage = String.Format(@"{0} * {1} evaluates to {2}, actual test result was {3}", testArgument1, testArgument2, expectedResult, actualResult);
    Assert.AreEqual(expectedResult, actualResult, failMessage);
}
Dustinmoris

원하는 것은 기능 통합 테스트이지만 단위 테스트는 아닙니다.

SUT에 삽입하고 조롱 할 수있는 인터페이스가있는 클래스로 IO 작업을 래핑해야합니다.

그런 다음 파일 읽기 결과를 모의 처리하고 나머지 비즈니스 로직을 테스트 할 수 있습니다.

말이 돼?

편집 : 좀 더 컨텍스트를 제공하려면 :

단위 테스트는 말 그대로 한 번에 하나의 단위 만 테스트하는 것을 의미합니다. 파일을 읽고 직렬화 등을 수행하는 메소드를 테스트하면 분명히 한 가지 이상을 테스트하는 것입니다.

시스템 IO 라이브러리가 이미 테스트되었다고 가정 할 수 있기 때문에 테스트를 너무 많이 할뿐만 아니라 많은 테스트 작업을 복제하고 있는데,이 작업을 반복하는 이유는 무엇입니까? 얇은 래퍼 클래스로 추상화하고 자신의 도메인 로직에 테스트를 집중합니다.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

파일 읽기 기능에 대한 단위 테스트를 수행하는 방법은 무엇입니까?

분류에서Dev

Ansible 기능에 대한 단위 테스트 케이스를 생성하는 방법은 무엇입니까?

분류에서Dev

.Net Framework로 작성된 Azure Data Lake의 추가 기능에 대한 단위 테스트를 수행하는 방법은 무엇입니까?

분류에서Dev

처리 시간 타이머에 대한 단위 테스트를 수행하는 방법은 무엇입니까?

분류에서Dev

읽기 권한에 따라 단일 / 다중 데이터 행에 대한 Flux 저장소를 처리하는 방법은 무엇입니까?

분류에서Dev

Symfony2에서 단위 및 기능 테스트를 분리하는 방법은 무엇입니까?

분류에서Dev

Struts 단위 테스트에서 파일 업로드를 테스트하는 방법은 무엇입니까?

분류에서Dev

비동기 함수의 적절한 단위 테스트를 만드는 방법은 무엇입니까?

분류에서Dev

프로그램이 중단되기 전에 컴파일러가 수행 한 모든 단계를 포함하는 전체 보고서 / 로그를 수신하기 위해 로깅 (또는 기타 방법)을 사용하는 방법은 무엇입니까?

분류에서Dev

감마 함수에 대해 테스트하기 위해 kolmogorov-Smirnov 테스트를 수행하는 방법은 무엇입니까?

분류에서Dev

한 줄 방법 (더미)에 대한 단위 테스트를 작성하는 방법은 무엇입니까?

분류에서Dev

Python glob을 사용하여 간단한 기능에 대한 DRYer 테스트를 얻는 방법은 무엇입니까?

분류에서Dev

내 기능에 대한 테스트 케이스를 작성하는 방법은 무엇입니까? PHP

분류에서Dev

.NET의 단일 단위 테스트 내에서 로케일 소수 구분 기호를 수정하는 방법은 무엇입니까?

분류에서Dev

파일 시스템의 크기를 바이트 단위로 인쇄하는 방법은 무엇입니까?

분류에서Dev

c에서 메인 파일 기능의 단위 테스트를 수행하는 방법

분류에서Dev

실패한 파일 삭제에 대한 단위 테스트 방법은 무엇입니까?

분류에서Dev

Laravel에서 컨트롤러에 대한 단위 테스트를 작성하는 방법은 무엇입니까?

분류에서Dev

다른 단위 테스트 기능을 사용하는 함수를 단위 테스트하는 방법은 무엇입니까?

분류에서Dev

$ state로 컨트롤러에 대한 단위 테스트를 구성하는 방법은 무엇입니까?

분류에서Dev

C ++ 카운트 제어 루프를 수행하기 위해 파일에서 읽는 방법은 무엇입니까?

분류에서Dev

함수 내에서 쓰기위한 파일을 만드는 가장 간단한 방법은 무엇입니까?

분류에서Dev

Hibernate : Hibernate 테스트 스위트에서 단일 테스트를 시작하는 방법은 무엇입니까?

분류에서Dev

logstash 구성에 대한 단위 또는 통합 테스트를 구현하는 방법은 무엇입니까?

분류에서Dev

logstash 구성에 대한 단위 또는 통합 테스트를 구현하는 방법은 무엇입니까?

분류에서Dev

폴더 및 하위 폴더 및 파일에 대한 읽기 쓰기 권한을 부여하는 방법은 무엇입니까?

분류에서Dev

폴더 및 하위 폴더 및 파일에 대한 읽기 쓰기 권한을 부여하는 방법은 무엇입니까?

분류에서Dev

junit 5 단위 테스트에서 @Autowired에 대한 개체를 모의하는 방법은 무엇입니까?

분류에서Dev

mocah 단위 테스트 케이스를 동기식으로 실행하는 방법은 무엇입니까?

Related 관련 기사

  1. 1

    파일 읽기 기능에 대한 단위 테스트를 수행하는 방법은 무엇입니까?

  2. 2

    Ansible 기능에 대한 단위 테스트 케이스를 생성하는 방법은 무엇입니까?

  3. 3

    .Net Framework로 작성된 Azure Data Lake의 추가 기능에 대한 단위 테스트를 수행하는 방법은 무엇입니까?

  4. 4

    처리 시간 타이머에 대한 단위 테스트를 수행하는 방법은 무엇입니까?

  5. 5

    읽기 권한에 따라 단일 / 다중 데이터 행에 대한 Flux 저장소를 처리하는 방법은 무엇입니까?

  6. 6

    Symfony2에서 단위 및 기능 테스트를 분리하는 방법은 무엇입니까?

  7. 7

    Struts 단위 테스트에서 파일 업로드를 테스트하는 방법은 무엇입니까?

  8. 8

    비동기 함수의 적절한 단위 테스트를 만드는 방법은 무엇입니까?

  9. 9

    프로그램이 중단되기 전에 컴파일러가 수행 한 모든 단계를 포함하는 전체 보고서 / 로그를 수신하기 위해 로깅 (또는 기타 방법)을 사용하는 방법은 무엇입니까?

  10. 10

    감마 함수에 대해 테스트하기 위해 kolmogorov-Smirnov 테스트를 수행하는 방법은 무엇입니까?

  11. 11

    한 줄 방법 (더미)에 대한 단위 테스트를 작성하는 방법은 무엇입니까?

  12. 12

    Python glob을 사용하여 간단한 기능에 대한 DRYer 테스트를 얻는 방법은 무엇입니까?

  13. 13

    내 기능에 대한 테스트 케이스를 작성하는 방법은 무엇입니까? PHP

  14. 14

    .NET의 단일 단위 테스트 내에서 로케일 소수 구분 기호를 수정하는 방법은 무엇입니까?

  15. 15

    파일 시스템의 크기를 바이트 단위로 인쇄하는 방법은 무엇입니까?

  16. 16

    c에서 메인 파일 기능의 단위 테스트를 수행하는 방법

  17. 17

    실패한 파일 삭제에 대한 단위 테스트 방법은 무엇입니까?

  18. 18

    Laravel에서 컨트롤러에 대한 단위 테스트를 작성하는 방법은 무엇입니까?

  19. 19

    다른 단위 테스트 기능을 사용하는 함수를 단위 테스트하는 방법은 무엇입니까?

  20. 20

    $ state로 컨트롤러에 대한 단위 테스트를 구성하는 방법은 무엇입니까?

  21. 21

    C ++ 카운트 제어 루프를 수행하기 위해 파일에서 읽는 방법은 무엇입니까?

  22. 22

    함수 내에서 쓰기위한 파일을 만드는 가장 간단한 방법은 무엇입니까?

  23. 23

    Hibernate : Hibernate 테스트 스위트에서 단일 테스트를 시작하는 방법은 무엇입니까?

  24. 24

    logstash 구성에 대한 단위 또는 통합 테스트를 구현하는 방법은 무엇입니까?

  25. 25

    logstash 구성에 대한 단위 또는 통합 테스트를 구현하는 방법은 무엇입니까?

  26. 26

    폴더 및 하위 폴더 및 파일에 대한 읽기 쓰기 권한을 부여하는 방법은 무엇입니까?

  27. 27

    폴더 및 하위 폴더 및 파일에 대한 읽기 쓰기 권한을 부여하는 방법은 무엇입니까?

  28. 28

    junit 5 단위 테스트에서 @Autowired에 대한 개체를 모의하는 방법은 무엇입니까?

  29. 29

    mocah 단위 테스트 케이스를 동기식으로 실행하는 방법은 무엇입니까?

뜨겁다태그

보관