Test-Driven Development (TDD) Virtual Internship
In this virtual internship, students will learn the principles of test-driven development (TDD) and build quality software using popular TDD frameworks like Jest, Mocha, and others. Through hands-on projects, students will gain practical experience in writing comprehensive test suites, refactoring code, and delivering robust, well-tested applications. By the end of the internship, students will be equipped with the skills to join a quality assurance or software engineering team and contribute to the development of high-quality, maintainable software.
Track Overview
Tasks & Milestones
Exploring TDD Principles
IntermediateIn this task, students will learn the fundamental principles of test-driven development and how it differs from traditional software development approaches.
Implementing TDD with Jest
IntermediateIn this task, students will learn how to write unit tests using the Jest testing framework and apply the TDD development cycle.
Setting up a Mocha Testing Environment
IntermediateIn this task, students will set up a Mocha testing environment and explore its key features and capabilities.
Writing Comprehensive Test Suites with Mocha
IntermediateIn this task, students will apply their knowledge of Mocha to write more complex and organized test suites for a larger application.
Setting up a CI Pipeline with GitHub Actions
IntermediateIn this task, students will set up a continuous integration pipeline using GitHub Actions to automatically run their TDD test suites.
Implementing TDD in a CI/CD Workflow
IntermediateIn this task, students will apply their knowledge of TDD and CI to build a complete CI/CD workflow for a software project.
Applying TDD to Different Application Types
IntermediateIn this task, students will explore how to apply test-driven development to different types of applications, such as web applications, APIs, and microservices.
Advanced TDD Techniques: Mocking and Code Coverage
IntermediateIn this task, students will learn how to use mocking and code coverage tools to enhance their test-driven development practices.
Exploring Additional TDD Tools and Frameworks
IntermediateIn this task, students will research and experiment with additional test-driven development tools and frameworks beyond Mocha and Jest.
Prerequisites
- • Basic programming knowledge
- • Familiarity with JavaScript or a similar programming language
Certificate
Certificate of Completion
Earn a certificate upon successful completion