首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何以串联方式运行testfx测试?

如何以串联方式运行testfx测试?
EN

Stack Overflow用户
提问于 2017-12-18 14:26:51
回答 1查看 835关注 0票数 2

我有两个testfx测试,每个测试都成功运行,但在串联运行时失败。错误信息是:

代码语言:javascript
复制
--- Exception in Async Thread ---
java.util.concurrent.ExecutionException: java.lang.IllegalStateException: Cannot set style once stage has been set visible
java.util.concurrent.FutureTask.report(FutureTask.java:122)
...

我通过创建舞台来初始化测试:

代码语言:javascript
复制
@Before
public void setUp() throws Exception {

    FxToolkit.registerPrimaryStage();
    setupStage((stage -> {

        Undecorator undecorator;
        ....

似乎这条线在第一次旋转时并没有从舞台上松开。在第二个测试开始之前,我在testfx论坛上尝试了几种方法来杀死它,包括FxToolkit.hideStage();Platform.exit();

我在用org.testfx:testfx-junit:4.0.6-alpha。有什么想法吗?

谢谢你,安迪

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-12-19 07:49:53

您的错误消息告诉您问题所在:

不能在阶段可见后设置样式。

正如Stage.initStyle()方法中所述,您需要在舞台被设置为可见之前设置样式。您可以通过查看Application类的源代码来确认这一点。

解决这个问题的唯一方法是在需要设置“一次性设置”属性的情况下,为每个测试重新启动JVM。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47870538

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档