在Selenium C#

时间:2015-09-01 12:46:04

标签: c# selenium

我正在尝试拖放其中的自动化测试,它应该将项目从网格拖动到另一个网格。我运行以下代码并取得了不同的成功:

当我运行此代码时,如果移动的对象只是一个标签,它将起作用,但如果它是标签和文本框,它将失败(或者更确切地说,测试将通过,但实际上该对象不会被移动) 我认为网格可能没有时间为更大的对象正确加载?:

Actions builder = new Actions(driver);
Point point = driver.FindElement(By.XPath(destination)).Location;
Thread.Sleep(100);

builder.DragAndDropToOffset(element, point.X, point.Y).Build().Perform();

如果我运行此代码,它有时会在调试模式下使用更大的对象,但不是所有时间。我经常在StaleElementReferenceExeption上获得dragAndDrop.Perform();

Actions builder = new Actions(driver);
IAction dragAndDrop = builder.ClickAndHold(element)
 .MoveToElement(target)
 .Release(target)
 .Build();

dragAndDrop.Perform();

我测试了不同的代码变体,但这几乎是有效的。

0 个答案:

没有答案