html - 下载文件后 Selenium IDE 单击复选框不起作用
问题描述
在 Chrome 中使用 Selenium IDE 我正在对网站上的进程进行测试。
我有一个网站,我需要在登录后单击复选框以接受使用条款、隐私条款等。我可以通过 Selenium 毫无问题地选中这些框,但我无法选中客户端条款的框。我必须先下载那些,什么都没有问题。Selenium 然后不会检查接受框。
我正在使用整个 xpath,当我告诉 Selenium 向我展示网站中的元素时,它向我展示了正确的元素。我直接从 Chrome 中复制了 xpath。我正在使用以下命令。
Command: click
Target: xpath=/html/body/div[1]/div[2]/main/div/div[3]/div[3]/div[3]/label
我还尝试了其他目标,但没有一个有效。尽管如此,当我单击“在页面中查找目标”选项时,Selenium 总是显示正确的标签。
css=.terms-client label
xpath=//div[3]/div[3]/label
xpath=//label[contains(.,'Ich akzeptiere die Prüfungsbestimmungen')]
我也试过检查而不是点击,什么都没有用。这是已下载客户端条款后受影响元素的 HTML 代码。
<div class="terms-client card" ng-repeat="role in data.roles" style="">
<div class="header">Kandidat/-in: Elektroniker/in EFZ CH</div>
<div class="content">
<p ng-bind-html="(role.description || ('terms.client.terms'|trans))|nl2br">Bitte studieren Sie die Prüfungsbestimmungen sorgfältig.</p>
<span iv-ipa-dokument="role.url" btn-class="btn-fill" download-state="role.downloaded" btn-label="Bestimmungen herunterladen"><button ng-click="download(url)" class="btn btn-fill" ng-disabled="disabled"><i class="icon icon-check-square-o" ng-class="class"></i> Bestimmungen herunterladen</button></span>
</div>
<div class="accept">
<!---->
<input id="client-accept-0" class="checkbox-new client-accept ng-pristine ng-untouched ng-valid ng-empty" type="checkbox" ng-model="role.state" ng-disabled="!data.agb || role.accepted || !role.downloaded">
<label for="client-accept-0">Ich akzeptiere die Prüfungsbestimmungen</label>
<!---->
</div>
</div>
最后的标签是我想点击的部分。我不明白为什么 Selenium 能够检查其他框并接受这些条款,但不是这个。
我注意到,问题是,下载条款后点击停止工作。在此之前它有效。
解决方案
我没有找到合适的解决方案,而是一种解决方法。下载后简单地重新加载页面可以解决我的问题。
推荐阅读
- php - 警告:strlen() 期望参数 1 是字符串,文件中给出的数组...在行中
- c++ - C++ 17:pthread 的 Makefile 标志
- python - Python中的引用语义混淆
- javascript - 使用 Firebase auth (Web) 捕获电子邮件更新错误
- r - 光栅 R 包中的错误 - UseMethod 中的错误(“conditionCall”)
- css - 根据子项的最大宽度居中内容?
- python - 错误:gpu_process_transport_factory.cc(1007)-丢失 UI 共享上下文:在无头模式下通过 ChromeDriver 初始化 Chrome 浏览器时
- javascript - 如何制作 document.write(); 不加文字?
- django - 将 javascript 文件添加到 django admin
- tensorflow - 无法在 tensorflow 官方 resnet 模型中加载用于 eval 的图像