QRZ.com practice tests and the ARRL tech study book for some of the theory.
What I'm about to say may sound crass, but it's the advice Gloucester's CAARA ham club gives for their tech-in-a-day class. Grind through the online practice tests until you've memorized the correct answers, then take the test. Don't worry about the theory. Just learn enough of the rules and procedures to stay out of trouble, and by memorizing the correct answers you'll have done that. If ham radio is something you keep as a hobby then the theory will come in time. Get the ticket and get on the air.
A word of caution. It can siphon off your range time or ammo money. Ham radio isn't a hobby; it's 99 hobbies. Weather you like socializing, getting real technical, building things from plans or kits, designing your own stuff, doing public service, competing, earning certificates and awards...you'll find it in ham radio. Learn Morse code and you can work the world with a couple hundred dollars in gear that will fit in a lunch box or you can erect a tower and spend $50K on a contest grade station.