Companies Home Search Profile

Unit Testing for Typescript & NodeJs Developers with Jest

Focused View

Alex Horea

10:56:34

237 View
  • 1 - How to take this course.mp4
    04:48
  • 2 - Tools we will need.mp4
    01:41
  • 3 - Why we need tests.mp4
    05:32
  • 1 - Jest basics quiz.html
  • 4 - Section intro.mp4
    00:41
  • 5 - Jest introduction.mp4
    01:57
  • 6 - Code changes in this lecture.txt
  • 6 - Jest project setup.mp4
    10:02
  • 7 - Code changes in this lecture.txt
  • 7 - Structure of an unit test.mp4
    04:37
  • 8 - Code changes in this lecture.txt
  • 8 - Jest assertions and matchers.mp4
    12:09
  • 9 - Code changes in this lecture.txt
  • 9 - Multiple tests structure.mp4
    05:45
  • 10 - Code changes in this lecture.txt
  • 10 - Parametrized tests.mp4
    05:19
  • 2 - Jest intermediate topics quizz.html
  • 11 - Section intro.mp4
    01:08
  • 12 - FIRST principles.mp4
    05:44
  • 13 - Code changes in this lecture.txt
  • 13 - Jest hooks.mp4
    07:35
  • 14 - Code changes in this lecture.txt
  • 14 - Jest issuse.txt
  • 14 - Testing for errors.mp4
    10:22
  • 15 - Jest aliases and watch mode.mp4
    06:10
  • 16 - Code changes in this lecture.txt
  • 16 - VSCode debug configuration.mp4
    07:01
  • 17 - Code changes in this lecture.txt
  • 17 - Coverage.mp4
    06:56
  • 18 - Section intro.mp4
    01:11
  • 19 - Test Driven Development intro.mp4
    02:25
  • 20 - Coding Katas password checker.mp4
    03:01
  • 21 - Code changes in this lecture.txt
  • 21 - PassChecker setup.mp4
    05:26
  • 22 - Code changes in this lecture.txt
  • 22 - PassChecker Iteration 1.mp4
    08:51
  • 23 - Code changes in this lecture.txt
  • 23 - PassChecker Iteration 2.mp4
    11:27
  • 24 - Code changes in this lecture.txt
  • 24 - PassChecker Iteration 3.mp4
    09:04
  • 25 - Section intro.mp4
    01:02
  • 26 - What are test doubles.mp4
    04:29
  • 27 - Code changes in this lecture.txt
  • 27 - Stubs.mp4
    06:34
  • 28 - Code changes in this lecture.txt
  • 28 - Fakes.mp4
    06:00
  • 29 - Code changes in this lecture.txt
  • 29 - Mocks.mp4
    10:28
  • 30 - Code changes in this lecture.txt
  • 30 - Spies.mp4
    11:41
  • 31 - Code changes in this lecture.txt
  • 31 - Mocking modules.mp4
    11:25
  • 32 - Section intro.mp4
    08:41
  • 33 - Project presentation.mp4
    04:42
  • 34 - Code changes in this lecture.txt
  • 34 - Project installation.mp4
    05:24
  • 34 - server-app.zip
  • 35 - Code changes in this lecture.txt
  • 35 - Testing arrays.mp4
    16:52
  • 36 - Code changes in this lecture.txt
  • 36 - Mocking consumer classes.mp4
    15:03
  • 36 - resources.zip
  • 37 - Code changes in this lecture.txt
  • 37 - Injecting mocks.mp4
    14:16
  • 37 - Res.zip
  • 38 - Explaining tests.mp4
    09:48
  • 39 - Code changes in this lecture.txt
  • 39 - Event based app tests.mp4
    12:01
  • 40 - Code changes in this lecture.txt
  • 40 - Server tests 1 setup.mp4
    12:11
  • 41 - Code changes in this lecture.txt
  • 41 - Server tests 2 advanced debugging.mp4
    09:11
  • 42 - Code changes in this lecture.txt
  • 42 - Server tests 3 prototype spies.mp4
    10:17
  • 43 - Code changes in this lecture.txt
  • 43 - Finishing the tests.mp4
    06:17
  • 44 - High mock tests conclusion.mp4
    04:13
  • 45 - Section intro.mp4
    02:59
  • 46 - Building testing wrappers.mp4
    08:41
  • 46 - Code changes in this lecture.txt
  • 47 - Async issue.txt
  • 47 - Code changes in this lecture.txt
  • 47 - Setup tests.mp4
    12:34
  • 48 - Code changes in this lecture.txt
  • 48 - Finishing tests.mp4
    07:37
  • 49 - Low mock tests conclusion.mp4
    04:00
  • 50 - Section intro.mp4
    00:49
  • 51 - Understanding integration tests.mp4
    04:40
  • 52 - Code changes in this lecture.txt
  • 52 - Integration tests setup.mp4
    12:02
  • 52 - Res.zip
  • 53 - Code changes in this lecture.txt
  • 53 - Writing integration tests.mp4
    12:50
  • 54 - Section intro.mp4
    00:57
  • 55 - Code changes in this lecture.txt
  • 55 - Environment variables.mp4
    03:30
  • 56 - Code changes in this lecture.txt
  • 56 - Multiple test configurations.mp4
    03:25
  • 57 - Code changes in this lecture.txt
  • 57 - Snapshot testing.mp4
    07:02
  • 58 - Code changes in this lecture.txt
  • 58 - Custom matchers.mp4
    08:37
  • 59 - CICD pipeline using Github Actions.mp4
    10:58
  • 59 - Code changes in this lecture.txt
  • 60 - Exploring the NodeJs test runner module.mp4
    13:03
  • 61 - Testing frameworks comparison.mp4
    04:45
  • 62 - Section intro.mp4
    03:06
  • 63 - Code changes in this lecture.txt
  • 63 - Simple React Typescript app setup.mp4
    05:25
  • 64 - Code changes in this lecture.txt
  • 64 - Generics state props.mp4
    09:22
  • 65 - Code changes in this lecture.txt
  • 65 - What we will test.mp4
    06:58
  • 66 - Code changes in this lecture.txt
  • 66 - First tests rendering React TypeScript components.mp4
    07:56
  • 66 - TSTestCourse.zip
  • 67 - Code changes in this lecture.txt
  • 67 - React testing library query for elements.mp4
    10:47
  • 68 - Code changes in this lecture.txt
  • 68 - Testing user interaction.mp4
    08:20
  • 69 - Code changes in this lecture.txt
  • 69 - Testing async updates.mp4
    12:56
  • 70 - TypeScript presentation.mp4
    04:13
  • 71 - Running TS code.mp4
    03:15
  • 72 - Types in Typescript.mp4
    04:45
  • 73 - User defined types.mp4
    05:52
  • 74 - Optional properties.mp4
    03:52
  • 75 - Type guards.mp4
    04:05
  • 76 - Compiler options.mp4
    07:00
  • 77 - Classes.mp4
    06:40
  • 78 - Access modifiers.mp4
    04:07
  • 79 - Inheritance.mp4
    05:26
  • 80 - Interfaces.mp4
    04:11
  • 81 - Generics.mp4
    07:03
  • 82 - Promises.mp4
    04:21
  • 83 - Modules.mp4
    05:01
  • 84 - Strict mode.mp4
    06:28
  • 85 - Undefined null never unknown.mp4
    07:51
  • 86 - Enums and Swith statements.mp4
    06:12
  • 87 - Runnnig on NodeJs.mp4
    11:18
  • 88 - Debugging node TypeScript.mp4
    02:43
  • 89 - Run in browser.mp4
    09:07
  • 90 - TypeScript with Webpack.mp4
    12:59
  • 91 - Decorators introduction.mp4
    13:55
  • 92 - Method decorators.mp4
    05:23
  • 93 - Outro.mp4
    00:17
  • 94 - Choosing a work project.mp4
    06:25
  • 95 - Ending lecture.mp4
    01:19
  • Description


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

    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
    • Write tests for error handling
    • Jest - the basics: hooks, assertions, matchers
    • Jest - the advanced parts: aliases, custom matchers, snapshots
    • Advanced unit testing techniques using Jest
    • CI/CD pipeline using Github Actions

    Who is this for?


  • NodeJs or Typescript developpers willing to deeply understand unit and integration testing
  • React developers who want to test their apps
  • Developers who want to write robust and clean code
  • Developers who want to learn Jest
  • More details


    Description

    ***1.03.2023 - Complete remaster of the course with the latest Jest and TypeScript features***

    A must have skill for senior developers

    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.

    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.

    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.

    Using Jest as an unit testing library provides many advantages:

    • Unitary unit testing library for running and structuring tests

    • Extensive mocking, stubbing and spying capabilities

    • Powerful matchers to create simple to read tests

    • Jest ships as one unitary NPM package

    • Jest is the default choice for TypeScript React projects

    Why unit testing NodeJs apps?

    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.

    What you will get from this course:

    • setup NodeJs and Typescript projects from scratch

    • implement unit testing with Jest

    • learn about unit testing configuration with parameters like: roots, transform, testRegex or verbose

    • learn about Jest test suites structure: describe with value, test, descriptions, hooks like beforeEach

    • basic and advanced assertions, comparing primitive types, objects or even errors

    • instantiating test double objects like mocks, stubs, spies or fakes.

    • write complex mock objects which can be used with "strange" JavaScript libraries.

    • inject doubles: directly inside the constructor, over the module or even using the objects prototype

    • learn about deep mocks and matchers to make your tests even better

    • integration tests for a NodeJs server application

    • Conditionally and asynchronously skip tests

    Dedicated sections on unit testing mocks:

    • Jest mocks, spies

    • How to use stubs

    • London/Chicago testing approach, with the advantages and disadvantages of each one

    In this course you will learn how to use Test Driven Development (TDD):

    • Analyze the advantages of TDD

    • Hands-on practice with a great coding kata: password checker

    Separate section on Jest Integration tests for Rest APIs:

    • learn how to setup integration tests

    • learn the difference between integration tests and unit tests

    • write integration tests for a Rest API with Jest

    Dedicated section on Jest React unit testing:

    • How to test for React components with Jest

    • How to test React async code

    • How to debug React Typescript apps

    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.

    Course advantages:

    • 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

    • Concise: learn only what you need, no fillers to make the course falsely more appealing

    • 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"

    • Organized course structure: six parts, progressive approach, consistent content

    • 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

    • Big font, dark background, fullHD content, this way it is readable even on a small screen or even tablet.

    • Lifetime access

    • Certificate of completion to present to your current or prospective employer

    Do you want your Typescript or NodeJs code to have the best quality, and your project to be safe?

    Enroll and start writing your tests in 10 minutes!



    Who this course is for:

    • NodeJs or Typescript developpers willing to deeply understand unit and integration testing
    • React developers who want to test their apps
    • Developers who want to write robust and clean code
    • Developers who want to learn Jest

    User Reviews
    Rating
    0
    0
    0
    0
    0
    average 0
    Total votes0
    Focused display
    Hi! I'm Alex and I am pleased to meet you!I have a master's degree in Internet Technologies and I'm an active senior web and Cloud developer. In the last years I worked designing and implementing user interfaces and cloud solutions for various clients ranging from automotive to e-commerce. I firmly believe that knowing is never enough. Knowledge must be put to practice, that is why I want to focus my teaching on concrete, real world programs.
    Students take courses primarily to improve job-related skills.Some courses generate credit toward technical certification. Udemy has made a special effort to attract corporate trainers seeking to create coursework for employees of their company.
    • language english
    • Training sessions 95
    • duration 10:56:34
    • English subtitles has
    • Release Date 2023/05/18