TypeScript Integration Testing

External Services you own this product

This project is part of the liveProject series TypeScript Integration Testing with Nest Framework
prerequisites
basic TypeScript • basic Jest
skills learned
dynamically configure Nest.js containers • mock an HTTPservice dependency
Daniel Coleman and Max Guernsey, III
1 week · 4-6 hours per week · INTERMEDIATE

pro $24.99 per month

  • access to all Manning books, MEAPs, liveVideos, liveProjects, and audiobooks!
  • choose one free eBook per month to keep
  • exclusive 50% discount on all purchases

lite $19.99 per month

  • access to all Manning books, including MEAPs!

team

5, 10 or 20 seats+ for your team - learn more


Look inside

Ensure your system can accommodate even unstable dependency services. You’re a TypeScript developer for a large company that sells stock photography. You’re responsible for the service that ingests images. Unfortunately, the ingestion process is being negatively affected by a flaky external web service that the ingestion engine uses, and the problem is not reproducible in unit testing since there’s no connection to the external service at that time. Working in IntelliJ WebStorm, you’ll establish an in-memory HTTP service, configure it to simulate a dependency service, write a test to reproduce the error, and use the test to build robustness into your system.

This project is designed for learning purposes and is not a complete, production-ready application or solution.

book resources

When you start your liveProject, you get full access to the following books for 90 days.

project authors

Daniel Coleman

Daniel Coleman has been writing software since he was twelve years old, and has been getting paid for it for the last ten years. He quickly progressed from individual contributor to trailblazer for software design excellence, turning his teammates into fellow disciples of high quality. Dan has also worked as an embedded coach for teams, helping them perfect their craft through best practices for code design, test-driven development, behavior-driven development, and effective requirements management. He shares his thoughts on the industry and software design at agiledesign.io.

Max Guernsey, III

Max Guernsey has over twenty years of experience in software development and is currently a managing member at DevCraft LLC. He has worked on a wide range of products and technologies, including C++ class libraries, financial analysis applications, C# and Java backends, and even multi-platform video games. He is an experienced consultant and his "coaching from the keyboard" approach provides hands-on experience to learners in all aspects of modern software development.

prerequisites

This liveProject is for developers with an intermediate-level understanding of TypeScript and object-oriented design. To begin these liveProjects you’ll need to be familiar with the following:

TOOLS
  • Basic Jest
  • Basic Nest.js
  • Basic Node.js
  • Basic Axios
  • Working knowledge of TypeScript 4.x
  • Working knowledge of object-oriented programming

you will learn

In this liveProject, you’ll learn to mock an external service to address and prevent problems related to external dependencies.

  • Use IntelliJ WebStorm to write and execute tests
  • Reproduce problems in hard-to-reach parts of a system with tests
  • Use tests to drive bug fixes
  • Dynamically configure Nest.js containers
  • Mock an HTTP service dependency
  • Use SQLite and an in-memory database to inspect the results of service execution

features

Self-paced
You choose the schedule and decide how much time to invest as you build your project.
Project roadmap
Each project is divided into several achievable steps.
Get Help
While within the liveProject platform, get help from other participants and our expert mentors.
Compare with others
For each step, compare your deliverable to the solutions by the author and other participants.
book resources
Get full access to select books for 90 days. Permanent access to excerpts from Manning products are also included, as well as references to other resources.

choose your plan

team

monthly
annual
$49.99
$499.99
only $41.67 per month
  • five seats for your team
  • access to all Manning books, MEAPs, liveVideos, liveProjects, and audiobooks!
  • choose another free product every time you renew
  • choose twelve free products per year
  • exclusive 50% discount on all purchases
  • External Services project for free