Here's a little testing trick I use while working in Rails. When I'm trying to find areas of code that are missing test coverage, I like to individually run the different types of tests, then check the coverage for that type. So instead of simply running rspec
, I'll first run each of the following:
rake spec:models
rake spec:controllers
rake spec:helpers
rake spec:features
I find that if I mix feature tests with any of the other test types, that many lines of code are incidentally run that I don't have adequate coverage for. By running the different tests in isolation, it's much easier to identify gaps in real coverage.