gpt4 book ai didi

selenium - 在 Selenium 中使用 javascript 禁用 Google Analytics

转载 作者:行者123 更新时间:2023-12-03 15:29:20 25 4
gpt4 key购买 nike

我正在使用 selenium 来测试生产站点。测试事件与分析密不可分。

我可以在页面加载后通过 Selenium 禁用使用 JavaScript 的分析吗?我知道我可以通过 Selenium 执行 JS。问题是,如何禁用GA代码?

最佳答案

以下是您可以尝试的几个选项。一些取自这篇博文 -
Exclude Selenium WebDriver traffic from Google Analytics .

选项 0:避免测试实时生产站点

理想情况下,自动化 Selenium UI 测试更适合针对某种测试环境进行测试,而不是在实时生产数据库中进行测试。由于现场制作现场只需要一些手动探索/烟雾测试。在这种情况下,在设置测试环境时,请使用不同的 Google Analytics 跟踪器,甚至避免使用 Google Analytics。

选项 1:禁用 JavaScript

由于 Google Analytics 跟踪是通过执行一段 JavaScript 代码来完成的,因此可以在浏览器中禁用 JavaScript。但这并不实用,因为这肯定会影响网站的功能。

选项2:设置用户代理并排除用户代理

在启动 WebDriver 时设置一个特殊的测试用户代理,然后在您的源代码中,使用 JavaScript 来排除该用户代理。

例如,您的 GA 应该是:

if (user agent != your special testing user agent) {
your GA code
}

选项 3:排除 IP/ISP

在 GA 的管理设置中进行设置

选项 4:选择退出插件

启动您的 WebDriver GA 选择退出插件(仅适用于 ChromeDriver 和 FirefoxDriver)。 Google Analytics Opt out Add ons

选项 5:使用 JavaScript 的自定义变量 (cookie)

请参阅 Best Ways to Exclude Internal Traffic in Google Analytics 中的“使用 JavaScript 设置 Cookie”部分

选项 6:使用像 BrowserMob 代理这样的代理

BrowserMob Proxy允许操作 HTTP 请求和响应、捕获 HTTP 内容以及将性能数据导出为 HAR 文件。它支持黑名单,可用作阻止发送到 Google Analytics 的数据的一种方式。

require 'browsermob/proxy'
require 'selenium-webdriver'

server = BrowserMob::Proxy::Server.new("./browsermob-proxy-2.1.4/bin/browsermob-proxy", :log => true)
server.start

proxy = server.create_proxy
proxy.blacklist("https?:\/\/www\.google-analytics\.com\/.*", 404)

profile = Selenium::WebDriver::Firefox::Profile.new
profile.proxy = proxy.selenium_proxy

driver = Selenium::WebDriver.for :firefox, :profile => profile

proxy.new_har "browsermob"
driver.get 'http://yizeng.me/'

har = proxy.har
har.entries.first.request.url
har.save_to "./browsermob.har"

proxy.close
driver.quit

选项 7:使用 Selenium JavaScriptexecutor 删除 GA 代码

您的想法,但不确定这是否可行,一旦加载了 GA 代码,它就会被执行,之后必须以某种方式使用 Selenium 删除代码?

关于selenium - 在 Selenium 中使用 javascript 禁用 Google Analytics,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20759860/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com