Java / Swing FEST测试失败了

时间:2010-08-06 00:35:49

标签: java swing failing-tests

我有一个测试有时会在requireSelected()电话上失败,我无法弄清楚原因。

public void testSimple() {
  JRadioButtonFixture fixture = getFixture();
  fixture.check();
  fixture.requireSelected().requireVisible();
}

我尝试将代码更改为在EDT上而不是在测试的main中运行,但是看起来没有任何fixture的方法可以从EDT中调用。

为什么这个测试失败了?

更新:更多详情:

setUp()中没有任何内容。

这是失败追踪:

Java.lang.AssertionError: [javax.swing.JRadioButton[name='button', text='text', selected=false, enabled=true, visible=true, showing=true] - property:'selected'] expected:<true> but was:<false>
at org.fest.assertions.Fail.fail(Fail.java:87)
at org.fest.assertions.Fail.failIfNotEqual(Fail.java:60)
at org.fest.assertions.BooleanAssert.isEqualTo(BooleanAssert.java:129)
at org.fest.swing.driver.AbstractButtonDriver.assertThatButtonIsSelected(AbstractButtonDriver.java:142)
at org.fest.swing.driver.AbstractButtonDriver.requireSelected(AbstractButtonDriver.java:127)
at org.fest.swing.fixture.JRadioButtonFixture.requireSelected(JRadioButtonFixture.java:288)

2 个答案:

答案 0 :(得分:1)

麦克,

我最近在与FEST前体Abbot一起测试, 并且有些失败以与你相同的方式出现。 在我的例子中,在之间添加一个Thread.sleep(300) 模拟radio.check()和验证者 radio.requireSelected()解决了这个问题。

试一试。

答案 1 :(得分:0)

您需要指定测试失败的方式,并显示setUp()方法。它基本上可以包含您提供的信息。