2009-03-27 12 views
3

작성한 코드를 효과적으로 테스트하는 방법은 무엇입니까? 나는 내 사이트에 대해 작성한 호랑이 테스트 코드가 매우 어렵다는 것을 알고 있습니다. 왜냐하면 저의 일부는 제 코드에서 버그를 발견하고 싶지 않기 때문에 완벽하지는 않다는 것을 보여주기 때문입니다. (필자도 완벽하지 않을 수도 있습니다.)자신이 작성한 코드를 어떻게 테스트합니까?

저는 단위 테스트를 믿습니다.하지만 최근에 나는 총소리를 들려 주며, 많은 코드를 엉덩이에서 생산에 배치하고 있습니다. 이는 새로운 웹 스타트 업에서는 항상 나쁜 것은 아니지만 종종 그렇습니다.)

지난 몇 주 동안 나는 내 자신의 테스트로 인해 심각한 버그로 인해 물 렸습니다. 필자는 블랙 박스 테스트를 위해 자신의 코드를 테스트하는 파트너가 있지만 구현 세부 사항에 대한 지식이 있으므로 필자는 화이트 박스 테스트를 사용하여 코드의 약점을 테스트하는 것이 가장 좋습니다.

직접 작성한 코드를 테스트하는 데 유용한 방법과 도구는 무엇입니까?

답변

3

이 요약 할 수있는 도구에 대해 아무 생각이 없다, 오직이 방법을 사용하고

  1. 코드를 작성하기 전에를 입력 및 확인에 걸릴 단위 테스트를 작성 출력.
  2. 에만 단위 테스트를 통과하십시오. 그 이상도 아무것도 없습니다.
  3. 작업중인 모든 방법에 대해 반복하십시오.

회귀 :

  1. 당신이 변화/기능/수정, 실행하는 모든 단위 테스트를 커밋 때마다. 당신이 버그를 발견

    1. 때마다 버그를 공개하는 단위 테스트를 작성 : 실패 각 단위 테스트에 대한
    2. ,

    버그 FIX 고정 버그로 이동합니다.

  2. 단위 테스트를 통과시키는 수정 프로그램을 구현하십시오.

기능 테스트 :

  1. (웹 테스트에 대한 예 selenium)
  2. 의 엔드 - 투 - 엔드 기능을 운동 도움이 검사의 숫자를 만들기를 괜찮은 기능 테스트 프레임 워크를 찾기
  3. REGRESSION 및 BUG FIX 프로세스를 사용하여 테스트를 찾아서 수정하십시오. 당신이 TDD를 할 경우
+0

은 그 모든 전에이 추가 인터페이스와 문서를 작성합니다 ... – Varkhan

+0

좋은 점을, 나는 전에 _too_much_ 문서를 작성 주저 것이지만. 인터페이스에 변화가 생기면 그에 따라 테스트가 업데이트되지만 문서를 최신 상태로 유지하는 것이 종종 실수로 처리해야 할 첫 번째 작업 중 하나입니다. – bedwyr

+0

REGRESSION에 실패한 모든 테스트가 BUG FIX의 새로운 테스트 케이스로 이어질 것이라는 것을 암시하는 것처럼 보입니다. – philant

4

다양한 조건에서 코드의 동작이 무엇인지에 대해 생각할 수 있으므로 코드 작성 전에 테스트를 작성하는 것이 도움이됩니다.

1

필자는 모든 개인 프로젝트의 코드가 20 줄이 넘는 코드 앞에 단위 테스트를 작성하기 시작했습니다. 그것은 많은 도움이됩니다.

저는 사람들이 unittests와 TDD가 싫다고 말하면 항상 놀랍습니다.

+0

내가 단위 테스트를 미워하고 TDD –

4

좋습니다.

  1. 당신은 완벽하지 않습니다. 난 완벽하지 않아. 누구도 완벽하지 않다. 따라서 오류 노출에 대해서는 걱정하지 마십시오. 자신을 더 많이 발견할수록 다른 사람이 당신을 위해 그들을 찾도록 내버려두면 더 완벽 해집니다.

  2. 가능한 코드 앞에 테스트를 작성하는 습관을 가지십시오. 코드가 의미있는 일련의 테스트로 수행해야 할 작업을 정의한 다음 테스트를 통과시키는 코드를 정의합니다. 그렇다면 리팩토링 - 클래식 TDD.

  3. 버그가있는 경우 즉시 버그를 노출하는 테스트를 작성하십시오 (즉, 통과해야하지만 버그로 인해 실패합니다). 그런 다음 테스트를 통과하면 버그가 수정됩니다.

0

먼저 입력의 가능성을 모두 메모해야합니다. 그런 다음 모든 가능성을 테스트해야합니다. 당신은 우리 버그를 발견 할 수 있으며 많은 버그를 없앨 것입니다.

TDD : 지금까지 내가

0
  1. , 당신은 일주일 동안 그것을 잊지 테스트 코드를 작성하고 생산적인 코드를 작성할 수 있습니다. 귀하의 접근 방식이 올바른 것이라면 다시 생각할 것입니다.
  2. 당혹감을 피하십시오. 코드에서 버그를 발견하고 수정할 수있는 경우 아무도 잘못된 코드를 작성한다고 비난 할 수 없습니다.
관련 문제