pages.courses.show.header
pages.courses.show.course_updated
pages.courses.show.subscription_description
pages.courses.show.included.header
models.attributes.base.description
Testing real applications is much more complicated than just calling functions. There are a lot of network requests to external resources, interaction with the file system, asynchronous code, and external libraries with their tricks. It all comes down to a good understanding of side effects and effective ways to isolate and manage them.
pages.courses.show.skills
- Freely test even those applications that interact a lot with the external environment
- Test code that actively works with the file system
- Apply polymorphism to replace the implementation of code that is inconvenient in testing
- Use stubs and mocking for their intended purpose
pages.courses.show.syllabus
1 | Introduction Explore the course and its objectives |
2 | Error testing Learn how to properly test code that throws exceptions |
3 | Fixtures Learn how to properly prepare data for tests |
4 | Side effects Understand why testing is difficult |
5 | Testing code that interacts with files Learn how to properly restore the environment. Explore the virtual file system. |
6 | Dependency Inversion Learn to eliminate side effects with polymorphism |
7 | Testing HTTP Requests Learn stubbing |
8 | Monkey patching Learn how to use prototypes to your advantage |
9 | Mocking Explore mocking and learn how to distinguish them from stubs |
10 | Property-based testing Explore a property-based approach to testing |
pages.courses.show.recommended_programs

- pages.courses.pros.right_in_browser
- pages.courses.pros.lifetime_access
- pages.courses.pros.learn_as_you_go
pages.courses.show.subscription_description