【问题标题】:TC - how to assert on <img src=>TC - 如何在 <img src=> 上断言
【发布时间】:2021-09-02 15:52:44
【问题描述】:

我正在尝试使用selenium webdriver 来断言一个

logo.svg == context.driver.find_element_by_xpath("//img[@src='../logo.svg']"

在 Python3 上。

所以,当我运行测试用例时,我得到:

raise exception_class(message, screen, stacktrace)
      selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element: {"method":"xpath","selector":"//img[@src='../logo.svg']"}

HTML 快照:

我一直试图在标题上“找到”这个特定的图像,但没有成功。谁能帮帮我?

#---- 重新审视这个问题,logo_company = logo.svg 是一个字符串,而 context.driver.find_element_by ......它是 imagin 对象。我在想如何比较 string == string 或者返回 file.svg 之类的 file.svg == context.driver?

【问题讨论】:

  • 可以分享相关的HTML代码吗?

标签: python selenium xpath css-selectors assert


【解决方案1】:

似乎有点不对劲。要定位元素,您可以使用以下任一Locator Strategies

  • xpath A:

    context.driver.find_element_by_xpath("//img[starts-with(@src, '/static/media/logo-Caja-los-andes')]")
    
  • css_selector A:

    context.driver.find_element_by_css_selector("img[src^='/static/media/logo-Caja-los-andes']")
    
  • xpath B:

    context.driver.find_element_by_xpath("//img[starts-with(@src, '/static/media/logo-Caja-los-andes') and @alt='Logo Caja Los Andes']")
    
  • css_selector B:

    context.driver.find_element_by_css_selector("img[src^='/static/media/logo-Caja-los-andes'][alt='Logo Caja Los Andes']")
    

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-11-06
    • 1970-01-01
    • 2020-07-13
    • 2018-04-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多