有趣的地方就在这里。我根据我在StreamReader中打开的文件迭代列表。
看起来像是:
list = driver.FindElement(By.CSSSelector("dropdown-menu"));
list_items = list.FindElements(By.CSSSelector("LI > A"));
int row = 0;
while (data_file.read())
{
iWebElement item = list_items[row];
string label = item.text;
string url = item.getattribute("href");
assert.areequal("something", label);
assert.areequal("something else", url);
row++;
}
现在是这样的:如果鼠标指针放在下拉框上,在执行时,item.text返回值,测试成功。如果指针在其他任何地方,item.text将为空,测试失败。为了理解发生了什么,并从这样一个事实中获得线索,即尽管测试在运行时会失败,但在执行时会成功,我用一个循环修改了代码:
while (data_file.read())
{
iWebElement item = list_items[row];
string label = item.text;
while (label == "")
{
label = item.text;
}
string url = item.getattribute("href");
assert.areequal("something", label);
assert.areequal("something else", url);
row++;
}
item = list_items[row];
label = item.text;
label = list_items[row].text;
getAttribute(“value”)也不会比.text产生更快的结果。
至于为什么菜单会以这种方式运行,用您提供的代码很难讲清楚。如果您能提供显示菜单的代码,这可能会有所帮助。至于解决办法,有两种。
>
由于while循环本身的原因,标签显示的时间可能会更长--它会非常快地一遍又一遍地抓取文本。更好的解决方案是等待元素出现。这可能会使您的代码运行得更快。有关使用WebDriverWait的信息,请参阅Selenium网站。
或者,有一个“丑陋”的解决方案。您只需将鼠标移动到带硒的菜单上,以确保菜单在您需要时始终显示。我从这里改编了一些代码作为示例:
OpenQA.Selenium.Interactions.Actions builder = new
builder.MoveToElement(list).Build().Perform();
问题内容: 如何按照自然风格对齐工具提示:鼠标指针的右下角? 问题答案: 对于默认的工具提示行为,只需添加属性。但是它不能包含图像。 在您弄清楚我是用纯JavaScript完成此问题之前,希望您发现它有用。图像将弹出并跟随鼠标。 JavaScript CSS 扩展多个元素 多个元素的一种解决方案是更新所有工具提示,并在鼠标移动时将其设置在光标下方。
我必须将鼠标光标(指针)移动到一个特定的元素,然后点击该元素。我已经写了下面的代码,但它没有帮助。虽然我可以看到光标类型(图像)正在改变,但它并没有改变它的位置。 请帮忙。下面是我的代码:
本文向大家介绍jQuery实时显示鼠标指针位置和键盘ASCII码,包括了jQuery实时显示鼠标指针位置和键盘ASCII码的使用技巧和注意事项,需要的朋友参考一下 本文通过jquery技术实现鼠标指针位置和键盘ASCII码,代码简单易懂,具体内容请看下文吧。 按A 以上内容是小编给大家介绍的jQuery实时显示鼠标指针位置和键盘ASCII码,希望对大家有所帮助,更多知识请关注呐喊教程官网,该站
我需要移动我的鼠标指针。我用的是硒和c。 MoveByOffset和MoveToElement都在执行右键单击,但鼠标指针没有移动。
问题内容: 我正在构建HTML5游戏,并且尝试将鼠标指针放在特定事件上的某个控件上,以便在特定方向上移动始终具有相同的结果。这可能吗? 问题答案: 因此,我知道这是一个古老的话题,但是我首先要说这是不可能的。当前最接近的事情是将鼠标锁定在单个位置,并跟踪其x和y的变化。这个概念已经被Chrome和Firefox所采用。它由所谓的 Mouse Lock进行管理 ,点击逃逸将破坏它。通过我的 简要 阅
我使用Selenium和C#执行单击操作。 我可以执行点击操作,但我不能将鼠标指针(光标)移动到特定坐标或特定元素上。 这是我正在使用的代码。上下文单击正在工作,但光标未移动。 帮帮我。