微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在nightwatch中检查工具提示的值

如何解决如何在nightwatch中检查工具提示的值

我正在编写一个测试,检查当您将鼠标悬停在链接上时是否会出现一些文本。当前无法执行此操作,因为 DOM 在悬停时不会更改,因此没有要检查的元素。见下面的html:

<span data-qaid="printAndExport">
   <li title="Some hover text"><a href="" class="disabled" data-qaid="printLink" tabindex="-1"><em class="icon icon-print"></em><span class="disabled">Print</span></a></li>
   <li title="Some hover text"><a href="" class="disabled" data-qaid="exportLink" tabindex="-1"><em class="icon icon-get_app"></em><span class="disabled">Export</span></a></li>
</span>

我已经尝试对链接本身进行断言,但这显然不起作用,因为它只会返回链接文本本身而不是悬停时的值。我唯一能想到的就是检查 title 属性,但这并不是通过悬停直接测试 WebApp 上的功能,它只是检查 DOM 中的属性。任何想法将不胜感激。

解决方法

所以基本上我决定采用的解决方案是我最初避免使用的解决方案,但我找不到更好的方法来做到这一点。

为了对此进行测试,我将获取“title”属性值并对其进行断言。这并没有明确测试悬停功能,所以不是 100% 满意。

链接到解决方案的文章:https://www.guru99.com/verify-tooltip-selenium-webdriver.html

,

在某些情况下,当您将鼠标悬停在某个元素上时,您会获得与所需元素相关联的 DOM 更新,而在某些情况下,由于显示的工具提示(类名称已更改等),元素本身会发生更改。

由于在您的情况下 DOM 没有任何更改并且断言标题不会检查工具提示的功能,因此我提出了 2 个合理的解决方案。

1.
您可以使用屏幕截图比较来验证工具提示是否确实出现,但设置它需要一些工作。

2.
开发人员在编写 DOM 时并不倾向于考虑它为自动化测试优化的程度。
简而言之,例如打开 Jira 票证,并说明目前没有测试元素的好方法,需要以某种方式或形式对其进行更新。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。