如何使用Selenium测试OpenLayers应用程序?

时间:2015-02-12 00:56:03

标签: selenium openlayers

我知道这是和老人,我为此道歉。但我仍然没有找到解决方案。

我最近尝试使用Selenium测试基于OpenLayers的应用。但是当我点击地图时,它没有检测到Selenium中的点击。我在互联网上搜索过。有人说这是来自Selenium的一个错误,其他人声称找到了解决方法。

我已经尝试了所有这些解决方案,但我没有得到任何结果。点击仍然无效。

http://osgeo-org.1560.x6.nabble.com/Testing-with-selenium-IDE-td5015680.html

Selenium IDE testing on maps(Open Layers)

http://comments.gmane.org/gmane.comp.gis.openlayers.user/18125

你能更好地解释一下吗?或者可能是一个例子?

由于

PS:我是Selenium的新手,所以对我来说理解起来可能有点困难。

1 个答案:

答案 0 :(得分:1)

我不知道这是否是最佳解决方案,但同时我已开始使用Selenium WebDriver,更具体地说,Java version

我已经看过关于自动化测试的this video,这对于走上正确的轨道有很大帮助。该视频显示了使用Selenium WebDriver的一些示例(C#版本,但它与Java版本类似)。

我已经安装了ChromeDriver,但你也可以在Firefox中完全完成。

我使用JUnit进行测试。

在Selenium IDE中,您"记录"测试,然后你重播它们。

在Selenium WebDriver中,您可以完全编写测试,而无需记录任何内容。

例如,您为以下步骤编写代码:

1)打开我的OpenLayers(或其他)应用程序的网页。

WebDriver driver = new FirefoxDriver();
driver.get("http://localhost/myOpenLayersApp/index.php");

2)单击打开第X页的按钮

driver.findElement(By.id("Button-Go-to-page-X")).click();

3)检查您是否确实已导航到第X页

boolean check = driver.findElement(By.id("Header-X"))
                    .getText()
                    .equals("This is page X.");
Assert.assertTrue(check);

这是如何使用Selenium WebDriver的一个非常简单的示例。至少,这就是我使用它的方式。

如果您有更多问题,请随时提出。 :)

注意:如果您不熟悉此视频,请观看视频。这是一个关于自动化测试的非常好的教训。