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
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
Duration
14 hours (usually 2 days including breaks)
Requirements
- Experience with web development
- Javascript programming experience
Audience
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
Understand Rest API
Prepared testcases in Java for Rest api
Rest Assured Library to automate API
Requirements
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
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
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