使用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)
答案 0 :(得分:0)
您可以检查元素的相应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)'
...