Inactive
Notice ID:12134
The contractor shall provide Hill AFB with 4 days of hands-on, instructor-led TDD for C++ training. This training shall be performed on-site at building 1279 Room 6, 6016 Cedar Lane, Hill AFB, UT 8405...
The contractor shall provide Hill AFB with 4 days of hands-on, instructor-led TDD for C++ training. This training shall be performed on-site at building 1279 Room 6, 6016 Cedar Lane, Hill AFB, UT 84056 on May 6-9, 2024. 2.1 Contractor shall provide training on the topics listed below for 12 attendees. o Test-Driven Development Fundamentals Introduction to TDD . Philosophy and principles of TDD . Benefits and challenges of TDD . Limitation of TDD o TDD Life Cycle . Mastering the Red-Green-Refactor cycle . Writing minimal code to pass tests . Driving the application code from tests o Setting Up for TDD in Visual Studio Code . Configuring VS Code for TDD with C++ . Introduction to unit testing frameworks (e.g., VS CppUnit Test, Google Test) . Separating tests from code-under-test . Test project configuration within VS Code . Version control software and TDD o Practical Unit Test Writing in C++ Characteristics of a good test . Moving beyond the happy path . Effective testing strategies o Business Requirements to User Stories and Tests . Understanding and creating user stories . Translating business requirements . User stories in Agile and TDD . Crafting effective user stories for TDD o Designing Test Cases from User Stories . Breaking down user stories into testable units . Writing test cases that reflect user story acceptance criteria . Prioritizing test cases based on business value and risk o Advanced TDD Practices . Effective refactoring strategies . Improving code quality and maintainability . Regression testing to increase code confidence . Handling complex scenarios and edge cases in TDD . Identifying and addressing cyclomatic complexity o Dealing With Dependencies . Defining mocks, fakes and stubs . Mocking frameworks compatible with C++ . Isolating code for independent units of testing . Implementing dependency injection to facilitate testing o Integrating TDD into Development Process . Continuous Integration and TDD . Understanding the testing pyramid o Practical Test Automation Techniques . Continuous Integration (CI) pipelines with GitLab CI/CD . Selenium for UI testing o Test Coverage and Quality . Maintaining TDD over time . Dealing with changes . How much testing is enough o TDD in legacy codebase . Strategies . Challenges o Scaling TDD . Building team standards for TDD . Effective metrics in TDD adoption Any Feedback to improve our process regarding this requirement is welcome.