% Off Udemy Coupon - CoursesWyn

Unit Testing for Typescript & NodeJs Developers with Jest

Master unit testing with NodeJs, Typescript, Jest and React. Write top quality Typescript and NodeJs software with Jest

$10.99 (93% OFF)
Get Course Now

About This Course

<div>A must have skill for senior developers</div><div><br></div><div>Typescript is getting more and more popularity and it is a required skill for many IT jobs. It's key feature is type safety, thus preventing bugs.</div><div><br></div><div>But yes another skill is very important for any programming job: unit testing. Combining these two techniques will result in solid, robust and bug free code.</div><div><br></div><div>This course will go beyond the basics of unit testing and teach you all you need to write real world, complex testing suites for NodeJs and Typescript applications using the most popular JavaScript testing library: Jest.</div><div><br></div><div>Using Jest as an unit testing library provides many advantages:</div><div><ul><li><span style="font-size: 1rem;">Unitary unit testing library for running and structuring tests</span></li><li><span style="font-size: 1rem;">Extensive mocking, stubbing and spying capabilities</span></li><li><span style="font-size: 1rem;">Powerful matchers to create simple to read tests</span></li><li><span style="font-size: 1rem;">Jest ships as one unitary NPM package</span></li><li><span style="font-size: 1rem;">Jest is the default choice for TypeScript React projects</span></li></ul></div><div><span style="font-size: 1rem;">Why unit testing NodeJs apps?</span></div><div><br></div><div>Unit testing usually adds a lot to a code base, two or tree times in some cases. This also means that a lot of time needs to be invested in writing and setting up tests. But all this effort pays of: time, effort and headache of fixing bugs can be used for more fun activities.</div><div><br></div><div>What you will get from this course:</div><div><ul><li><span style="font-size: 1rem;">setup NodeJs and Typescript projects from scratch</span></li><li><span style="font-size: 1rem;">implement unit testing with Jest</span></li><li><span style="font-size: 1rem;">learn about unit testing configuration with parameters like: roots, transform, testRegex or verbose</span></li><li><span style="font-size: 1rem;">learn about Jest test suites structure: describe with value, test, descriptions, hooks like beforeEach</span></li><li><span style="font-size: 1rem;">basic and advanced assertions, comparing primitive types, objects or even errors</span></li><li><span style="font-size: 1rem;">instantiating test double objects like mocks, stubs, spies or fakes.</span></li><li><span style="font-size: 1rem;">write complex mock objects which can be used with "strange" JavaScript libraries.</span></li><li><span style="font-size: 1rem;">inject doubles: directly inside the constructor, over the module or even using the objects prototype</span></li><li><span style="font-size: 1rem;">learn about deep mocks and matchers to make your tests even better</span></li><li><span style="font-size: 1rem;">integration tests for a NodeJs server application</span></li><li><span style="font-size: 1rem;">Conditionally and asynchronously skip tests</span></li></ul></div><div><span style="font-size: 1rem;">Dedicated sections on unit testing mocks:</span></div><div><ul><li><span style="font-size: 1rem;">Jest mocks, spies</span></li><li><span style="font-size: 1rem;">How to use stubs</span></li><li><span style="font-size: 1rem;">London/Chicago testing approach, with the advantages and disadvantages of each one</span></li></ul></div><div><span style="font-size: 1rem;">In this course you will learn how to use Test Driven Development (TDD):</span></div><div><ul><li><span style="font-size: 1rem;">Analyze the advantages of TDD</span></li><li><span style="font-size: 1rem;">Hands-on practice with a great coding kata: password checker</span></li></ul></div><div><span style="font-size: 1rem;">Separate section on Jest Integration tests for Rest APIs:</span></div><div><ul><li><span style="font-size: 1rem;">learn how to setup integration tests</span></li><li><span style="font-size: 1rem;">learn the difference between integration tests and unit tests</span></li><li><span style="font-size: 1rem;">write integration tests for a Rest API with Jest</span></li></ul></div><div><span style="font-size: 1rem;">Dedicated section on Jest React unit testing:</span></div><div><ul><li><span style="font-size: 1rem;">How to test for React components with Jest</span></li><li><span style="font-size: 1rem;">How to test React async code</span></li><li><span style="font-size: 1rem;">How to debug React Typescript apps</span></li></ul></div><div><span style="font-size: 1rem;">The examples used in the course follow very high coding guidelines for Typescript, NodeJs and React. Async/await syntax is used for clear and concise code, and of course, you will see how to test asynchronous code, on server, but also in the front end.</span></div><div><br></div><div>Course advantages:</div><div><ul><li>Respect for your time: most of the time of the instructor typing is cut off, the course is focused on unit tests and Jest explanations</li><li><span style="font-size: 1rem;">Concise: learn only what you need, no fillers to make the course falsely more appealing</span></li><li><span style="font-size: 1rem;">Experienced and programming active instructor: a great teacher never looses touch with the industry. This is especially true for software development, where the industry is so dynamic. This helps the instructor stay up to date with the best coding guidelines and present you the challenging parts, not the "hello world"</span></li><li><span style="font-size: 1rem;">Organized course structure: six parts, progressive approach, consistent content</span></li><li><span style="font-size: 1rem;">Code changes in each lecture on Git with code diffs: this will help you get an concise overview of the lecture and correct in case you missed something</span></li><li><span style="font-size: 1rem;">Big font, dark background, fullHD content, this way it is readable even on a small screen or even tablet.</span></li><li><span style="font-size: 1rem;">Lifetime access</span></li><li>Certificate of completion to present to your current or prospective employer</li></ul></div><div><span style="font-size: 1rem;">Do you want your Typescript or NodeJs code to have the best quality, and your project to be safe?</span></div><div><br></div><div>Enroll and start writing your tests in 10 minutes!</div>

What you'll learn:

  • Basics of TypeScript unit testing with Jest
  • Integration tests with TypeScript
  • Test Driven Development (TDD) with Jest
  • Unit testing React with TypeScript and Jest
  • CICD with GitHub Actions and Docker
  • Jest - the basics: hooks, assertions, matchers
  • Jest - the advanced parts: aliases, custom matchers, snapshots
  • Advanced unit testing techniques using Jest
  • Database operations testing with Docker and Jest