【发布时间】:2014-09-30 09:07:35
【问题描述】:
我应该为正确参数的无效使用编写一个 Junit 测试。我对这个概念有点困惑。有人可以帮忙解释一下这种情况是什么,以及如何举例说明吗?
我正在测试一种将客户和服务类型作为参数的方法。我已经尝试了下面的assertFalse 方法,并尝试将两个客户传递给
assertFalse("Registration fails for add two services to one customer", cs.addPeople("Jack", "Jill","Cleaning"));
我意识到这不是正确的方法,因为add.People()方法只接受一个人作为参数。在这种情况下,我们如何测试无效使用?非常感谢!
【问题讨论】:
-
我真的不知道我是否正确理解了这个问题。对我来说,这听起来有点像逻辑问题。就像你的函数可能有一个对象和一个服务一样,虽然拥有“house”和“clean”是有效的,但拥有“person”和“clean”是无效的。或许您可以多谈谈无效用法?
-
目标(根据要求)是测试用户对参数进行无效使用时会发生什么,我不知道如何测试它..我的意思是如果使用参数不正确,方法根本不会执行,对吧?
-
如果参数的类型不正确,方法会执行。但当然它可能是这样的(糟糕的编程只是为了做例子):方法得到一个字符串,应该对“A”、“B”和“C”做出反应,所以其他一切都是无效的用法。但为此,我们实际上需要查看您必须测试的功能。
-
我假设它在谈论有效参数的状态。即传入正确的参数说一个名为 Jack 的人,但只有当他们的名字是 Bob 或者他们可以执行服务等时才能添加一个人。否则他们是无效的。
-
@cID:在这种情况下,我希望测试某种无效使用异常(与 isah 的答案相同)。尽管如此,我们还是需要知道该方法的预期行为来对其进行测试。
标签: java testing methods junit parameters