我们的一个内部应用程序在页面上有一个Flash对象。当浏览器中 没有 可用的Flash插件/未安装Flash插件时,我需要测试以下 几种情况 : 内部(pepperflash)或系统范围的Adobe Flash Player插件 。
根据Chromium命令行开关列表文档页面,有一个相关的命令行开关:
--disable-bundled-ppapi-flash -禁用捆绑的PPAPI版本的Flash。
--disable-bundled-ppapi-flash
但是,这只会关闭Pepperflash内部chrome插件。
根据如何从watir脚本使用禁用的Flash插件运行Chrome /Firefox?线程,也有--disable-internal-flash开关,但这也与chrome的内部Flash插件有关。
--disable-internal-flash
Browserstack的文档建议遵循 “断头台是最好的头皮屑治疗方法”, 并通过使用--disable-pluginsswitch 禁用所有插件:
--disable-plugins
要在Chrome中禁用Flash,请创建chromeOptions功能,然后将–disable-plugins参数传递给该功能。
有没有办法禁用所有Flash插件而不禁用Chrome中的所有插件?
例如,最好列出所有需要关闭的插件:
plugins.disabled: ['Adobe Flash Player', 'pepperflash']
找到它之后,还有另一个开关告诉Chrome根本不要加载外部插件:
--disable-plugins-discovery禁用发现第三方插件。有效地仅加载浏览器附带的插件,以及–extra-plugin-dir和 –load-plugin开关指定的第三方插件。
--disable-plugins-discovery
通过结合--disable-internal-flash,--disable-plugins-discovery我已经实现了禁用Chrome中的所有Flash插件。