C# Selenium WebDriver第二次单击不工作

C# Selenium WebDriver第二次单击不工作,c#,.net,selenium,C#,.net,Selenium,当我移动到位置并点击时,我正在按位置进行点击。 第一次点击工作正常,但另一次没有反应 我的主要目标是:我有一个(x,y)的列表,我需要点击 代码 Actions action = new Actions(driver); action.MoveByOffset(BlocX + 12, BlocY + 12); action.Click();//only this is working action.Perform(); action.Release(); action.MoveBy

当我移动到位置并点击时,我正在按位置进行点击。 第一次点击工作正常,但另一次没有反应

我的主要目标是:我有一个(x,y)的列表,我需要点击

代码

 Actions action = new Actions(driver);
 action.MoveByOffset(BlocX + 12, BlocY + 12);
 action.Click();//only this is working
 action.Perform();
 action.Release();

 action.MoveByOffset(BlocX + 36, BlocY + 12);
 action.Click();
 action.Perform();
 action.Release();

 action.MoveByOffset(BlocX + 60, BlocY + 12);
 action.Click();
 action.Perform();
 action.Release();
我在这段代码中遗漏了什么,我如何执行所有的点击

我试着做了最后的表演,但这不起作用

这是密码

  Actions action = new Actions(driver); 
  action.MoveByOffset(BlocX + 12, BlocY + 12);
  action.Click();
  action.Release();
  action.MoveByOffset(BlocX + 36, BlocY + 12);
  action.Click();
  action.Release();
  action.MoveByOffset(BlocX + 60, BlocY + 12);
  action.Click();

  action.Perform();
在这种情况下,当我不再移动鼠标位置时,只需单击一次即可

  Actions builder = new Actions(driver);
  builder.MoveByOffset(BlocX + 12, BlocY + 12).Click();
  builder.Click();
  builder.Click();
  builder.Click();
  builder.Perform();

有人知道如何在所有位置上进行所有单击吗?

尝试构建所有顺序操作,然后执行它。每次必须单击时,也要调用
Actions
类上的
new
,因为根据执行第二次单击时的代码,鼠标指针将位于位置
BlocX+12
。因此,您的第二次单击发生在
BlockX+12+BlockX+36

// click 1
Actions actions = new Actions(driver);
actions.moveByOffset(BlocX + 12, BlocY + 12).click().build().perform();

// click 2
actions = new Actions(driver);
actions.moveByOffset(BlocX + 36, BlocY + 12).click().build().perform();

// click 3
actions = new Actions(driver);
actions.moveByOffset(BlocX + 60, BlocY + 12).click().build().perform();

为什么要使用
操作
为什么在页面上找不到该元素?这是区域元素,单击不使用它是否确定每个位置都是独立的?我的意思是,当它单击第一个位置时,其他位置可能会改变。它使第一次单击而其他位置没有反应,其他位置有另一个位置+60和+84。我找到了它。在第一次单击后,它必须是操作。MoveByOffset(24,0)。click().Build().Perform();,。。。它将从最后一个位置移动+24px