REST API Development with LoopBack Training Course

Introduction

The Fundamentals of APIs and Their Functionality

  • Scalar types
  • Web architecture patterns

REST Overview

  • Get option
  • Pull option
  • Post option
  • Delete option

Preparing the Development Environment

  • Installing and configuring LoopBack

Models and Data Sources

  • Creating and testing a model
  • Connecting to data sources

Authentication

  • Authenticating endpoints
  • Creating a public route
  • Using ACL
  • Adding login

Security

  • Locking down REST web services

Summary and Conclusion

Build REST API using Node.js Training Course

Introduction

Node.js Concepts

  • RAM vs I/O latency
  • Blocking vs. non-blocking
  • Syntax and logic

The Fundamentals of APIs and Their Functionality

  • Scalar types
  • Web Architecture Patterns: the composite pattern, proxy pattern, and facade pattern

REST Overview

  • Get option
  • Pull option
  • Post option
  • Delete option

Preparing the Development Environment

  • Installing and configuring Node.js
  • Installing and configuring Express.js
  • Installing and configuring MongoDB
  • Testing the installations

Node Modules and Package Manager

  • Creating a module
  • Loading a module
  • Using module functions
  • Creating event arguments
  • Extending event emitters
  • Installing a Node package
  • Using a package
  • Listing packages
  • Updating packages
  • Uninstalling packages
  • Publishing packages

Working with Express.js

  • Creating custom middleware
  • Using Express router
  • Filtering paths

REST and GraphQL API

  • Building a web server
  • Handling routes
  • Parsing HTTP requests
  • Calling endpoints
  • Defining schema
  • Adding input validation
  • Managing mutations
  • Adding variables
  • Handling errors

CRUD Operations Using MongoDB

  • Saving documents
  • Querying documents
  • Updating documents
  • Deleting documents

Authentication and Security

  • Creating and registering users
  • Generating tokens
  • Storing in environment variables
  • Protecting routes
  • Testing the authorization

Troubleshooting

  • Writing a unit test
  • Writing an integration test
  • Wiring a unit and integration test

Summary and Conclusion

Building REST APIs with Node.js, Express, and MongoDB Training Course

Duration

14 hours (usually 2 days including breaks)

Requirements

  • Experience with web development
  • Javascript programming experience

Audience

  • Developers

Overview

Node.js is an open source Javascript runtime environment. Express is a backend web application framework. MongoDB is a scalable document database. Combining Node.js, Express, and MongoDB provides a powerful set of features for building web applications or REST APIs.

This instructor-led, live training (online or onsite) is aimed at developers who wish to use and integrate Node.js, Express, and MongoDB to build fast and scalable REST APIs.

By the end of this training, participants will be able to:

  • Set up and integrate Node.js and Express with MongoDB.
  • Understand the features and architecture of Node.js, Express, and MongoDB.
  • Learn how to build RESTful APIs using the Node.js, Express, and MongoDB backend stack.
  • Implement routes, filtering, sorting, and pagination to Node.js REST APIs.
  • Design data models and perform CRUD operations with MongoDB and Mongoose.
  • Test and debug APIs with Postman.

Format of the Course

  • Interactive lecture and discussion.
  • Lots of exercises and practice.
  • Hands-on implementation in a live-lab environment.

Course Customization Options

  • To request a customized training for this course, please contact us to arrange.

Course Outline

Introduction

  • Overview of Node.js, Express, and MongoDB features and architecture
  • Fundamental concepts of REST APIs

Getting Started

  • Setting up Node.js and Express
  • Connecting to MongoDB
  • Using Postman

Building REST APIs

  • Designing APIs
  • Implementing routes
  • Filtering, sorting, and pagination
  • Error handling

Data Modeling with MongoDB

  • Designing a data model
  • CRUD operations
  • Using MongoDB with Mongoose
  • Aggregation pipelines

Testing APIs with Postman

  • Creating and saving a message
  • Retrieving messages from the database
  • Finding a single message
  • Updating and deleting messages
  • Debugging API endpoints

Troubleshooting

Summary and Next Steps

Automate WebServices Rest API (testing) using Java

Understand Rest API

Prepared testcases in Java for Rest api

Rest Assured Library to automate API

Requirements

  • Basic knowledge

Description

API testing is integration testing of API’s which checks the functionality , performance & security aspects of API’s.

As GUI test is difficult to maintain and requires a considerable amount of period, API has evolved as primary testing of application logic.

API to be tested are those which are developed by development team or third party API’s which we would consume in our project.

API testing involves:

  • Calling the API with different parameter values
  • API boundary value conditions
  • Actions performed by API i.e. updating database, calling other API
  • Validating Response

Popular API which are used are REST implement in JSON format, which we will be looking during the course. Rest has become  most popular because it is light and easy to maintain.

Rest-assured is library developed by Jaway which is best open source library specially designed to automated Rest API. It also supports XML and JSON Request/Responses.

No need of any tool when you need to automate API, simple coding skills will let you perfect automation of API, will be taught during the course.

Advantage

  • Request can be easily prepared and send over internet
  • Assertions in Response data
  • Clean code which is easy to be maintained

