Book Image

Learning Ionic, Second Edition - Second Edition

By : Arvind Ravulavaru
Book Image

Learning Ionic, Second Edition - Second Edition

By: Arvind Ravulavaru

Overview of this book

Ionic makes it incredibly easy to build beautiful and interactive mobile apps using HTML5, SCSS, and Angular. Ionic also makes app development easier, faster, and more fun. This hands-on guide will help you understand the Ionic framework and how you can leverage it to create amazing real-time applications. We begin by covering the essential features of Angular 2, and then dive straight into how Ionic fits in today’s world of hybrid app development and give you a better understanding of the mobile hybrid architecture along the way. Further on, you will learn how to work with Ionic decorators, services, and components, which will allow you to build complex apps using the Ionic framework. We will take a look at theming Ionic apps using the built-in SCSS setup. After that, we will explore Ionic Native, and you will learn how to integrate device-specific features, such as notifications, with the Ionic app. To complete our learning, we will be building a Rider app, using Ionic and Uber API, to book a ride. Next, you will learn how to unit test, end-to-end test, monkey test, and execute device testing on AWS Device farm. Then, we will take a look at migrating the existing Ionic 1 apps to Ionic 2 and deploy them to the App Store. The final chapter on Ionic 3 wraps up this book by explaining the new features of Ionic 3 at the time of writing this book. By the end of this book, you will be able to develop, deploy, and manage hybrid mobile applications built with Cordova, Ionic, and Angular. All the examples in this book are valid for both Ionic 2 and Ionic 3.
Table of Contents (13 chapters)

E2E testing

In unit testing, we have tested units of code. In end-to-end testing, we are going to test a complete feature such as login or logout, or fetch IP address, and so on. Here we are going to look at the app as a whole instead of just one piece of functionality. Some people refer to this as integration testing as well.

We are going to use Protractor to help us with the execution of E2E tests. We are still going to use Jasmine to describe our tests, only the test runner changes from Karma to Protractor.

Quoting from http://www.protractortest.org:

"Protractor is an end-to-end test framework for Angular apps. Protractor runs tests against your app running in a real browser, interacting with it as a user would."

YouTube has quite a lot of videos which explain Protractor and Selenium in depth as well as various APIs of Protractor that can be used for testing, in case you want more information on Protractor...