如何从Java代码触发Google Tag Manager脚本 [英] How to trigger Google Tag Manager script from java code
本文介绍了如何从Java代码触发Google Tag Manager脚本的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我需要自动化网站分析,为此我需要从java代码中触发Google Tag ManagerGTM脚本。
eg
- 用户转到 https://www.etsy.com/
- 用户寻找GTM的脚本,它是dataLayer
(窗口,文档,'script','dataLayer','GTM-KWW5SS');
- 我可以转到Chrome控制台并键入 dataLayer ,然后按ENTER键查看值
如何从Java代码执行此操作?
解决方案
我可以通过下面的代码实现
JavascriptExecutor js =(JavascriptExecutor)getDriver();
ArrayList< Map< String,List< String> >> myList = new ArrayList<>();
//执行GTM脚本获取值
myList =(ArrayList)js.executeScript(return window.dataLayer);
//通过GTM arrayList
解析(int a = 0; a< myList.size(); a ++){
for(String key:myList.get a).keySet()){
System.out.println(key ++ myList.get(a).get(key));
$ b $ //下一步
//对预期值进行断言
I need to automate web analytics and for that I need to trigger "Google Tag Manager" GTM script from java code. e.g.
- User goes to https://www.etsy.com/
- User looks for script of GTM which is dataLayer
(window,document,'script','dataLayer','GTM-KWW5SS');
- I can goto chrome console and type dataLayer, press ENTER key to see the values
How can I do this from Java code ?
解决方案
I could achieve with below code
JavascriptExecutor js = (JavascriptExecutor)getDriver();
ArrayList<Map<String, List<String> >> myList = new ArrayList<>();
//Execute GTM script to fetch values
myList = (ArrayList) js.executeScript("return window.dataLayer");
// Parse through GTM arrayList
for(int a=0; a < myList.size(); a++) {
for (String key : myList.get(a).keySet()) {
System.out.println(key + " " + myList.get(a).get(key));
}
}
//Next Step
// assert against expected values
这篇关于如何从Java代码触发Google Tag Manager脚本的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文