Harry Percival writes about test-driven development in Python and Django, and is the author of the 'Testing Goat' book.
Commenters repeatedly recommend his free TDD book as a great, funny, practical introduction to testing, even for people outside Python and Django.
Let me weigh in here. I've worked with Rails, ported a php application to Django, currently working with Spring MVC and Angular JS.
PHP is a scripting language, Django is a framework. I think you are comparing 2 different things.
If you want to get into web development, there are 2 major concepts/skills you need to get down. First, understanding of MVC, or "MTV"[0], as in Django's case, or whatever other variation of said design pattern (MVP, MVVC, etc..). Second, writing and consuming REST APIs. The frameworks will handle or at least guide you through the rest. CSS, HTML, and JS will help you with the front end, but I think as someone who works in ops, you'd be more comfortable establishing a solid back-end first. You can always bootstrap the front-end.
Personally, I try to stay away from anything PHP based. I don't think anyone in their right mind would start a new project with a PHP stack. Frameworks like Django, Rails, and other JS frameworks are much more mature, in terms of utility, than anything you'll find in PHP.
Since you already have experience with it, it would be fairly easy to work with Django after running through a few tutorials.
IMO if you go the PHP route, you'll get stuck with old technologies, as in your job prospects would involve maintaining legacy php apps. I haven't heard of anyone starting a new project with PHP.
A developer should be concerned with building applications to meet requirements, writing and consuming REST APIs, and implementing…
1. Introduction to Software Testing: https://cs.gmu.edu/~offutt/softwaretest/
2. Obey the testing goat online book: http://www.obeythetestinggoat.com/
3. Neal Ford on test driven design (Requires a oreilly subscription): https://www.oreilly.com/library/view/neal-ford-on/9781449314439/ Here's the free PDF of the slides though, https://github.com/nealford/presentations/blob/master/Test%20Driven%20Design%20(Neal%20Ford).pdf
Threads on if(why) testing is overrated:
https://news.ycombinator.com/item?id=23778878
https://news.ycombinator.com/item?id=20309815
Harry Percival, famous by "Obey the Goat" also his new book "Cosmic Python" this guy is a genius at teaching :) both books available at the respective sites
https://www.obeythetestinggoat.com/pages/book.html#toc
http://www.cosmicpython.com/
If you feel that TDD is too much there is a book about pytest, tho never really focused on it.
Hope it helps,
PS: Ty Harry :)
Obey the Testing Goat (http://www.obeythetestinggoat.com/) will take you through creating a small web app (python/django) using test driven development. The language choice may not match up with what you're using, but the concepts are useful across many domains. This book made a huge impact in how I think about writing tests, and in turn how I think about writing code.
It depends on your background. Having written web app before let's you quick grasp the ideas laid in the book.
To me, the most important chapters are
- https://www.obeythetestinggoat.com/book/chapter_mocking.html
- https://www.obeythetestinggoat.com/book/chapter_purist_unit_tests.html
Having said that, the concepts are universal.
My recommended route: Harvard's CS50x on edx -> Think Python 2ed -> https://www.obeythetestinggoat.com/pages/book.html#toc
You don't need to take CS50, but it's the probably the best introduction to programming available online and will give you a strong foundation that will make the later books easier to work through.