Python中文
首页
教程
问答
标签
搜索
登录
注册
很难缩小复选框的XPath
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我正在以下网站上练习硒:</p> <p>你知道吗www.automationpractice.com你知道吗</p> <p>我有几个基本测试,我已经开始如下:</p> <pre><code>import unittest from webdriver import Driver from values import strings from pageobjects.homescreen import Homescreen class TestHomeScreen(unittest.TestCase): @classmethod def setUp(self): self.driver = Driver() self.driver.navigate(strings.base_url) def test_home_screen_components(self): home_screen = Homescreen(self.driver) home_screen.logo_present() def test_choose_dress(self): home_screen = Homescreen(self.driver) home_screen.choose_dress() @classmethod def tearDown(self): self.driver.instance.quit() </code></pre> <p>这些测试将从以下内容中读取:</p> <pre><code>from selenium.webdriver.common.by import By from selenium.webdriver.common.keys import Keys from selenium.webdriver.support.wait import WebDriverWait from selenium.webdriver.support import expected_conditions as EC from values import strings class Homescreen: def __init__(self, driver): self.driver = driver def logo_present(self): self.logo = WebDriverWait(self.driver.instance, 10).until( EC.visibility_of_element_located(( By.ID, "header_logo"))) assert self.logo.is_displayed() def choose_dress(self): self.dresses = WebDriverWait(self.driver.instance, 5).until( EC.visibility_of_element_located(( By.XPATH, '//*[@id="block_top_menu"]/ul/li[2]/a'))) self.dresses.click() self.casual_dresses = WebDriverWait(self.driver.instance, 10).until( EC.visibility_of_element_located(( By.XPATH,'//input[@type="checkbox" and @id="layered_category_9"]'))) </code></pre> <p>test\u home\u screen\u组件正常通过,但test\u choose\u dress失败。我已经缩小了范围,它在最后XPATH上失败了,这是“休闲装”的复选框。找不到。我已经在Chrome中确认了这个XPATH是有效的:</p> <pre><code>self.casual_dresses = WebDriverWait(self.driver.instance, 10).until( EC.visibility_of_element_located(( By.XPATH,'//input[@type="checkbox" and @id="layered_category_9"]'))) </code></pre> <p>在下一页: <a href="http://automationpractice.com/index.php?id_category=8&controller=category#/categories-casual_dresses" rel="nofollow noreferrer">http://automationpractice.com/index.php?id_category=8&controller=category#/categories-casual_dresses</a></p> <p>所以我不确定问题出在哪里。也许我错过了什么,因为它是嵌入?你知道吗</p> <p>我也知道我需要添加一些Try/Except到我的代码中,最终,我只是从这些东西开始。你知道吗</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>只要替换一下</p> <pre><code>EC.visibility_of_element_located </code></pre> <p>与</p> <pre><code>EC.presence_of_element_located </code></pre> <p>能够处理所需复选框</p>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
从Django temp访问容器的方法
10 回答
从Django temp请求ModelForm实例
4 回答
从Django temp返回JSON
4 回答
从Django timesince模板等效项中删除尾部数据
9 回答
从Django timesin删除尾随数据
1 回答
从Django UpdateView模板下载文件
4 回答
从Django url传递“start”会出现错误“start()只接受2个参数(给定1个)”
6 回答
从Django url运行的websockets错误:RuntimeError:线程“Dummy1”中没有当前事件循环
8 回答
从Django user mod获取用户全名
3 回答
从Django UserCreateForm中删除帮助文本
9 回答
从Django values()获取外键值
3 回答
从Django vi中的按钮获取click事件
4 回答
从Django vi从HttpResponse检索JSON
1 回答
从Django vi以json形式返回的数据中检索元素
6 回答
从Django vi取消或取消eventlet中的芹菜任务
7 回答
从Django vi启动多核后台进程
2 回答
从Django vi开始
6 回答
从Django Vi构建HTML
6 回答
从Django vi访问进程数据
2 回答
从Django vi调用pysnmp发送超时
9 回答