2009-09-18 2 views
0

interop를 통해 C#의 엔드 - 투 - 엔드 테스트를 원하는 라이브러리를 C++로 작성했습니다. 기본적으로이 라이브러리는 일부 매개 변수를 사용하고 다른 끝에 파일을 침투합니다. 요청을 com interop에 전달한 다음 모든 데이터가 파일에 올바르게 기록되었다고 주장합니다.관리 코드에서 NUnit의 통합 테스트 C++ 코드

가능합니까? 더 쉬운 방법이 있습니까? pinvoke 또는 뭔가 사용?

감사합니다.

답변

1

.net 테스트와 네이티브 C++ 코드를 함께 붙이기 위해 C++/CLI를 사용하고 싶습니다.

실제로 잘 작동합니다. 몇 달 전에 비슷한 문제가 있었는데, 작성한 C++ 프로토콜 라이브러리가 기존 Java 구현과 상호 운용 될 수 있는지 확인하고자했습니다. 이를 위해 C++ 코드에 thin C++/CLI shim을 사용하고 J #으로 Java를 작성했으며 C#으로 테스트를 작성했습니다.

+0

그래서 C++을 사용하여 풀로 붙이면 테스트중인 시스템을 호출하고 필요한 어설 션을 수행하는 데 사용되는 C++ 클래스를 생성한다는 의미입니까? 구현 방법에 대해 좀 더 자세히 설명해 주시겠습니까? –

+0

C++/CLI 계층은 단순히 기본 API에 대한 호출을 위임 한 정적 메서드가있는 클래스였으며 들어오는 CLR 형식을 네이티브 (주로 System :: Byte [] ^에서 char [])로 변환하는 것과 같은 필요한 작업을 수행했습니다. C# 단위 테스트는 J # 클래스와 함께 C++/CLI 클래스를 호출했습니다. –