Who this course is for:

  • Manual/Automation testers
  • Developers
  • Managers, architects
  • Anyone in industry who want to get knowledge of Rest API or how to automate them

Course content

5 sections • 43 lectures • 5h 40m total lengthExpand all sections

Introduction1 lecture • 4min

  • Introduction04:26

Introduction to API’s4 lectures • 41min

  • What are Web Services09:12
  • Introduction to Soap Protocol13:47
  • What are Rest API’ – GET, POST, PUT & DELETE11:35
  • Real example of Rest Api06:50

Configuring Automation Project18 lectures • 3hr 23min

  • Configuring Maving Project for automation Suite09:48
  • Downloading prerequites to start automation10:00
  • Downloading prerequites to start automation12:08
  • First Test for GET Request11:05
  • First Test for GET Request14:43
  • Using Parameters and Authorization08:32
  • Using Parameters and Authorization10:47
  • How to Handle Get Requests07:48
  • What are json path and to calculate10:57
  • Calculating complex paths11:34
  • Extracting actual result from api’s10:02
  • Transfering api reponse to other api17:40
  • Installing & Configuring API server11:36
  • Automating the Post Request as a string body15:08
  • Request by post object14:35
  • Example with PUT API10:25
  • PATCH request for updating10:21
  • DELETE Request05:43

Developing Objects for complex POST requests4 lectures • 43min

  • Generating complex objects for POST request17:41
  • POST Request with arrays16:55
  • Scripts00:02
  • Calculate Response time of API07:54

Bonus Lecture – SQL Commands16 lectures • 49min

  • Create Table05:37
  • Insert into table05:47
  • Delete Table03:13
  • Add Column03:20
  • Delete Column01:18
  • Modifying datatype of Column03:10
  • Update record02:56
  • Delete record02:21
  • Select01:41
  • Select distinct02:02
  • Where04:56
  • Where OR03:20
  • Where AND03:10
  • Where Not01:17
  • Order by02:42
  • Top/RowNum02:10

A Python project with coding framework and unit testing

Python basics and real world coding framework – organizing code, logging, error handling, config file, unit testing

Requirements

  • Basic programming skills and SQL knowledge required

Description

Learn how to code and unit test Python applications in a real world project. Go beyond the basics by solving a practical use case step by step. This course is designed for Python beginners who want to transition for academic background to a real world developer role !

Course Project :

You will be building a Python application to read data from files and store the data into PostgreSQL database. You will be creating REST endpoints using which external users will interact with your application data. All the industry standard best practices in terms of logging, error handling, config file, code structuring will be used in the application.

Course structure :

  • Python (3.9) and PyCharm IDE installation
  • Python basics – Get started with basic Python data types including List, Tuple and Dictionary
  • Organizing code with Classes and Modules – Understand core concepts of classes and packages
  • Python logging – Implement logging using basic config and file config
  • Python error handling – Learn how to handle exceptions.
  • Python PostgreSQL database interaction – Understand how to read and write to PostgreSQL using psycopg2
  • Create REST API using Python – Learn to create APIs using Python Flask framework
  • Reading configuration from property file – Learn how to avoid hardcoding of configurable properties
  • Unit testing – Learn to test your application using unittest package
  • Unit testing – Learn to test your application using PyTest package

You will learn the above concepts by building a real world file processing application. No prior Python knowledge required.

Prerequisites :

  • Basic programming skills
  • Basic knowledge of SQL queries

Who this course is for:

  • Python beginners who are getting ready for real world developer role

Course content

8 sections • 31 lectures • 1h 55m total lengthExpand all sections

Introduction5 lectures • 7min

  • Introduction01:37
  • What is Python?01:02
  • Installing Python00:46
  • Installing PyCharm02:28
  • Creating a project in the main Python environment01:19

Python getting started3 lectures • 16min

  • Python basics09:27
  • Python dictionary04:42
  • Python List and Tuple02:20

Organizing code, logging and error handling6 lectures • 27min

  • Structuring code with classes and functions08:12
  • Initializing variables with a constructor04:37
  • Logging using basic config03:48
  • Logging using file config04:13
  • Having multiple loggers in an application03:47
  • Error handling with try and except blocks02:36

Reading configuration and database interaction5 lectures • 21min

  • Reading properties from a configuration file03:16
  • Installing PostgreSQL03:55
  • Reading from and writing to Postgres08:58
  • Organizing code further03:16
  • Handling the unique key constraint error01:50

Reading data from a JSON file and storing it in database2 lectures • 8min

  • Reading data from a JSON file02:34
  • Writing JSON file data to PostgreSQL05:39

Creating REST APIs4 lectures • 15min

  • What is REST?01:13
  • Understanding how REST will be used in the application01:01
  • Creating a REST API to fetch course list07:37
  • Creating a REST API to store course information05:24

Unit testing3 lectures • 14min

  • Python unittest package03:35
  • Data and error testing04:49
  • Unit testing with PyTest05:24

Where to go from here?3 lectures • 6min

  • Where to go from here?00:07
  • Preview – Data Engineering – Hadoop and Spark03:16
  • Preview – Machine Learning Deep Learning Model deployment introduction02:54