gpt4 book ai didi

Java Fest 消耗控制台输出

转载 作者:行者123 更新时间:2023-12-01 13:08:16 24 4
gpt4 key购买 nike

我正在尝试使用 Fest 测试 Java Swing。我的问题是,关闭框架fixture(frameFixture.close())作为我的测试的@After TeaDown()方法的一部分以某种方式阻止/隐藏/消耗(不不知道是哪一个)测试类运行器的控制台输出。(这是从 Result result = JUnitCore.runClasses(testClasses) 派生的打印输出)。

知道可能是什么原因吗?下面是相关的setUp()和tearDown()方法, 以及运行所有测试并打印出聚合结果的代码片段,或者(大概)Fest 神秘地抑制了哪些内容。

测试类的

setUp()和tearDown():

    @Before
public void setUp() {
this.frameFixture = new FrameFixture( new DesktopView() ) ;
this.frameFixture.show() ;
}

@After
public void tearDown() {
this.frameFixture.close() ;
this.frameFixture = null ;
}

来自测试类运行程序的测试摘要(当我调用frameFixture.close()时被抑制):

    Result result = JUnitCore.runClasses(testClasses) ;

for( Failure failure : result.getFailures() ) {
System.out.println( failure.toString() ) ;
}

System.out.println("Tests called: " + result.getRunCount() ) ;
System.out.println("Tests failed: " + result.getFailureCount() ) ;
System.out.println("Execution time: " + result.getRunTime() + " ms" ) ;
System.out.println( "All tests passed: " + result.wasSuccessful() ) ;

最佳答案

我没有足够的声誉得分来添加评论,因此我会将我的注释添加到答案中。

当主框架关闭时,System.exit() 可能会被调用,例如,如果它是使用 JFrame.EXIT_ON_CLOSE 选项创建的。如果是这种情况,请检查 how to handle System.exit() with FEST .

关于Java Fest 消耗控制台输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23103665/

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