我已将“Monkey Talk”配置为与我的 Android 应用程序一起使用。除 Activity
外一切正常它使用 Webview
自定义 WebChromeClient
,它利用了 onJsScript(...)
WebChromeClient
的方法| .基本上,回调永远不会发生,而是在应用程序中弹出对话框提示。这看起来类似于人们用 phonegap 报告的问题。 “猴子说话”是否自设WebChromeClient
,这可能与我使用的冲突?
任何人遇到类似的问题有什么解决办法吗? (安装最新版本的 cordova.jar 的 phonegap 解决方案对我没有帮助,因为我既不使用 phonegap 也不使用 cordova)
如果没有人解决这个问题,请推荐另一种免费的测试自动化工具,它允许简单的测试脚本创建(例如记录)。谢谢。
最佳答案
发现导致此问题的 Monkey Talk 代码(当前版本为 1.0.53)中的错误。
在 MonkeyTalk 的 WebCrhomeClientWrapper 中覆盖 onJsPrompt
,调用 client.onJsConfirm
而不是 client.onJsPrompt
:
@Override
public boolean onJsPrompt(WebView view, String url, String message, String defaultValue,
final JsPromptResult result) {
if (client.onJsConfirm(view, url, message, result)) { ...
已将信息发送给 Monkey Talk 团队,希望他们能尽快解决这个问题。
关于javascript - Android 上的 MonkeyTalk 和 WebChromeClient/onJsScript 冲突,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18001712/