Book Image

Learning Angular - Third Edition

By : Aristeidis Bampakos, Pablo Deeleman
Book Image

Learning Angular - Third Edition

By: Aristeidis Bampakos, Pablo Deeleman

Overview of this book

Angular, loved by millions of web developers around the world, continues to be one of the top JavaScript frameworks thanks to its regular updates and new features that enable fast, cross-platform, and secure frontend web development. With Angular, you can achieve high performance using the latest web techniques and extensive integration with web tools and integrated development environments (IDEs). Updated to Angular 10, this third edition of the Learning Angular book covers new features and modern web development practices to address the current frontend web development landscape. If you are new to Angular, this book will give you a comprehensive introduction to help you get you up and running in no time. You'll learn how to develop apps by harnessing the power of the Angular command-line interface (CLI), write unit tests, style your apps by following the Material Design guidelines, and finally deploy them to a hosting provider. The book is especially useful for beginners to get to grips with the bare bones of the framework needed to start developing Angular apps. By the end of this book, you’ll not only be able to create Angular applications with TypeScript from scratch but also enhance your coding skills with best practices.
Table of Contents (19 chapters)
1
Section 1: Getting Started with Angular
4
Section 2: Components – the Basic Building Blocks of an Angular App
9
Section 3: User Experience and Testability
15
Section 4: Deployment and Practice

The anatomy of a unit test

There are many different ways to test a piece of code. Ιn this chapter, we will look at the anatomy of a test—the different parts that it's made of. To test any code, we need two things: a framework for writing the test and a runner to run it on. The test framework should provide utility functions for building test suites, containing one or several test specs each. As a result, unit testing involves the following concepts:

  • Test suite: A suite that creates a logical grouping for a bunch of tests. A suite, for example, can contain all the tests for a specific feature.
  • Test spec: The actual unit test.

We are going to use Jasmine, a popular test framework, which is also used by default in Angular CLI projects. Here is how a unit test looks in Jasmine:

describe('Calculator', () => {
  it('should add two numbers', () => {
   &...