gpt4 book ai didi

testing - 带有空对象的 junit 测试用例

转载 作者:行者123 更新时间:2023-11-28 21:31:00 25 4
gpt4 key购买 nike

我想用 3 参数构造函数编写 Person 类,如果用户为一个人的名字和姓氏提供空字符串,我想为该对象返回 null,因为我想使用 junit assertNull 函数来显示该对象未创建带有空字符串。

public Person(String names,String surnames,int ages)
{
if(!names.equals(null) && !surnames.equals(null))
{
name = names;
surname = surnames;
}
else
{
return;
}

if(ages > 0)
age = ages;
else
return;
}

测试就是这样

    @Test
public void createPerson()
{
String ad = null;
String soyad = null;
int age = 10;
Person p = new Person(ad, soyad, age);
assertNull("Object is not created!", p );
}

我怎么会得到空指针异常?

最佳答案

你得到一个 NullPointerException 因为你在一个空对象上调用 equals 方法。如果你想检查一个字符串是否不为空,你需要使用someString != null

你需要做的是:

if (names != null && surnames != null)

但这并不能解决您无法从构造函数返回 null 的问题。您唯一可以做的就是抛出 NullPointerException — 而这正是您的代码所做的。一定有其他方法可以解决您遇到的问题。

关于testing - 带有空对象的 junit 测试用例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22620398/

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