There's so many testing techniques out there, that I just can't seem to find a resource that describes mocking, stubbing, etc. in the real world. I get a lot of theoreticals of what they're supposed to be, but none of the how-do-I-apply-this-to-my-Rails-app.
Can anyone recommend resources on building unit, integration, and other tests, and what to test, what I should be looking for, etc.?
At Codeship we focus on functional tests first. We use Cucumber/Capybara/Selenium a lot to test the user facing functionality. This way we can be sure that the feature works on the highest level. For some parts you might need to go down to unit tests, but start with functional tests first.
If you want to get started with testing your system try the following:
Everyone in your team writes down his 7 most important workflows in the application from a users perspective and ranks them. Then put all of the workflows together and try to find the 7 most important ones your team agrees on. Then find a tool that helps you test those from a users perspective. Build the whole toolchain (Tetsing tools on every developer machine, Continuous Integration server/service, ...) so adding new tests is trivial.
Now there is no more excuse not to write tests.
For mocking take a look at a screencast we did a while ago:
http://blog.codeship.io/2013/06/11/testing-tuesday-9-stubbin...
But still the most important thing with testing is getting started and having the whole workflow in place. Even if there is just one test, getting to a point where it is easy to add new tests needs to be priority #1