Junit 테스트에 문제가있어 온라인 정보가 거의 없습니다.종속 테스트 테스트
첫째로, 나는이 방법
1. setTable(int r, int c, String s)
2. getTableString()
을 테스트 할 수 있습니다.
첫 번째 테스트를 관리했지만 두 번째 테스트에서는 이미 테이블이 구축되어 있어야합니다 (테이블은 getter로 private static char[][]
이고 첫 번째 방법으로 빌드 됨).
이 두 번째 방법을 테스트하려면 어떻게해야합니까? 나는이 일을 생각 : 그것은 setTable
작업에 의존 이후
public void testGetTableString() {
MyClass test = new MyClass();
test.setTable(5, 4, "string");
String toTest = test.getTableString();
assertEquals("expected result", toTest);
}
이 그러나 잘 보이지 않는다.
또한 설치() 메소드에 test.setTable(5,4,"string")
를 초기화 생각하지만 내가 setUp()
방법 setTable
각 시간 매개 변수를 변경하지 내 테스트를 추적 할 수 있어야 거라고 의미 할 것입니다; 게다가 내 첫 번째 방법도 역시 setUp()
일 것이고, 나는 그것을 원치 않는다.
도움을 주시면 대단히 감사하겠습니다.
으로 확인하지 않는 한
, 당신은 정말
setXY
작품을 말할 기운 다. 이러한 종류의 의존성으로부터 완전히 벗어나는 것은 어렵습니다. 추신. 테이블이 정적 인 이유는 무엇입니까? –감사합니다. 다시 점검하고 제거했습니다. 정적 인 이유는 없습니다. – Tiberiu
클래스의 전체 동작을 테스트해야합니다. 즉, 무언가를 저장하고 나중에 검색 할 수 있습니다. 어떤 테스트 케이스가 클래스의 테스트에 포함 시킬지 결정할 때, 여러 메소드에 걸쳐있는 테스트 케이스로 끝나면 놀랄 필요가 없습니다. 이것은 정상이며 정상입니다. 클래스 자체의 전반적인 동작 요구 사항을 고려하지 않고 각 메소드를 개별적으로 테스트하는 것은 올바르지 않습니다. –