문제

단위 테스트 생성과 같은 것이 있습니까? 그렇다면...

... 잘 작동합니까?

... .NET에 사용할 수있는 자동 생성 솔루션은 무엇입니까?

... 이와 같은 기술을 사용하는 예가 있습니까?

... 이것은 특정 유형의 응용 프로그램에만 적합합니까, 아니면 수동으로 서면 모든 단위 테스트를 교체하는 데 사용될 수 있습니까?

도움이 되었습니까?

해결책

보세요 PEX. Microsoft 연구 프로젝트입니다. 웹 사이트에서 :

PEX는 동적 상징적 실행을 기반으로 자동화 된 탐색 테스트를 통해 손으로 쓴 매개 변수화 된 단위 테스트에서 단위 테스트를 생성합니다.

다른 팁

TDD가 진행되는 한 단위 테스트 생성에는 아무런 의미가 없다고 생각합니다.

당신은 단위 테스트 만하기 위해 (개발자로서) 설계 및 사양과 관련하여 추적하고 있다고 확신합니다. 자동으로 테스트를 생성하기 시작하면 해당 목적이 상실됩니다. 물론 그것은 아마도 100% 코드 범위를 의미 할 것이지만, 그 범위는 무의미하고 비어있을 것입니다.

자동화 된 단위 테스트는 또한 귀하의 전략이 테스트 중이며 이는 TENET 이전에 TDD의 테스트와 반대입니다. 다시, TDD는 테스트에 관한 것이 아닙니다.

즉, MSTEST에는 자동 단위 테스트 생성 도구가 있다고 생각합니다. VS2005와 함께 사용할 수있었습니다.

2017 년 업데이트 :

단위 테스트 보일러 플레이트 생성기 VS 2015-2017에서 일하며 유지되고 있습니다. 광고대로 작동하는 것 같습니다.

'ErrorUnit'을 만들었고 일시 정지 된 Visual Studio 또는 Error Logs에서 MSTEST 또는 NUNIT 장치 테스트를 생성합니다. 클래스 변수, 메소드 매개 변수 및 EF 데이터 액세스 조롱을 조롱합니다. (http://errorunit.com)

단위 테스트 생성기는 모든 것을 할 수 없습니다. 단위 테스트는 고전적으로 세 부분으로 분리되어 있으며, 행동하고, 주장합니다. 배열 부분은 단위 테스트의 가장 큰 부분이며 테스트에서 수행 될 모든 데이터를 조롱하는 모든 전제 조건을 테스트에 설정합니다. 단위 테스트의 ACT 부분은 일반적으로 한 줄이며 활성화됩니다. 해당 데이터를 통과하는 코드의 일부는 테스트되고 마지막으로 테스트의 어설 션 부분은 ACT 부분의 결과를 가져 와서 기대치를 충족하는지 확인합니다 (오류가 없는지 확인할 때 제로 라인이 될 수 있음).

단위 테스트 생성기는 일반적으로 단위 테스트 생성에서 '배열'및 'ACT'부분 만 수행 할 수 있습니다. 그러나 단위 테스트 생성기는 일반적으로 귀하만이 올바른 것이 무엇인지, 목적에 무엇이 잘못되었는지 아는 것처럼 'Assert'부분을 작성하지 않습니다. 따라서 완전성을 위해서는 일부 수동 입력/단위 테스트가 필요합니다.

나는 Jon에 동의합니다. 자동화 된 퍼즈 테스트와 같은 특정 유형의 테스트는 자동화 된 생성의 혜택을받습니다. 단위 테스트 프레임 워크의 시설을 사용하여이를 달성 할 수 있지만 이는 좋은 단위 테스트 범위와 관련된 목표를 달성하지 못합니다.

Parasoft .Test 테스트 생성 기능이 있습니다. 테스트 설명 및 어설 션 평가에 수녀 프레임 워크를 사용합니다.

자동화 된 생성 시나리오 (입력 및 호출 테스트 방법)를 통해 회귀 테스트 스위트를 준비하고 현재 코드 기반 동작을 기반으로하는 어설 션을 만들 수 있습니다. 나중에, 테스트 하에서 코드 기반이 진화 한 후, 주장은 회귀를 나타내거나 다시 쉽게 기록 할 수 있습니다.

나는 사용했다 Nstub 내 수업에 대한 테스트를 스터브하기 위해. 상당히 잘 작동합니다.

테스트 케이스를 생성하기 위해 도구를 사용했습니다. 나는 그것이 높은 수준의 최종 사용자 지향 테스트에 적합하다고 생각합니다. 순수한 단위 테스트보다 사용자 수용 테스트의 일부입니다.

이 수락 테스트를 위해 단위 테스트 도구를 사용합니다. 잘 작동한다.

보다 테스트 케이스 구축을위한 툴링.

주니트 테스트 클래스를 자동으로 생성하는 agitarone (www.agitar.com)이라는 상업용 제품이 있습니다.
나는 그것을 사용하지 않았으므로 그것이 얼마나 유용한 지 언급 할 수 없지만, 현재 Java 프로젝트를하고 있다면 그것을보고있을 것입니다.

나는 .NET 동등성을 모른다 (Agitar는 .NET 버전을 발표했지만 AFAIK는 결코 구체화되지 않았다).

나는이 스레드가 오래되었음을 알고 있지만 모든 개발자를 위해 단위 테스트 생성기라는 좋은 라이브러리가 있습니다.

https://visualstudiogallery.msdn.microsoft.com/45208924-E7B0-45DF-8CFF-165B505A38D7

좋은 개발자

gennymcgenface 클래스에서 각 함수에 대한 단위 테스트를 작성하고 각 매개 변수에서 임의의 단어/값으로 개체를 생성합니다.

  • 수업에서 각 기능에 대한 단위 테스트를 생성합니다
  • 매개 변수 입력에 대한 유효한 무작위로 생성 된 값을 파악하고 반환 명령문.
  • 조롱 가능한 인터페이스를 반환 유효한 무작위로 생성 된 값을 반환합니다
  • 수업에서 각 기능에 대한 단위 테스트를 생성합니다
  • 필요한 모든 네임 스페이스를 테스트 클래스로 가져옵니다

특히 매개 변수가 많은 입력 객체가있는 경우 장치 테스트를 설정하는 데 도움이됩니다.

단위 테스트는 다음과 같은 것처럼 보일 것입니다

셀렌 웹 페이지의 사용자 명령에서 단위 테스트를 생성합니다.

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