调用
launch()由
@BeforeClass是正确的做法。请注意,
launch()这不会将控制权返回给调用代码。因此,您必须将其包装到中
newThread(...).start()。
7年后的更新:
使用TestFX!它将以适当的方式进行启动。例如,您可以从TestFX的ApplicaionTest类扩展测试,并使用相同的代码:
public class MyTest extends ApplicationTest {@Overridepublic void start (Stage stage) throws Exception { FXMLLoader loader = new FXMLLoader( getClass().getResource("mypage.fxml")); stage.setScene(scene = new Scene(loader.load(), 300, 300)); stage.show();}并编写如下测试:
@Testpublic void testBlueHasonlyOneEntry() { clickOn("#tfSearch").write("blue"); verifyThat("#labelCount", hasText("1"));}


