Skip to content

Repository files navigation

Needle

Build Status

Needle is a tool for testing visuals with Selenium and nose.

It checks that visuals (CSS/fonts/images/SVG/etc.) render correctly by taking screenshots of portions of a website and comparing them against known good screenshots. It also provides tools for testing calculated CSS values and the position of HTML elements.

Example

This is what a Needle test case looks like:

fromneedle.casesimportNeedleTestCaseclassBBCNewsTest(NeedleTestCase):
deftest_masthead(self):
self.driver.get('http://www.bbc.co.uk/news/')
self.assertScreenshot('#blq-mast', 'bbc-masthead')

This example checks for regressions in the appearance of the BBC's masthead.

Documentation

Full documentation available on Read the Docs.

If you'd like to build the documentation yourself, first install sphinx:

pip install sphinx

Then run:

cd docs
make html

The documentation will then be available browsable from docs/_build/index.html.

Running Needle's test suite

First install tox (usually via pip install tox). Then:

$ tox

About

Automated tests for your CSS.

Topics

Resources

Stars

594 stars

Watchers

22 watching

Forks

Releases

Packages

Used by

Contributors

Languages