AI-powered learning
Save this course
Ensuring Elixir Application Performance with Testing and ExUnit
Gain insights into unit testing Elixir applications with ExUnit, explore advanced integration and E2E testing, and master OTP, Phoenix frameworks, API testing, and platform-specific refactoring.
91 Lessons
15h
Join 2.9 million developers at
Join 2.9 million developers at
LEARNING OBJECTIVES
- Learn about unit and integration testing
- Learn about the testing of OTP
- Understand the EXUnit
- Understand the property-based testing and role of generators in it
- Learn about the testing of ecto schemas and ecto queries
Learning Roadmap
1.
Getting Started
Getting Started
Get familiar with Elixir testing tools, techniques, and practical examples for robust applications.
2.
Unit Tests
Unit Tests
Discover the logic behind creating and optimizing unit tests in Elixir using ExUnit.
Introduction to Unit TestsOur First TestThe Anatomy of a TestOrganizing Our Tests using DescribeOrganizing Our Tests using Setup BlocksCreating Comprehensive Test CoverageList ComprehensionsFurther Usage of List Comprehension for Test CoverageQuiz on Basics of ExUnitError CasesTesting Pure FunctionsRefactoring Toward Pure FunctionsIsolating CodeFiner Control over Dependency InjectionQuiz on Unit Testing Skills
3.
Integration and End-to-End Tests
Integration and End-to-End Tests
19 Lessons
19 Lessons
Examine integrating, testing, and simulating external dependencies, optimizing Elixir application performance.
4.
Testing OTP
Testing OTP
8 Lessons
8 Lessons
Grasp testing strategies for GenServers, functional cores, OTP processes, periodic actions, and supervision trees.
5.
Testing Ecto Schemas
Testing Ecto Schemas
13 Lessons
13 Lessons
Solve problems in testing Ecto schemas, data validation, and database integration in Elixir.
6.
Testing Ecto Queries
Testing Ecto Queries
6 Lessons
6 Lessons
Tackle Ecto query tests, from creating factories to CRUD operations, ensuring data integrity.
7.
Testing Phoenix
Testing Phoenix
12 Lessons
12 Lessons
Master the steps to test Phoenix applications, including JSON APIs, HTML, plugs, and channels.
8.
Property-Based Testing
Property-Based Testing
16 Lessons
16 Lessons
Learn how to use property-based testing, stream_data, and effective data generation in Elixir.
Certificate of Completion
Showcase your accomplishment by sharing your certificate of completion.
Complete more lessons to unlock your certificate
Developed by MAANG Engineers
ABOUT THIS COURSE
Testing is an essential part of the software development life cycle. A good automated testing suite streamlines feedback, allowing rapid creation and tight control over specific application components.
This course is a comprehensive introduction to testing Elixir applications with ExUnit. You’ll start with a review of unit testing principles before diving into writing tests with the ExUnit. You’ll build a comprehensive suite of unit tests before moving on to more advanced testing, including integration, end-to-end, and property-baste testing. In addition to the core Elixir environment, you’ll also develop tests for OTP, the Phoenix web framework, including JSON APIs and Ecto schematics. You’ll also explore refactoring for different platforms, server rendering, and design strategies.
By the end of this course, you’ll be an expert in unit testing Elixir applications with ExUnit and ready to build robust, performant applications using Phoenix.
ABOUT THE AUTHOR
The Pragmatic Programmers
We create timely, practical books and learning resources on classic and cutting-edge topics to help you practice your craft and accelerate your career.
Trusted by 2.9 million developers working at companies
A
Anthony Walker
@_webarchitect_
E
Evan Dunbar
ML Engineer
S
Software Developer
Carlos Matias La Borde
S
Souvik Kundu
Front-end Developer
V
Vinay Krishnaiah
Software Developer
Built for 10x Developers
No Passive Learning
Learn by building with project-based lessons and in-browser code editor


Personalized Roadmaps
The platform adapts to your strengths & skills gaps as you go


Future-proof Your Career
Get hands-on with in-demand skills


AI Code Mentor
Write better code with AI feedback, smart debugging, and "Ask AI"




MAANG+ Interview Prep
AI Mock Interviews simulate every technical loop at top companies

