我需要在 selenium (c#) 中测试一个只有一个元素的 slider 。诸如音量或亮度控制之类的东西。 我在网上搜索过,我能找到的只有两个元素(源和目标)。 我尝试了很多功能,但都没有用。
Actions move = new Actions(driver);
move.DragAndDropToOffset(driver.FindElement(By.Id("someid")), 39, -9).Perform();
谁能帮我解决这个问题?我对 Selenium 和 c# 完全陌生。 让我知道是否需要提供更多详细信息。 谢谢
最佳答案
你确定只有一个元素吗?如果您的 slider 可以像这个 slider 一样沿着某个轨道拖动
带有“ slider handle ”( 标记作为值为“5ft 5”的框)沿“ slider 轨道”(
public void SetSliderPercentage(string sliderHandleXpath, string sliderTrackXpath, int percentage)
{
var sliderHandle = driver.FindElement(By.XPath(sliderHandleXpath));
var sliderTrack = driver.FindElement(By.XPath(sliderTrackXpath));
var width = int.Parse(sliderTrack.GetCssValue("width").Replace("px", ""));
var dx = (int)(percentage / 100.0 * width);
new Actions(driver)
.DragAndDropToOffset(sliderHandle, dx, 0)
.Build()
.Perform();
}
关于c# - Selenium 中的测试 slider 只有一个元素,如音量控制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10643937/