2010-03-30 1 views
1

우리는 프로젝트, .NET 웹 서비스 (WCF)에서 우리를 위해 코드를 개발하는 소프트웨어 하우스를 보유하고 있으며 테스트 하네스에 대해 별도의 청구 가능 작업으로 지불해야합니다. 일일 요금. 저는 방금 회사에 가입하여 소프트웨어 하우스에서 얻은 정보를 검토하고 업계의 생각을 알고 싶습니다..NET Test Harness 무엇을 가지고 있어야합니까?

기본적으로 웹 응답 결과에 대한 응답 영역과 함께 XML 제출 버튼을 놓을 입력 영역 (웹 서비스 요청)이있는 w/s를 호출하는 WinForm이있었습니다. .. 우리 내부의 학사가 모든 XML 요청 문서를 만들었으므로이 문제를 해결할 논리가 없습니다.

나는이있어 테스트 하네스의 정의를 인터넷에 상대 : http://en.wikipedia.org/wiki/Test_harness

그것은 일 다음이 3이 있어야합니다 상태 :

  • 는 테스트 프로세스를 자동화합니다.
  • 테스트 사례의 테스트 스위트를 실행하십시오.
  • 관련된 테스트 보고서를 생성하십시오.

분명히 우리는 WinForm을 통해 부분적으로 "테스트 프로세스 자동화"와 별개의 것을 가지고 있지 않습니다.

OK, 내 개발 배경에서 5 년 전에 WinForm을 테스트 하니스로 만들 것을 기대했는데 실제로 이런 종류의 도구를 사용해야했다. 나는 소프트웨어 하우스에서 일종의 툴링을 기대했다. NUnit, NBUnit, SOAPIU) 이후에 사용할 회귀 테스트 팩을 만들 수 있습니다. [그것을 얻지 못했지만 요구 사항을 맺은 후에 내가 고용되지 않았기 때문에 요구했습니다.]

내 요구 사항이 현실적이 아니면 누군가가 나와 함께 설명해 줄 수 있습니까? 내가 이것을했다면, 나는 NUnit과 TDD를 사용하고 테스트 하네스를 회귀 테스트 팩으로 재사용 할 것인가?

나는 지역 사회가 생각한 것을보고 싶다.

건배

업데이트

:

이봐 Beniaminus, 응답에 대한 감사, 내가 미쳐되지 않은 만나서 다행, 물론 아직 어쨌든 :) 우리에게 주어진 것은 기본의 더 " unit test "WinForm .NET 1.1에서"Unit Testing "을하기 위해 사용했을 것입니다. 우리가 고객으로서 지불하는 테스트 장비가 아닙니다.

테스트 하네스에 대한 개발자 노력의 댓가는 1 일 뿐이지 만 웹 서비스는 매우 간단하며 BA와의 이야기에서 총 10 개의 테스트 (긍정적 인 것과 부정적인 것)가 있습니다.

WinForm은 웹 참조를 추가하고 클라이언트 측 프록시 개체를 생성하고 서비스를 호출하고이를 테스트하기 위해 30 분 동안 최대 2 시간/2 시간 30 분, UI 30 분을 취했을 것이라고 생각됩니다. .

NUnit을 작성하여 10 개의 TestFixture 테스트를 작성하여 파일 시스템 (BA가 작성한)에서 XML을 읽은 다음 NUnit에서 웹 서비스를 호출하고 그 결과 (pass/fail)를 구문 분석을 통해 구문 분석 할 수 있다고 생각합니다. 응답, 어쨌든 내가 기대했던 것입니다 :

답변

2

가장 기본적인 수준에서 테스트 하니스는 UI가없는 무언가를 운동 할 수있게 해주는 작은 프로그램입니다. 그러나 내가 개발중인 웹 서비스의 결과를보기 위해 채찍질 할 수도있는 기본적인 도구는 내가 구입하는 것으로부터받을 것으로 예상되는 테스트 장치가 아닙니다.

다른 사용자에게 테스트 장치를 제공하는 경우 일련의 테스트 사례를 노출하고 가장자리 사례를 탐색하고 자동화를 허용하기 위해 더 많은 작업을 수행 할 것입니다. 따라서 이와 같은 테스트 도구는 API를 사용하는 방법을 문서화하고 예제를 제공합니다.

궁극적으로 NUnit 테스트의 테스트 장치가 있어야합니다. 특히 NUnit 테스트 라이브러리를 작성한 경우이 코드를 다른 사람에게 제공하면 무료이며 API를 명확하게 탐색하고 문서화합니다.

자동화 된 테스트 장치가 필요하다고 생각하지 않습니다. 하지만 정의가 없다면, 아마 그런 종류의 테스트 장비를 거의 얻을 수 없을 것입니다.

+0

답장을 보내 주셔서 감사합니다. 위의 주요 설명을 업데이트하여 텍스트에 조금 더 자세히 설명하고 싶습니다. – Conor