自动单击链接并导航到另一个页面

时间:2013-06-19 13:58:51

标签: javascript testing automation click

我需要测试一个页面跟踪器行为。单击链接时会跟踪跟踪器的报告,但是在锚元素上生成单击事件不会指示浏览器导航到链接中的页面。我试过Selenium IDE - 没效果。

有没有办法实现这个目标?也许有些浏览器设置?如果它特定于Firefox或谷歌浏览器或Opera - 没关系,我可以使用其中任何一个进行测试。

这是一个类似的问题How do I programmatically click a link with javascript?但在我的情况下没有任何帮助,正如我刚才所描述的那样,在这种情况下不会发生导航。

2 个答案:

答案 0 :(得分:1)

 <a id="gLink" href="http://www.google.com">Google</a>

<script>
    document.getElementById("gLink").click()
</script>

诀窍。

答案 1 :(得分:1)

通常,单击一个锚链接会将您带到页面内的其他位置,并将锚链接更改为foo.php #bar(其中bar是锚点的名称),因此这种行为是设计使然。

以下是我能想到的所有不同方法

方法1:调整跟踪器

也许您可以将跟踪器配置为跟踪这些更改?单击锚点会触发hashchange事件。查看this SO question

检查这些链接以了解如何利用hashchange事件:

方法2:使用HTML5历史记录API

您可以通过HTML5 pushState()方法(即历史记录API)以编程方式更改浏览器的URL。

以下是使用HTML历史记录API的一些示例: