2 回答

TA貢獻1821條經驗 獲得超6個贊
在這種情況下,您應該編寫一個測試。您不需要再寫了,因為它只是重復的。此測試應控制字段分配:
@Test
public void propertiesAreSetOnBankAccountConstructor() {
float balance = 100F;
char[] userNameArray = {'u'};
char[] passArray = {'p'};
BankAccount testedObject = new BankAccount(balance, userNameArray, passArray);
assertEquals(balance, testedObject.getBalance(), 0F);
assertSame(userNameArray, testedObject.getUsername());
assertSame(passArray, testedObject.getPassword());
}
更新:如果沒有可以使用的吸氣劑org.springframework.test.util.ReflectionTestUtils(或者只是純反射):
@Test
public void propertiesAreSetOnBankAccountConstructor() {
float balance = 100F;
char[] userNameArray = {'u'};
char[] passArray = {'p'};
BankAccount testedObject = new BankAccount(balance, userNameArray, passArray);
assertEquals(balance, ((Float)ReflectionTestUtils.getField(testedObject, "balance")), 0F);
assertSame(userNameArray, ReflectionTestUtils.getField(testedObject, "username"));
assertSame(passArray, ReflectionTestUtils.getField(testedObject, "password"));
}

TA貢獻1801條經驗 獲得超8個贊
請參考這個例子。
import static org.junit.Assert.assertThat;
import org.junit.Test;
public class CalculatorTest {
@Test
public void constructorTest(){
private Calculator c;
c = new Calculator(4, 5);
assertThat(9, is(c.sum()));
}
}
添加回答
舉報