使用'ClickAt'selenium命令

时间:2009-08-27 10:26:50

标签: selenium

我对selenium中ClickClickAt命令之间的区别感到困惑。我在哪里可以使用ClickAt命令?

6 个答案:

答案 0 :(得分:13)

以下是Selenium IDE对这两个命令的说法:

  

click(locator)
参数:

     
      
  • locator:元素定位器
  •   
     

点击链接,按钮,复选框或   单选按钮。如果点击动作   导致加载新页面(如链接   通常会),调用waitForPageToLoad。

并且:

  

clickAt(locator, coordString)
参数:

     
      
  • locator:元素定位器
  •   
  • coordString:指定鼠标的x,y位置(即-10,20)   相对于返回的元素的事件   由定位器。
  •   
     

点击链接,按钮,复选框或   单选按钮。如果点击动作   导致加载新页面(如链接   通常会),调用waitForPageToLoad。

当您只想“点击”某个元素(如按钮,链接等)时,会使用

click

如果您想要“点击”鼠标坐标指定的位置,则会使用clickAt


我想第二个应用程序对某些“丰富”的应用程序很有用 - 我实际上从未使用它......另一方面,我一直使用click

如果您有一个包含表单元素,链接,按钮和类似内容的页面,您通常可能会使用click:使用它的id或classname来查找元素比找到它更容易页面上以像素为单位的位置^^

答案 1 :(得分:3)

在测试ExtJS应用时,我注意到click()和clickAt()之间存在一些差异。 例如,如果我尝试单击 Ext.TabPanel 中的选项卡,则单击()命令不起作用,尽管我为其提供了正确的xpath,并且单击了( ) 工作良好。 代码如下所示:

click("//li[@id='tab-panel-id__second-tab-id']/a[2]/em/span/span")

不起作用,但

clickAt("//li[@id='tab-panel-id__second-tab-id']/a[2]/em/span/span","0,0")

的工作原理。 请注意,坐标为(0,0)

我无法弄清楚为什么会发生这种情况......

答案 2 :(得分:1)

我正在测试GWT应用程序,如果我想点击树小部件中的节点,我似乎必须使用clickAt。

答案 3 :(得分:1)

测试clickAt时要小心。有时双击该命令将使其显示为红色。您将更改该行以尝试其他替代方案,但没有任何方法可行。但是然后运行你的脚本,clickAt行对你输入的内容都没问题。

答案 4 :(得分:1)

我们的应用程序中有一个dojo小部件,仅适用于clickAt("//span[@id='mastheadIconBar']/span[1]/span/span","0,0")

不知道原因,但只有click("//span[@id='mastheadIconBar']/span[1]/span/span")不起作用。

答案 5 :(得分:0)

如果您使用的是IE,则必须使用clickAT。