When you work on a big website or web application, you (and maybe a bunch of people) are constantly introducing changes in the visual components. Sometimes this changes are intentional, as you are improving the look and feel, or adding new features, but sometimes this changes are introduced by mistake. Imagine you are refactoring some component, for example a button, but you are not sure how this change is gonna impact the site. You would need to browse the whole site to make sure everything looks good. With css regression tests you can automate the process, and make sure none breaks the styles across the website. There are some tools like PhantomCSS or wraith which allow you to write tests to compare screenshots of your website and detect changes. haunterjs masks some complex features of casperjs, allowing to code simple tests, with a more compact and readable syntax.