gpt4 book ai didi

java - FEST:无法使用匹配器 org.fest.swing.core.NameMatcher 找到组件

转载 作者:搜寻专家 更新时间:2023-11-01 03:22:08 25 4
gpt4 key购买 nike

我正在尝试使用 FEST 运行一个简单的测试它失败了。这是我的 Swing 应用程序:

public final class App extends JFrame {
public App() {
super();
JButton button = new JButton("start!");
button.setName("start");
this.getContentPane().add(button);
}
}

这是测试(我使用的是 JUnit 4):

public final class AppTest {
@Test
public void test() {
FrameFixture frame = new FrameFixture(new App());
frame.button("start").click();
frame.cleanUp();
}
}

失败是这样的:

org.fest.swing.exception.ComponentLookupException: Unable to find 
component using matcher org.fest.swing.core.NameMatcher[name='start',
type=javax.swing.JButton, requireShowing=true].

Component hierarchy:
com.sigzig.App[name='frame0', title='', enabled=true, visible=false, showing=false]
javax.swing.JRootPane[]
javax.swing.JPanel[name='null.glassPane']
javax.swing.JLayeredPane[]
javax.swing.JPanel[name='null.contentPane']
javax.swing.JButton[name='start', text='start!', enabled=true, visible=true, showing=false]

at org.fest.swing.core.BasicComponentFinder.componentNotFound(BasicComponentFinder.java:271)
at org.fest.swing.core.BasicComponentFinder.find(BasicComponentFinder.java:260)
at org.fest.swing.core.BasicComponentFinder.find(BasicComponentFinder.java:254)
at org.fest.swing.core.BasicComponentFinder.findByName(BasicComponentFinder.java:191)
at org.fest.swing.fixture.ContainerFixture.findByName(ContainerFixture.java:527)
at org.fest.swing.fixture.ContainerFixture.button(ContainerFixture.java:124)
...

这是我正在使用的依赖项:

<dependency>
<groupId>org.easytesting</groupId>
<artifactId>fest-swing</artifactId>
<version>1.2.1</version>
<scope>test</scope>
</dependency>

怎么了?

最佳答案

只需将其添加到您的应用构造函数中:

this.setVisible(true);

关于java - FEST:无法使用匹配器 org.fest.swing.core.NameMatcher 找到组件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27666732/

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