如何检查显示密码功能在 selenium 中是不是正常工作?

Posted

技术标签:

【中文标题】如何检查显示密码功能在 selenium 中是不是正常工作?【英文标题】:How can I check if the show password functionality is working or not in selenium?如何检查显示密码功能在 selenium 中是否正常工作? 【发布时间】:2018-01-04 02:08:06 【问题描述】:

如何检查显示密码功能是否正常工作?单击“显示密码”复选框以确认密码字段中写入的测试可见后,我应该使用复选框的什么属性?

【问题讨论】:

你想点击那个眼睛图标吗..? 我已单击复选框以显示密码。如果密码中的内容可见或不可见,我想知道如何使 usre Selenium checkbox attribute "checked"的可能重复 所以,你的意思是。您的脚本运行速度很快,您无法验证它是否单击了显示密码..? 这种情况是我在密码字段中输入一个值,让我们说“abcd”它在文本框中以 XXXX 的形式出现。现在我检查了“显示密码”复选框。现在我可以看到输入为“abcd”的密码。但我不确定我应该使用测试框的哪个属性(编写脚本)来确认密码对用户是否可见 【参考方案1】:

这是一个简单的逻辑,你可以根据自己的需要来实现

function togglePassword(checkbox)
   if(checkbox.checked == true)
      document.getElementById("password").type = "text";
   else
      document.getElementById("password").type = "password";
   
<input type="password" id="password" name="passwod" />
<label><input onchange="togglePassword(this)" type="checkbox" /> Show</label>

如果要使用复选框的方式

function togglePassword(checkbox)
   if(checkbox.checked == true)
      document.getElementById("password").type = "text";
   else
      document.getElementById("password").type = "password";
   
<input type="password" id="password" name="passwod" />
<label><input onchange="togglePassword(this)" type="checkbox" /> Show</label>

【讨论】:

【参考方案2】:

我在 android 设备上进行自动化测试时,有时,它返回的密码字段是隐藏的,但在 UI 中实际上不是。试试这个

    捕获密码文件的屏幕截图并与 UI 屏幕截图图像进行比较(手动获取并存储在操作系统中)

    捕获 SS 并读取该图像中的文本,如果该文本与代码中给出的正确密码匹配,则测试通过。

使用 CV2 和 pytesseract

【讨论】:

以上是关于如何检查显示密码功能在 selenium 中是不是正常工作?的主要内容,如果未能解决你的问题,请参考以下文章

在 Python 中,如何检查 Selenium WebDriver 是不是已退出?

如何检查是不是在 Selenium 中选中了在 ExtJs 中实现为按钮的复选框? [复制]

Angular Material - 如何检查 selenium java 中是不是选中了复选框?

如何检查在 iOS 的 url 中发布的用户名和密码是不是有效

如何使用 Python 在 Selenium WD 中检查变量的值是不是为整数? [复制]

如何使用 Java 检查 Selenium 中显示的日期