Tosca - Java 异常,而 运行 Swing 应用程序 (JTree)

Tosca - Java Exception while running Swing Application (JTree)

我正在学习 tosca,目前我们正在尝试 运行 遗留 Java Swing 应用程序的回归测试套件。

我的测试套件包含 4 个模块(在 JTree 中)并且在单击节点时失败。

我在模块上收到的错误是,

at.tosca.javaengine.common.exceptions.ControlException: node or node-path not found!
Detailed information contained in 'JavaEngineException.txt
above message is displayed in Executionlist

JavaEngineException.txt

22-11-2017 - 17:56:37: IExecWrapperInterface_connectToControl
at.tosca.javaengine.common.exceptions.ControlNotFoundException: Unable to find control Index=3;ClassName(s)=[javax.swing.JTable];.

at.tosca.javaengine.server.tree.ComponentSearch.getComponent(ComponentSearch.java:218)
->at.tosca.javaengine.server.AbstractJavaEngineCore.findComponent(AbstractJavaEngineCore.java:1129)
->at.tosca.javaengine.server.AbstractJavaEngineCore.connectToControlInternal(AbstractJavaEngineCore.java:936)
->at.tosca.javaengine.server.AbstractJavaEngineCore.connectToControlInternal(AbstractJavaEngineCore.java:922)
->at.tosca.javaengine.server.AbstractJavaEngineCore.connectToControl(AbstractJavaEngineCore.java:313)
->at.tosca.javaengine.server.JavaEngineCore.access1(JavaEngineCore.java:25)
->at.tosca.javaengine.server.JavaEngineCore.runInternal(JavaEngineCore.java:69)
->at.tosca.javaengine.server.control.WorkerThread.run(WorkerThread.java:69)
->java.lang.Thread.run(Unknown Source)
->JNIServer::CallVoidMethod
->CJNIServer::CallVoidMethod

22-11-2017 - 17:58:58: IExecWrapperInterface_setValue
at.tosca.javaengine.common.exceptions.ControlException: node or node-path not found!

at.tosca.javaengine.server.control.swing.GenericTreeControl.setValueLegacy(GenericTreeControl.java:339)
->at.tosca.javaengine.server.control.swing.GenericTreeControl.setValue(GenericTreeControl.java:88)
->at.tosca.javaengine.server.AbstractJavaEngineCore.setValueInternal(AbstractJavaEngineCore.java:1195)
->at.tosca.javaengine.server.AbstractJavaEngineCore.setValue(AbstractJavaEngineCore.java:686)
->at.tosca.javaengine.server.JavaEngineCore.access1(JavaEngineCore.java:25)
->at.tosca.javaengine.server.JavaEngineCore.runInternal(JavaEngineCore.java:114)
->at.tosca.javaengine.server.control.WorkerThread.run(WorkerThread.java:69)
->java.lang.Thread.run(Unknown Source)
->JNIServer::CallVoidMethod
->CJNIServer::CallVoidMethod

注意 :同一个测试套件在其他机器上工作,而不是在这里。两者都是相同的操作系统。

这有点令人困惑。 看起来您正在连接到 JTable,然后尝试 select 一个节点?您确定 Tosca 在两台机器上都能找到正确的控件吗? (Index=3 听起来不像是一个稳定的标识。

问题是 TOSCA 比我们的应用程序快 :)

含义:当TOSCA尝试扫描导致错误的下一页时,框架没有加载,具体节点是 没有找到。

解决方法:我加了一个TBoxWait加了秒,之后就正常了。