您好,欢迎访问一九零五行业门户网

为什么不提供JUnit的方法assertNotEquals?

1. 我建议的新assertthat()样式assertions,它可以很容易地描述各种否定,并自动生成你所expect的的描述,如果assertions失败,你得到了什么:assertthat(objectundertest,
is(not(someotherobject))); assertthat(objectundertest, not(someotherobject)); assertthat(objectundertest, not(equalto(someotherobject)));
所有这三个选项是等价的,选择一个你认为最可读。 简单的(并允许这种紧张的语法来工作),你需要这些导入:
i
mport static org.junit.assert.*; import static org.hamcrest.corematchers.*;
2. 有在junit中4.11的assertnotequals:
3. 我不知道assertions的api是不太适合做测试的对象是指它提供了和 当然 codego.net,这是不是太长写:
assertfalse(foo.equals(bar));
随着yield的这种说法部分是如此不幸应分别:
string msg = "expected <" + foo + "> to be unequal to <" + bar +">"; assertfalse(msg, foo.equals(bar));
那是当然的,使其更好地推出自己assertnotequal。幸运的是,在未来将可能成为了junit的一部分:junit的问题22
4. 我认为,如果没有assertnotequal确实是一个,使junit的少一点可以学习的。记住,这是一个整洁的情况下,当增加会减少的api,至少有助于执政党更大的空间。 我的猜测是,对于遗漏的原因可能是因为有太multiplayer少,呼吁然而,我一个当即便assertfalse不存在,因此,我有可能最终被加了积极的expect,因为它不是一个困难的之一,尽管我承认,有解决方法,甚至是优雅的。
5. 我对这个党已经很晚了,但我发现,格式如下:
static void asserttrue(java.lang.string message, boolean condition)
可向工作最'不等于'案件。
int status = dosomething() ; // expected to return 123 asserttrue("dosomething() returned unexpected status", status != 123 ) ;
6. 这是更好的hamcrest负assertions,而不是assertfalse如在测试报告中会显示一个diff的assertions失败。 如果assertfalse,你只会得到一个assertions失败的报告。即在出现故障。
7. 究其原因,人们希望assertnotequals()是内建命令,而无需先将它们转换为完全成熟的对象: 详细的例子:
.... assertthat(1, not(equalto(integer.valueof(winningbidderid)))); ....

assertnotequal(1, winningbidderid);
8. 模api的一致性,为什么是junit没有提供assertnotequals()就是为什么junit的永远喜欢它的原因assertstringmatchestheregex(regex, str)与assertstringdoesntmatchtheregex(regex, str)assertstringbeginswith(prefix, str)与assertstringdoesntbeginwith(prefix, str)即有没有结束提供了一个具体的供种东西,你可能想在你的说法的逻辑! 更好的测试原语像equalto(...),is(...),not(...),regex(...)并让这些作品一起,而不是更多的可读性和理智。
以上就是为什么不提供junit的方法assertnotequals? 的内容。
其它类似信息

推荐信息