Book Image

Angular Projects

By : Zama Khan Mohammed
Book Image

Angular Projects

By: Zama Khan Mohammed

Overview of this book

<p>Angular is one of the best frameworks, not only for building web applications, but also for building applications on other platforms such as desktop and mobile. It is packed with amazing web tools that allow developers to become more productive and make the development experience a happier one </p><p>This book will be your practical guide when it comes to building optimized web apps using Angular. The book explores a number of popular features, including the experimental Ivy rendered, lazy loading, and differential loading, among others, in the projects. It starts with the basics of Angular and its tools, which will help you to develop and debug Angular applications. You will learn how to create an SPA using Angular Router, and optimize it by code splitting and Preloading Routes. We will then build a form-heavy application and make forms reactive by using Reactive Forms. After that, we will learn how to build a Progressive Web App, and a server-side rendering app, as well as a MonoRepo app. Furthermore, we will also dive into building mobile apps using Ionic and NativeScript. Finally, we end the book by creating a component library for our application using Angular CDK and then testing it. </p><p>By the end of this book, you’ll have gained comprehensive insights into using Angular, along with hands-on experience in creating intuitive real-world applications.</p>
Table of Contents (19 chapters)
Title Page
Copyright and Credits
Dedication
Foreword

Using Jest with the Angular CLI

The Angular CLI comes with Karma and Jasmine so that it can run unit test cases out of the box. Jasmine has been out there longer, but apart from Jasmine, there are other test runners in the JavaScript community. Some of the most popular ones are Mocha and Jest. Jest is one of the latest test runners and comes from Facebook. It is not only fast and easy to configure but also delightful to test with. It also allows you to perform a new kind of testing known as snapshot testing.

Let's configure jest using the ng add command:

> ng add @davinkevin/jest

This is one of the many community-provided schematics that adds Jest support, though others can add support too, such as @briebug/jest-schematic@itrulia/jest-schematic@ockilson/ng-jest, and so on.

Now, let's run the test command using the new script that we added to...