【问题标题】:Test JavaFX Applications by using JUnit使用 JUnit 测试 JavaFX 应用程序
【发布时间】:2017-02-04 12:32:25
【问题描述】:

我想使用 junit 测试 javaFX 应用程序。我检查了以下几种方法:

  1. 用户 TestFX api:这些 api 有时在测试方法上工作,换句话说,对于特殊测试的某些执行,它是工作!!!

  2. 列出使用 JFXRunner :我使用了在 this question 中定义的测试运行器,但它用于一些要运行的方法并且当测试方法的数量很大时(例如 >20),测试方法正在等待永远!!!

  3. 定义一个测试运行器类,例如 this question 中引入的 JavaFXThreadingRule。这些方法仅适用于单个测试,并且在运行某些测试时,测试方法会像 JFXRunner 一样永远等待。

真正的问题是什么?通过调试测试方法,我发现通过使用lath初始化javaFX,在运行了几个方法后,剩下的方法将永远等待。当我为等待板条方法设置一个特殊的时间时,它可以正常工作,因为它不符合逻辑地设置一个恒定的时间来测试应用程序。如何解决这个问题。

【问题讨论】:

    标签: java unit-testing javafx junit


    【解决方案1】:

    对于方法 2,3;我使用 Platform.exit() 命令退出 GUI 应用程序;所以使用latch初始化JavaFX平台的测试运行器永远等待。所以,这是我的代码错误。所以,调用 Platform.exit() 方法会阻止执行剩余的测试方法。

    【讨论】:

      猜你喜欢
      • 2015-05-27
      • 2022-01-01
      • 1970-01-01
      • 2021-12-23
      • 2018-07-22
      • 2023-03-21
      • 2016-07-30
      • 2016-04-30
      • 2019-08-17
      相关资源
      最近更新 更多