Software Testing Fundamentals
Write robust, maintainable automated tests and practice test-driven development from day one. This hands-on course covers unit testing with xUnit, mocking with Moq, REST API validation, and continuous integration with GitHub Actions, giving you the skills to ensure code quality and reliability across your projects.
What You'll Learn
By the end of this course, you will be able to:
- Write unit tests and assertions using the xUnit framework
- Create parameterized tests, test fixtures, and edge case coverage for thorough validation
- Apply the Red-Green-Refactor TDD workflow to drive implementation through tests
- Mock objects and dependencies with Moq to isolate units and test asynchronous methods
- Write automated tests for REST APIs, validating responses, status codes, and edge cases
- Integrate tests into CI pipelines with GitHub Actions for automated execution on pull requests
Requirements
- Basic experience with a programming language such as C#, Java, or Python
- Familiarity with object-oriented programming concepts
- Interest in improving code quality through testing
Audience
- Software Developers and Engineers
- QA Engineers and Test Automation Specialists
- DevOps and CI/CD Practitioners
- Anyone responsible for maintaining code quality through automated tests
Topics
Unit Testing
- xUnit Framework Overview
- Writing Unit Tests and Assertions
- Parameterized Tests for Reusable Test Cases
- Test Fixtures for Setup and Teardown
- Testing Edge Cases and Exception Handling
- Debugging Failing Tests
Test Suites and Code Coverage
- Organizing Tests into Test Suites
- Measuring Code Coverage
- Analyzing Test Gaps and Improving Coverage
Test-Driven Development (TDD)
- Red-Green-Refactor Workflow
- Writing Tests Before Implementation
- Refactoring Code Safely with Tests
- Functional vs. Unit Testing Strategies
Mocking and Dependencies
- Using Moq to Mock Objects and Dependencies
- Testing Asynchronous Methods
- Isolating Units for Reliable Tests
REST API Testing
- Writing Automated Tests for REST APIs
- Validating Responses and Status Codes
- Testing Edge Cases in API Requests
Continuous Integration and Automation
- Integrating Tests with GitHub Actions
- Automating Test Execution on Pull Requests
- Reporting and Analyzing Test Results
This course requires a minimum of 4 participants. Contact us for custom pricing for smaller groups.
Course Features
- Expert instruction
- Interactive lectures
- Hands-on labs and exercises
- Comprehensive course materials
- Lifetime access to materials
Request Training Quote
Request Received!
Thank you for your interest!
We'll contact you shortly with a detailed quote for Software Testing Fundamentals.