【问题标题】:How do I access CSS data with selenium using python?如何使用 python 使用 selenium 访问 CSS 数据?
【发布时间】:2017-02-01 07:02:37
【问题描述】:

使用 python (3.4)、django (1.9) 和 selenium (3.0.2),我试图弄清楚,如何访问 CSS 代码以进行自动化测试?

我正在尝试做的事情:我想确保在适当的页面上加载适当的背景图像。过去,当我更改项目的静态设置时,这些都坏了。我已经将图像编码到 CSS 中,如下所示:

background: url('image.jpg')

基本上,我想做这样的事情:

css = self.browser.get_css_data('example.css')
self.assertIn('image.jpg', css)

我没有进行详尽的搜索,但是我在 selenium 源代码 webdriver.py 中没有看到任何类似的东西。

对我能做什么有什么想法吗?

更多我的代码,以防上下文有帮助:

from django.contrib.staticfiles.testing import StaticLiveServerTestCase
from selenium import webdriver
from time import sleep


class UnauthenticatedTest(StaticLiveServerTestCase):
    def setUp(self):
        self.browser = webdriver.Firefox()
        self.browser.implicitly_wait(3)

    def tearDown(self):
        self.browser.quit()

    def test_home_page_loads_correctly(self):
        # The user loads the web page
        self.browser.get(self.live_server_url)
        self.assertIn('App Name', self.browser.title)

【问题讨论】:

    标签: python css django selenium


    【解决方案1】:

    您可以检查元素的适当css属性如下:

    div = driver.find_element_by_xpath('//div[@class="some class name"]')
    assert div.value_of_css_property('background-image') == 'url("http://myurl/image.jpg")'
    assert div.value_of_css_property('color') == 'rgba(85, 85, 85, 1)'
    ...
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2022-01-25
      • 2020-09-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-01-12
      • 2019-05-10
      相关资源
      最近更新 更多