gpt4 book ai didi

java - JUnit assertFalse(true) --> 成功的测试用例?

转载 作者:行者123 更新时间:2023-12-02 01:05:35 25 4
gpt4 key购买 nike

此测试用例如何才能成功(即我的 JUnit 窗口中的绿色):

@Test public void caseForXFiles(){
Assert.assertFalse(true);
}

此外,所有其他类型的案例都会成功,尽管它们不应该成功。我假设使用此函数时不必显式启用断言,因为我不使用 assert (即使启用也没有区别)。即使抛出意外的(甚至无法正确编译的)异常也不会将测试用例染成红色。在我的第二个控制台中,我得到

Okt 23, 2014 5:18:43 PM org.jboss.arquillian.drone.webdriver.factory.remote.reusable.ReusedSessionPernamentFileStorage readStore
Information: Reused session store is not available at C:\Users\xx\.drone-webdriver-session-store, a new one will be created.
Okt 23, 2014 5:18:54 PM org.jboss.arquillian.protocol.jmx.JMXMethodExecutor invoke
Schwerwiegend: Failed: de.xx.MyTest.caseForXFiles

这到底是怎么回事?我正在使用 JBoss 6.2.4 和 Arquillian。

编辑:经过进一步调查,我发现这条线虽然不太可能导致问题。我的测试用例在未执行时将在 JUnit 中显示为绿色(尝试使用 System.out.print 但未显示):

@Before public void setUp() throws Exception {
rBean.getUserId(); // a simple getter on a String field, no side effects
}

我的rBean的@PostConstruct中似乎无法正确填充。但这导致所描述的行为对我来说似乎是一个错误。

其他信息:
rBean:

@Inject @CurrentUser private MyCurrentUser currentUser;
@PostConstruct private void postConstruct() {
userId = currentUser.getUserId();
}

对象 currentUser 是由我无权访问的某个公司框架注入(inject)的。尽管如此,我仍然可以访问实现 IUser 的 MyCurrentUser 类(无访问权限)。最终,我想在具有专有注释的 Bean 方法上运行测试用例。我可以通过创建调用这些带注释的函数的测试函数来绕过这个问题,在这种情况下,将不会查看注释。
问题似乎是因为 currentUser 无法 login(),在某些黑暗的角落会出现严重错误。

最佳答案

看来,这个错误与 Arquillian 1.1.4 有关,并在 1.1.5 中得到修复。

另请参阅here .

关于java - JUnit assertFalse(true) --> 成功的测试用例?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26531547/

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