을 만들 JUnit 에 대한 테스트 방법을 덮는 그것의 모든 호출 Eclipse 에서 작업 영역

StackOverflow https://stackoverflow.com//questions/11658056

  •  11-12-2019
  •  | 
  •  

문제

가정 할 수 있습 다음 Java 클래스:

class MyClass {
   public String methodA( String data, String expression ) {
      // expression is evaluated using data
      // ...
      // this leads to a result which is returned
      return result;
   }
}

expression 인스턴스는 식의 언어(DSL).따라서,평가 expressiondata 의 조합에 따라 달라집니다.일반적으로, expression 고정 값을 변경되지 않는 자주 data 를 통해 변경할 수 있습의 모든 호출.

론,언젠가 나중에 버그에서 발견 MyClass.methodA(String,String).버그에 있는 몇 가지 기본 클래스고만이 발생한 특별한 조합의 expressiondata.JUnit 테스트 쉽게 쓴 이를 위해 특별한 경우 수정할 수 있습니다.

불행하게도,이 방법은 자주 사용되는 전체에 걸쳐 프로젝트입니다.Eclipse 화 계층을 식별하는 이상 97 는 다른 방법을 이 방법이 사용됩니다.나는 지금 두려움 회귀분석,경우만 적용 버그 수정.더 많은 느낌을 안전하고 싶지 회귀분 테스트합니다.

일반적으로,단위 테스트 고려해야 하는 모든 중요한 종류의 호출,특히 국경 경우입니다.하지만, expression 은 DSL 다를 수 있는 매우 쉽지 않았을 테스트-덮개는 모든 잠재적 사용합니다.또한,이러한 테스트를 것이라는 확인하지 않을 거짓 사용에 의존하고 있습니다.

그래서 나는 아이디어로 진행 방법은 다음과 같습니다.

  1. 을 찾아의 모든 호출 이 방법(처럼 사용하는"통화 계층구조에서"이클립스)및추출물에 대한 모든 값 expression.

  2. 샘플 충분한 실제 값 data (예:에서 데이터베이스)및 크로스 모두를 평가하는 표현에서 첫 번째 단계에 원본을 사용하여 버전 MyClass.methodA(String,String).트리플 저장 (data, expression, result) 하는 파일입니다.

  3. 구현하는 버그 수정.

  4. 테스트 방법 MyClass.methodA(String,String) 위의 파일을 사용하여 주장하는 결과가 변하지 않았습니다.

다음과 같은 질문:

당신은 무엇을 생각하는 이 방법?

전화를 사용하고 계층구조에서 이클립스 나만 복사 및 붙여넣기를 호출하는 방법 하지만 정확한 호출을 포함하여 인수하는 클립보드(cf.1 단계).내가 가진 것을 복사를 호출하여 호출에 의해 손으로 각 방법에서 발견된다.나는 어떻게 추출 호출에는 편리한 방법(전체에서 이클립스 workspace,따라서 여러 프로젝트)?

이럴 나는 단지 하나의 테스트 방법을 따라서 테스트를 포함됩니다.은 그것을 사용하는 것이 확인 JUnit 위해 4 단계 더 정교한가?

도움이 되었습니까?

해결책

으로 예상되는 추가적인 값을 테스트하여 소프트웨어를 커버는 가장 상황에 가장 저렴한 비용과 최대의 결과로의 접근 방식이다.

수집하는 실생활 samplevalues 에서 소프트웨어 및 저장 대표적인 파일하지 않아야 복잡을 실현하고 보는 최고의 방법으로 이 분석을 것입니다.이 있는 경우에도 복사할 수 있습니다.

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