如何获取弹出窗口的属性(id,CSS,xPath)

问题描述 投票:1回答:3

我有一个令人不安的弹出窗口打破了自动化测试。它是附加到只接受数字的文本字段的客户端验证弹出窗口,如果我输入文本并单击提交按钮,弹出窗口将突然出现并停止测试。我该如何克服这个问题?欣赏。它是一个带有感叹号的黄色bos,上面写着“请输入一个数字”。当我查看页面的来源时,我发现此弹出窗口没有任何内容可供参考。

c# unit-testing selenium-webdriver functional-testing
3个回答
2
投票

既然你提到它不是一个弹出窗口,我认为将焦点转移到activeElement就足够了。

Driver.SwitchTo().ActiveElement();

1
投票

出现弹出窗口是因为您在“机构代码”的输入字段中输入的文本是字母(o),而它需要一个数字。基本上,您的脚本会将“机构代码”的编号放入“用户名”字段中。尝试更正您发送的字符串。

对于否定测试,如果要删除弹出窗口,则需要强制“机构代码”的输入值为数字,然后触发onBlur()事件。这样,验证就会通过。


1
投票

首先,把你的测试代码放在一边是个好主意,因为我认为主要的问题就在那里。但是如果你想删除这个黄色警告弹出窗口:

添加到“提交按钮”属性“formnovalidate”

f.e:

<input type="submit" value="submit" formnovalidate />

此警告弹出窗口是由提交操作调用的本机浏览器HTML5验证。

参考:

© www.soinside.com 2019 - 2024. All rights reserved.