gpt4 book ai didi

java - 如何使用 JUnit 高效地测试方法

转载 作者:行者123 更新时间:2023-11-28 20:41:56 25 4
gpt4 key购买 nike

我的第一个方法很简单,它只是一个输出 3 个类特定字段的 toString

public String toString(){
return String.format("%s/%s/%s",street,city,postcode);
}

在 JUnit 中,它给了我这个来形成测试,我不确定如何有效地做到这一点。

@Test
public void testToString() {
System.out.println("toString");
Address instance = null;
String expResult = "";
String result = instance.toString();
assertEquals(expResult, result);
// TODO review the generated test code and remove the default call to fail.
fail("The test case is a prototype.");
}

我对 JUnit 进行了大量研究并了解测试的概念,但我不太清楚如何使用我的代码进行测试。还有我如何有效地测试这个方法,这是子类中的一个方法,它是父类中的抽象方法

@Override
int getDiscountRate() {
return this.companyDiscount;
}

它给我这个来测试

@Test
public void testGetDiscountRate() {
System.out.println("getDiscountRate");
BusinessOrganisationDetails instance = null;
int expResult = 0;
int result = instance.getDiscountRate();
assertEquals(expResult, result);
// TODO review the generated test code and remove the default call to fail.
fail("The test case is a prototype.");
}

最佳答案

这看起来不错。当然,您需要实例化实例 变量,否则会导致 NullPointerException。

在这里,它最终会是什么样子:

@Test
public void testToString() {
System.out.println("toString");
Address instance = new Address();
instance.setStreet("Somestreet");
instance.setCity("Somecity");
instance.setPostcode("12345");
String expResult = "SomestreetSomecity12345";
String result = instance.toString();
assertEquals(expResult, result);
}

另一个测试:

@Test
public void testGetDiscountRate() {
System.out.println("getDiscountRate");
BusinessOrganisationDetails instance = new BusinessOrganisationDetails();
instance.setCompanyDiscount(50);
int expResult = 50;
int result = instance.getDiscountRate();
assertEquals(expResult, result);
}

关于java - 如何使用 JUnit 高效地测试方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29186627/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com