如何关闭脚本调试?
Posted
技术标签:
【中文标题】如何关闭脚本调试?【英文标题】:How do I turn off script debugging? 【发布时间】:2019-05-16 00:10:29 【问题描述】:我创建了一个可执行的 jar 文件以在 chrome 上运行。但是,由于过去的几个版本,我收到了一个脚本调试弹出窗口。这本质上看起来不像是代码错误。但是,我想知道是否有任何选项可以关闭 chromedriver.exe 的脚本调试
或者,在发布可执行 jar 之前,我是否需要查看 eclipse 中的任何设置以保持调试关闭?不幸的是,没有出现此弹出窗口的特定点。它会在任何时候任何时候出现。同样由于公司政策,我将无法提供完整的代码供您检查,但会发现出现在此警报之前的未处理警报异常。
请检查您是否可以提供通用答案来解决此问题。
org.openqa.selenium.UnhandledAlertException: unexpected alert open: Alert text : It is a ComDebug error. Please close a debug window and restart(Ctrl+Shift+X).
(Session info: chrome=70.0.3538.110)
(Driver info: chromedriver=2.41.578737 (49da6702b16031c40d63e5618de03a32ff6c197e),platform=Windows NT 10.0.17134 x86_64) (WARNING: The server did not provide any stacktrace information)
Command duration or timeout: 0 milliseconds: null
Build info: version: '3.14.0', revision: 'aacccce0', time: '2018-08-02T20:05:20.749Z'
System info: host: 'IPSH-DES-570', ip: '10.91.26.138', os.name: 'Windows 10', os.arch: 'amd64', os.version: '10.0', java.version: '1.8.0_191'
Driver info: org.openqa.selenium.chrome.ChromeDriver
Capabilities acceptInsecureCerts: false, acceptSslCerts: false, applicationCacheEnabled: false, browserConnectionEnabled: false, browserName: chrome, chrome: chromedriverVersion: 2.41.578737 (49da6702b16031..., userDataDir: C:\Users\NARAYA~1\AppData\L..., cssSelectorsEnabled: true, databaseEnabled: false, goog:chromeOptions: debuggerAddress: localhost:53612, handlesAlerts: true, hasTouchScreen: false, javascriptEnabled: true, locationContextEnabled: true, mobileEmulationEnabled: false, nativeEvents: true, networkConnectionEnabled: false, pageLoadStrategy: normal, platform: XP, platformName: XP, rotatable: false, setWindowRect: true, takesHeapSnapshot: true, takesScreenshot: true, unexpectedAlertBehaviour: , unhandledPromptBehavior: , version: 70.0.3538.110, webStorageEnabled: true
Session ID: b112dc8d5914d5554252863832828baa
*** Element info: Using=id, value=btn_t8Save
【问题讨论】:
你使用扩展吗?并发布您的代码。 您正在加载现有的配置文件吗?如果是这样,请尝试不加载它...仅加载默认驱动程序并查看是否可以解决问题。我想知道您的个人资料是否没有导致此问题的加载项。 【参考方案1】:此错误消息...
org.openqa.selenium.UnhandledAlertException: unexpected alert open: Alert text : It is a ComDebug error. Please close a debug window and restart(Ctrl+Shift+X).
...表示存在未处理的警报。
相关的 html 和您的代码试验将帮助我们以更好的方式分析问题。
但是,您的主要问题似乎是您使用的二进制文件版本之间的不兼容,如下所示:
您正在使用 chromedriver=2.41 chromedriver=2.41 的发行说明明确提及以下内容:您正在使用 chrome=70.0支持 Chrome v67-69
所以 ChromeDriver v2.41 和 Chrome 浏览器 v70.0
之间存在明显的不匹配解决方案
将 ChromeDriver 升级到当前的ChromeDriver v2.45 级别。 将 Chrome 版本保持在 Chrome v70-72 级别之间。 (as per ChromeDriver v2.45 release notes) 清理你的项目工作区通过你的IDE和重建你的项目只需要依赖。 如果您的基础 Web Client 版本太旧,请通过Revo Uninstaller 卸载它并安装最新的 GA 和发布版本的 Web Client。 进行系统重启。 执行您的@Test
。
【讨论】:
OP 已经表示他知道问题中有一个警报。他在询问如何禁用脚本调试警报,您的 10 项尝试列表未解决该警报。之前已经多次告知您不要这样做,因为它没有用。 @JeffC 我怀疑您是否真的阅读了答案。从历史上看,我们都知道您不愿意调试任何用户问题,并且您试图通过以有限的曝光/知识公然否决问题和答案来制造混乱。保持这种方法,您将无法过渡到 Selenium v4.0。 我确实阅读了答案......和问题。你应该试试看。这就是为什么我告诉你你的答案有什么问题以及为什么它没有回答这个问题。我故意(公然)对问题和答案投反对票……这就是投反对票按钮的用途。这里的downvote按钮工具提示指出它是针对无用的答案......我告诉你为什么你的答案没有用。我不是唯一一个告诉你答案的人,尤其是你反复以这种格式发布的答案,这些答案是与问题无关的长列表。 如果您如此仔细地阅读了这个问题,为什么当 OP 已经在他的问题...find the unhandled alert exception that shows up before this alert.
中说明时,错误是由于未处理的警报引起的,您开始回答这个问题?问题是How do I turn off script debugging?
...你对这个问题的答案在哪里?
希望如果这是问题所在,我会在星期一回到办公室时尝试。我将尝试为 bulid 使用最新的 chromedriver。但是,我在某些带有 Chrome 版本 67 的 PC 上使用当前的 chromedriver。它们也遇到了同样的错误。所以基本上我希望从 Chromedriver 调试脚本。谢谢【参考方案2】:
您可以通过重定向来隐藏控制台日志:
火狐
System.setProperty(FirefoxDriver.SystemProperty.BROWSER_LOGFILE,LogsPath());
铬
System.setProperty("webdriver.chrome.logfile", LogsPath());
IE
System.setProperty("webdriver.ie.driver.logfile", LogsPath());
【讨论】:
以上是关于如何关闭脚本调试?的主要内容,如果未能解决你的问题,请参考以下文章