如http://wiki.netbeans.org/Jemmy_Operators_Environment所述,ActionProducer.MaxActionTime
的默认时间为10000毫秒。
我需要将其增加到120000毫秒并使用下一个代码:
JemmyProperties.setCurrentTimeout("ActionProducer.MaxActionTime", 120000);
当代码在调试模式下运行时,值为120000:
但我仍然有下一个错误:
“菜单推送:(带有文本”模块“的JMenuItem,带有文本的JMenuItem) “公司实体”)(ActionProducer.MaxActionTime)“行动尚未发生 以60005毫秒的速度生成
60000毫秒是ActionProducer.MaxActionTime
的最大值?
更新
实现org.netbeans.jemmy.Timeoutable
的类的每个实例都可以拥有自己的超时值,因此我检查了生成错误的实例的超时
menuBar.getTimeouts().getTimeout("ActionProducer.MaxActionTime")
但结果是相同的 - 它是120000秒,仍然在60000秒失败。
答案 0 :(得分:0)
尽管错误消息指出(ActionProducer.MaxActionTime)" action has not been produced in...
,但还有另一个时间来规定此行动时间:
JMenuOperator.PushMenuTimeout
即使我设置:
JemmyProperties.setCurrentTimeout("JMenuOperator.PushMenuTimeout", 50);
错误是:
"菜单推送:(JMenuItem with text" Modules",JMenuItem with text "公司实体")(ActionProducer.MaxActionTime)"行动还没有 产生于51毫秒
所以不要相信Jemmy日志消息,并试图找到合适的超时。