>백엔드 개발 >C++ >보다 쉬운 단위 테스트를 위해 문자열에서 스트림을 어떻게 생성할 수 있습니까?

보다 쉬운 단위 테스트를 위해 문자열에서 스트림을 어떻게 생성할 수 있습니까?

Mary-Kate Olsen
Mary-Kate Olsen원래의
2025-01-22 15:01:11792검색

How Can I Create a Stream from a String for Easier Unit Testing?

단위 테스트 단순화: 문자열로 스트림 생성

텍스트 파일 스트림을 처리하는 단위 테스트 방법은 까다로울 수 있습니다. 이 프로세스를 단순화하려면 GenerateStreamFromString 메서드를 사용할 수 있습니다.

<code class="language-csharp">public static Stream GenerateStreamFromString(string s)
{
    var stream = new MemoryStream();
    var writer = new StreamWriter(stream);
    writer.Write(s);
    writer.Flush();
    stream.Position = 0;
    return stream;
}</code>

사용 예:

<code class="language-csharp">Stream s = GenerateStreamFromString("a,b \n c,d");</code>

스트림 및 처리 사용

스트림이 올바르게 릴리스되었는지 확인하려면 using 문을 사용해야 합니다.

<code class="language-csharp">using (var stream = GenerateStreamFromString("a,b \n c,d"))
{
    // ... 对流进行操作
}</code>

StreamWriter 및 릴리스 리소스

StreamWriter은 명시적으로 공개되지 않습니다. 해제해야 하는 리소스를 전혀 사용하지 않기 때문입니다. Dispose 메서드는 주로 기본 스트림(이 경우 MemoryStream)을 닫습니다.

.NET 4.5 이상

.NET 4.5 이상에서 StreamWriterwriter 할당이 취소된 후에도 기본 스트림을 열어두는 오버로드된 메서드를 제공합니다. 그러나 위에 제공된 코드는 이전 .NET 버전과도 호환되는 동시에 동일한 기능을 달성합니다.

위 내용은 보다 쉬운 단위 테스트를 위해 문자열에서 스트림을 어떻게 생성할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.