문제

Delphi 2006의 MIDAS/DataSNAP 프로젝트에서 하나의 설정 Dunit Testing을 어떻게 설정합니까?

편집하다

delphi 2006의 프로젝트 마법사가 tremotedatamodule과 함께 작동하지 않는 방법은 tremotedatamodule에 dunit 테스트를 어떻게 설정합니까?

도움이 되었습니까?

해결책

질문은 전적으로 의미가 없습니다. 단위 테스트는 DataSNAP 서버가 아닌 별도의 프로젝트에서 수행됩니다. 일반적으로 데이터베이스에 연결되는 테스트는 단위 테스트 대신 통합 테스트입니다. 정확히 테스트하고 싶은 것은 무엇입니까? 예를 들어 TremotedAtamodule 내에서 유틸리티 방법 인 경우, 이들을 클래스 방법으로 별도의 클래스로 추출하여 테스트해야합니다. 단위 테스트를 수행하기 위해 응용 프로그램 서버를 인스턴스화 할 필요는 없습니다.

다른 팁

위의 Terse 답변에 대해 죄송합니다. 게시물을 편집하는 동안 반환을 누를 때마다 iPad 게시물이 게시됩니다.

Dunit은 단위 테스트를 수행하도록 설계되었으며, 원하는 것은 단위 테스트가 아닙니다.

테스트는 단위 테스트가 아닙니다.

  • 데이터베이스와 대화합니다
  • 네트워크를 통해 전달됩니다
  • 파일 시스템에 닿습니다
  • 다른 단위 테스트와 동시에 실행할 수 없습니다.
  • 구성 파일 편집과 같은 환경에 특별한 작업을 수행하여 실행해야합니다.
  • 격리로 실행할 수 없습니다

탄탄한 원칙 (특히 단일 책임 원칙)을 따르는 경우 Dunit을 사용하여 클래스를 테스트하는 (MIDAS/DataSNAP 관련 논리를 테스트하지 않고)는 합리적으로 간단해야합니다. 그리고 실제로 MIDAS/DataSNAP 논리를 테스트 할 필요는 없습니다.

그러나 델파이 응용 프로그램에 대한 통합 및 행동 테스트를 수행하는 방법이 있습니다.

개인적으로 TestComplete는 어떤 종류의 CI 서버와 잘 통합되지 않기 때문에 TestComplete를 사용하지 않으며 테스트는 독점적 인 이진 형식으로 저장됩니다 (이는 소스 제어 시스템의 차이를 병합하거나 변경 사항을 유지하는 데 도움이됩니다).

당신은 시도 할 수 있습니다 DSPEC, 그러나 Jody Dawkins가 더 이상 유지하고 있는지 확신 할 수 없습니다.

나는 그것을 사용했다 오토이트 기본 스크립팅 언어는 일부 프로젝트에서 직접 언어를 사용했으며 .NET 어셈블리를 사용하여 Nunit 및 C#을 사용하여 델파이 애플리케이션을 구동했습니다. 완벽하지는 않지만 Nunit / C# 솔루션은 기능적 / 행동 테스트 델파이 응용 프로그램을 수행하는 데 보았던 것보다 더 우아했습니다. 그래도 설정을 얻으려면 약간의 노력이 필요했습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top