어떻게이 생성자를 단위화할 수 있습니까?기본 생성자를 Junit 테스트하는 방법?
private Item[] items;
private int currentIndex;
/**
* Default Constructor
*/
public Inventory()
{
this.items = new Item[1];
this.currentIndex = 0;
}
어떻게이 생성자를 단위화할 수 있습니까?기본 생성자를 Junit 테스트하는 방법?
private Item[] items;
private int currentIndex;
/**
* Default Constructor
*/
public Inventory()
{
this.items = new Item[1];
this.currentIndex = 0;
}
비공개 테스트 멤버 및 필드를 비공개로 만드는 것이 일반적입니다. 이처럼
Item[] items;
int currentIndex;
public Inventory()
{
this.items = new Item[1];
this.currentIndex = 0;
}
지금 한 단위 테스트의 Inventory
클래스와 같은 패키지에
public void testCtor() {
Inventory i = new Inventory();
assertNotNull(i.items);
assertEqual(1, i.items.length);
assertEqual(0, i.currentIndex);
}
테스트 목적으로 생산 코드를 변경하는 것은 제 의견으로는 좋지 않습니다. –
코드를 테스트 할 수 있도록 작성해야합니다. 프로덕션 코드를 처음부터 테스트 할 수 있도록 설계했다면이 문제는 발생하지 않을 것입니다. 돌아가서 깨진 코드를 수정하는 것이 잘못되었다고 생각하십니까? –
그건 내가 말하고 싶은 것이 아닙니다. 단위 테스트를 위해서만 개인용으로 변경하려는 회원을 둔다면 내가 좋아하지 않는 것입니다. –
입니다 같이 테스트 할 수있는 논리가 없습니다. – SLaks
Assert getCurrentIndex() == 0. Assert getItems(). 길이 == 1. Assert getItems() [0] == null입니다. – Andreas
컴파일되지 않습니다. –