问题标签 [testfx]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
maven - UnsatisfiedLinkError:Native Library jdk1.8.0_121\jre\bin\glass.dll 已经加载到另一个类加载器中
我有一个使用 maven 和 intellij 的项目。我使用 TestFX、Mocito 和 PowerMock 编写我的测试函数,但是当我一一运行测试时,所有测试都通过了。但是当我开始运行所有测试时,它给出了这个异常。我搜索并添加了 System.loadLibrary("glass") 它没有用。我尝试了一些解决方案,但我无法解决。有人知道是什么问题吗?
虽然我做了linkte并尝试了其他解决方案,但我无法解决glass.dll not found错误。我正在寻找一个长期解决这个问题的方法。
https://maven.apache.org/surefire/maven-surefire-plugin/examples/class-loading.html
javafx - 操作调用 runAsync 时出现 java.util.concurrent.RejectedExecutionException
在将我的 TornadoFX 版本从 1.7.12 更新到 1.7.14 时,我注意到我的一项测试失败了。当under test 中的 a 被 with status 拒绝runAsyncWithProgress
时,事情似乎出轨了。我在 1.7.13 的发行说明中看到了“内部线程池在应用程序退出时关闭”的更改。将 TornadoFX 版本设置为 1.7.13 导致同样的失败,证实我怀疑它与上述更改有关。View
ThreadPoolExecutor
Terminated
我写了一个简单的应用程序来演示这个错误。
和测试
测试第一次执行时,它通过了。第二次挂起,因为 runAsync 被下面的堆栈跟踪拒绝。
我怀疑我可能在 TestFX/TornadoFX 应用程序生命周期中做错了什么。每个测试周期都在创建一个新的应用程序实例,所以我很困惑为什么要保留 ThreadPoolExecutor。有什么建议么?
dialog - TestFx - 如何测试没有 id 的验证对话框
我有一个带有记录网格和按钮插入的应用程序。单击插入后,有一个表单,您可以在其中填写数据并单击确定以将新记录添加到网格中。单击确定后,如果任何文本字段与验证规则不匹配,则验证会触发带有错误信息的对话框。如果对话框没有 id,是否有任何可能的方法来使用 textFx 测试对话框上的文本?
javafx - java 7 支持的最新版本的 testfx
我能找到的最接近的是这个 stackoverflow question,但这似乎是说 4.0.0-alpha 有问题,因为它是针对 java 8 编译的。目前,我们使用的是 3.1.2,但这肯定缺少一些功能. 有人对可用的更高版本有任何消息吗?
java - TestFX 使用弹出窗口
我在 JavaFX 中有一个场景,其中有一个CustomTextField
带有自动完成功能的场景。当用户键入时,会打开一个包含更多列的弹出窗口。我在 TestFX 中做了一个自动场景,女巫正在输入CustomTextField
.
有没有办法通过它的列浏览弹出窗口?
结构为:Scene、Popup、HBox、VBox、Cells。实际上有一个来自数据库的列的弹出窗口。Popup 的内容是 HBox 和 VBox。(一张表)我想访问单元格的内容。文本上的“clickOn”不起作用,但如果我得到单元格的内容,我可以用“TAB”移动它并按“ENTER”
如果我对此进行系统输出:
我得到了单元格的内容,但在 TextFlow 中。我能得到它的内容吗?
javafx - TestFx - 如何测试 javaFx MenuItems
由于 MenuItem 不是节点,因此我无法查找它。如果某些 MenuItem 被禁用,我该如何测试?我试图查找它,因为它是一个节点,它返回给我一些东西,看起来像这样..
(返回对象的 toString 表示):
(ContextMenuContent$MenuItemContainer[id=mnEditHrom, styleClass=menu-item])
但是我不能在上面投射 MenuItem,它说“节点不能转换为 MenuItem”,当我对返回的内容调用 isDisabled() 函数时,我得到的信息不正确。
假设我有带有“mnEdit”id 的 MenuItem,它被禁用。当我打电话时
它返回假。查找方法如下所示:
再说一遍,我如何测试某些 MenuItem 在 testFx 中是否被禁用?
java - 如何在使用 JavaFX 元素的 Travis 上运行测试?
我想测试一个方法(也在 Travis 上远程),它需要一个 JavaFX 元素作为参数,例如ProgressIndicator
.
但是当我new ProgressIndicator()
在我的测试方法中创建一个时,当我执行测试(使用 Gradle)时,它在该行失败并带有
问题:如何在本地和 Travis 上的测试中实例化 JavaFX 元素?
我检查了没有 ProgressIndicator 的测试是否通过。
相关信息
- Toolkit not initialized Java FX阐明了在 FX Toolkit 在 launch() 中启动之前尝试创建 FX 控件会产生此错误,但我无法从中找到解决方案。我应该以某种方式从我的测试中调用 launch() 吗?
- JavaFX 2.1: Toolkit not initialized似乎包含我的错误,但与 CI 测试无关。一个解决方案涉及 a
CountDownLatch
,另一个类似地涉及添加com.sun.javafx.application.PlatformImpl.startup(()->{});
到您的测试中,但这只能在本地解决问题,并且会生成一个java.lang.UnsupportedOperationException
.
我的测试:
我的 JavaFX 类:
不确定是否相关,但我将 Gradle 与构建文件一起使用:
堆栈跟踪:
完整的示例 repo 在这里。
intellij-idea - TestFX - 测试单击按钮时是否打开场景(JavaFX - IntelliJ)
我正在尝试在 IntelliJ 中测试 Java FX 应用程序并且我正在使用 TestFX 但是我不确定如何测试单击界面上的按钮时是否打开窗口。我尝试制作一个吸气剂来获得初级阶段,然后断言这将打开 - 但是这不是应该出现在按钮单击上的阶段。
有什么建议/帮助吗?
谢谢。