Where we learn technology

Tag: Jenkins

API/WebServices – BackEnd Manual & Automation Testing – Regular Batch – 11th July 2024 – 8 PM IST / 10:30 AM EST / 7:30 AM PST)

WebServices – Back End API Manual & Automation Training Course Content

Starting Date: July 11th, 2024

API Testing Training/Boot Camp:

The API testing batch/boot camp training for API/WebServices – Back End Manual & Automation Testing is a crucial training for individuals who want to enhance their skills in API testing. This training will cover essential topics related to API testing such as HTTP methods, RESTful APIs, JSON/XML, authentication, authorization, error handling, and much more. Candidates will learn both manual and automated testing methods for APIs.

Who can attend this training?

This training is perfect for software testers, quality assurance engineers, developers, and anyone interested in gaining knowledge and skills in API testing. Candidates will learn how to test APIs effectively, identify defects, and ensure that APIs are functioning as expected.

Additionally, this training will help individuals gain a competitive advantage in their careers by acquiring new skills and knowledge.

Why should I join this?

By attending this training, individuals will be better prepared for API testing interviews as they will have a solid understanding of API testing concepts, methods, and tools. They will be able to apply their knowledge to real-world scenarios and will have hands-on experience with various testing tools used in the industry. Overall, this API testing batch/boot camp training is an excellent investment for individuals looking to enhance their career opportunities and take their skills to the next level.

Next Batch Starting from: 11th July, 2024

Duration: 9-10 Weeks

Location: Online (zoom meeting) 

Duration: 3 days in a week (1.5 hrs) – Mon – Wed – Thursday

Timings

    • 8:00 PM IST (Indian Time)

    • 10:30 AM EST (USA Eastern Time)

    • 7:30 AM PST (USA Pacific Time)

    • 9:30 AM CST (USA Central Time)

    • 3:30 PM UK TIME

Registration Fee: For Candidates in India : 3000 INR

For Candidates in USA/UK/NZ/AUS/Europe : 55 USD

Remaining Course Fee

    • 12000 INR (For Candidates in India)

    • 200 USD (For Candidates in US/UK/NZ/AUS/Europe)

Note:

    • There will be 2 demo sessions. If you don’t want to proceed with the training, full Registration amount will be refunded back to you.

    • After 2 demo sessions, remaining amount (12000 INR/200 USD) must be paid accordingly.

    • For any query, whats app at: +91-9902233400.

 
Here I’m sharing the payment details. Please send me the screenshot of receipt once you make the payment without fail. 
You need to mail me at : naveenanimation20@gmail.com

 Payment Options:

CANDIDATES IN INDIA:
1. Pay by Credit/Debit Card:
If you want to use credit card/debit card, please use this secured stripe payment link:

REGISTRATION FEE (3000 INR):
https://buy.stripe.com/28obL2bjD6Ww5RC4hC

REMAINING FEE(12000 INR):
https://buy.stripe.com/4gwcP60EZ4Oocg015j

Or you can pay total fee (15000 INR):  
https://buy.stripe.com/00g16o3Rb3Kk93O9BR
2. BANK TRANSFER:

Bank Details:
Full Name: NAVEEN KHUNTETA

Payee name: NAVEEN KHUNTETA

Name of the Bank: ICICI bank

Address of the Bank: Bhandarkar Road, Pune

Bank Account Number: 624001553272

IFSC Code(11 Digit Code): ICIC0006240

3. Pay by GPay/PhonePe/Paytm/UPI:

ph: 9902233400 / 9828866542
======================================
CANDIDATES IN USA/CANADA/UK/EUROPE/AUS/OTHERS:
1. If you want to use credit card/debit card, please use this secured stripe payment link:
REGISTRATION Fee (55 USD):
https://buy.stripe.com/5kA5mEgDX4Oodk44hD
Remaining Fee(200 USD): 
https://buy.stripe.com/fZe5mEfzTeoY6VGdSe
You can pay full amount (255 USD):
https://buy.stripe.com/3cscP63Rb0y84Ny15t
2. Bank Transfer:

Please find below bank details. You can make the transaction directly to the given account or make it via Western Union (only via bank transfer) / Xoom/ Remitly or any other remittance.


Bank Details:

Name: Naveen Khunteta

Bank Account Number:  1015794367401

IBAN Number:  AE520260001015794367401

City/Country: Dubai, UAE

Swift Code: EBILAEAD

Address: Naveen automation labs FZCO, Scaltiy, building 9W, DAFZA, Dubai, UAE - 000001
3.  Paypal:
Total payment: 265 USD
Use this PayPal id: https://paypal.me/naveenautomation
Check out with PayPal
Note: If you are paying through PayPal, You need to pay 265 USD (10 USD will be the PayPal Fee).
 
 

Syllabus Course Content:

Course Content:

 Testing of WebServices/API:

  1. Introduction of API and WebServices:
    1. What is API
    2. What is WebService
    3. What is Backend Architecture
    4. Rest vs SOAP APIs
    5. What is CRUD operation with different examples
    6. What are different HTTP Calls – GET/POST/PUT/Delete/PATCH/HEAD/OPTIONS
    7. Different Live Projects Examples
  2. Postman:
    1. Introduction
    2. How to call Rest API in Postman
    3. How to pass path parameter in Request
    4. How to pass query parameter in Request
    5. How to set Headers in Postman
    6. How to pass JSON/XML Payload
    7. How to check response status code
    8. How to check JSON/XML response messages
    9. What is response header
    10. Cookies manipulation
    11. Header Presets
    12. API History in Postman
    13. Postman Environment Variables
    14. Postman Test Scripts using Javascript and  Chai Assertions
    15. Run Automated Test Cases in Postman and generate the results
  3. Advance Postman/Newman:
    1. Introduction of Newman
    2. Newman installation/setup
    3. How to run collections from Newman
    4. Newman command line options
    5. Generate HTML Test Report
    6. Create a collection and folders
    7. Create a collection from API Specification or API Schema
    8. maintenance of API collections
    9. Postman Console and logs
    10. Test Script in postman
    11. Pre Request Script in postman
    12. Test Code snippet in postman
    13. Monitoring of APIs
    14. API Documentation
    15. API Documentation/CODES in different programming languages
    16. Publish Documentation
    17. Setup Environment – Local and Global
    18. Collection Runner
    19. Collection Test Summary
    20. Creating a Mock Server for APIs
    21. How to create a team workspace
    22. How to create individual workspace
    23. Import in Postman
    24. Basic and Advanced Settings in Rest Client
    25. Running postman collection with Docker
    26. Running postman collection with Jenkins
  4. How to check APIs at the network layer using developer tools of browser:
    1. How to check Backend services – APIs running behind
    2. What is developer tool in Chrome
    3. How to check request/response of any API in Firefox/Chrome browsers
  5. What are different HTTP Status Response Codes:
    1. 1xx series
    2. 2xx series
    3. 3xx series
    4. 4xx series
    5. 5xx series

Automation Testing of Back End/APIs:

  1. Learn various HTTP Client libraries :
    1. Tools/Library: JDK 11 – HTTP Client
    2. All CRUD – GET/POST/PUT/Delete Calls
    3. How to send Request with Payloads
    4. How to send Query Parameters and Path Parameters
  1. Learn Rest Assured DSL Java Client API:
    1. Introduction of Rest Assured
    2. Rest Assured methods: GET/POST/PUT/Delete/Patch
    3. Handle different payloads using POJO and JSON/XMLs:
    4. Request with Simple JSON format
    5. Request with Complex JSON format
    6. Handle Authentication using Basic Auth, Preemptive Auth, Digest Auth, Bearer Token, Authorization Token, Client ID, Client Secret, API Key, API Secret, OAuth1 and OAuth2
    1. All core features of Rest Assured Library:
      1. GET/POST/PUT/DELETE – Inbuilt BDD Approaches
        1. What is GIVEN/WHEN/THEN/AND methods
        2. What is LOG and ALL methods
        3. How to ASSERT in Rest Assured
        4. How to verify Status Code, Response Body and Headers
        5. How to use QUERY PARAMETERS and PATH PARAMETERS
        6. What is ResponseBuilderSpec and RequestSpecification Concept
        7. What is JSON PATH/XML Path
        8. What is EXTRACT method
        9. How to send a POST CALL with JSON String, JSON File and using Java (POJO) Class.
        10. What is Serialization and De-Serialization
        11. How to use HAMCREST – Assertion Library
      2. GET/POST/PUT/DELETE – NON-BDD Approaches
    2. New End to End Framework using Rest Assured using different real time APIs:
      1. How to setup a Maven Project for APIs
      2. Folder Structure
      3. API Test Automation Design and components
      4. Rest Client Libraries
      5. Write API Automated Tests with TestNG
      6. Data Providers with Parameterization
      7. Data Driven Testing with Excel Files – using Apache POI API
      8. Test Runners with testng.xml
      9. Various Constants Files for Errors, Status Codes, Validation, and Success Messages
      10. Create a GIT Repo for Test Automation project:
        • Create a New Repo
        • Clone a Repo
        • GIT PUSH
        • GIT PULL
        • GIT Check OUT
      11. Integration with Jenkins – CI CD Pipeline and Automation Job
      12. Create the docker Image of API Test Automation
      13. Host/Register docker image to Docker HUB
      14. Download the docker image and Run it on any machines
      15. Advanced Reporting : Extent Report/TestNG Report/Allure Report
      16.  Maven: Build Automation Tool: Run your API Automation Framework from Maven
      17. TestNG Framework for API test cases

8. Mocking APIs using Wiremock library:

  1. Define the dummy APIs
  2. Define API Mock Behaviour for GET/POST Calls
  3. Call Mocking APIs 
  4. Integrate it in your Test Automation

9. Real Time API Examples:

  1. GORest APIs with Authentication
  2. ReqRes.in
  3. Booker APIs
  4. Weather APIs
  5. IMDB APIs
  6. Weather/Forecast Real Time APIs
  7. OAuth APIs
  8. GIT HUB APIs
  9. Twitter APIs
  10. API with Swagger

10 . Life Time Free Access on all the Videos/Recordings/Codes/Notes/PDFs/Cheat Sheets.

 
Cheers!
Naveen AutomationLabs
 

Configuring Email Notification in Jenkins

In this blog, let’s learn setting up Email Notification in Jenkins.

In real time, we build jobs periodically for Jobs that we create in Jenkins. As and when job is completed, if we want to be notified to know about job execution status [Success or Failure or Unstable] then it is a good feature to be added into Jenkins Job Configuration.

To achieve Email Notification in Jenkins, now let’s see how can we do it.

We need to install below plugins:

1. Email Extension Plugin.                                                           

2. Email Extension Template Plugin.

Go to Jenkins Dashboard.                                                         

1. Click on Manage Jenkins.                                                     

2. Click on Manage Plugins. 

In Manage Plugins, go to Available section and search by “Email” and install suggested email plugins related to Email Notification that are Email Extension Plugin and Email Extension Template Plugin.

In my case, as Email Extension and Email Extension Template Plugins are already installed, both plugins are appearing in installed section.

Once plugins are installed, then we are good to configure job for Email Notifications in Jenkins.

Let’s now see configuring job for Email Notifications in Jenkins after plugins are installed.

Go to Manage Jenkins.

Click on Configure System.

Scroll down to E-mail Notification in Configure System Section.

 

Follow above simple steps to do Email Notification Configuration.

Here I’m using Gmail for achieving Email Notification in Jenkins.   

1. SMTP server – For gmail, it is mandatory to provide as smtp.gmail.com.                                                                     

2. Use SMTP Authentication should be checked – Only then we should be able to see User Name and Password sections.             

3. Provide your Gmail Credentials in User Name and Password Fields. 

4. Use SSL should be checked.

5. Give SMTP Port Number as 465. [If 465 doesn’t work for you, try with 587]

Once setup is done for Email Notification.

Let’s do Test Configuration by Sending Test Email.

Once Test configuration by sending test e-mail is Checked, you should be able to see Test e-mail recipient option as shown below.

Now enter Gmail ID to which you want to send out a Test Mail and click on Test Configuration. 

If everything configured as expected then a Test Mail to should be triggered into given Gmail ID and followed message should be displayed “Email was successfully sent” as shown below.

Test E-Mail Recipient could be any Gmail ID – Now you can Check for Test Mail in Given Mail Account.

If in case, Test Configuration is Failed.                                        Go to your Gmail Account for which Email Notification was configured.             

Click on Security.                                                                   

Now Go to Less secure app access and Allow Turn on Access to Less secure app access. [By default it should be selected to Off]

Now Go to Manage Jenkins.                                                    

Click on Configure System.                                                  

Scroll down to Extended E-mail Notification in Configure System Section.     

Enter all Required Fields as shown in below Screenshots.

Note:

In Extended E-mail Notification section, you just need to provide SMTP server details as smtp.gmail.com.   

Do not change anything from Default Subject and Default Content Fields that are suggested by Jenkins. 

Now Click on Apply and Save.

Wow, now we are all set to use Email Notification Feature in Jobs.

Now go to Jenkins Job. 

Click on Configure. 

 Go to Build Settings section and provide Email IDs as shown below to which Email Notifications has to be sent.

Note:

Here Email Notifications will be sent only and only for Unstable and Failed Builds.

Surprise:   

 If you want to achieve Email Notification through Jenkins Pipeline. Follow below simple steps.       

 1. Configurations for E-mail Notification and Extended E-mail Notification should be done in Configure System section. 

2. Add below code inside Jenkins Pipeline Step.

stage('Gmail')
{
	steps
	{
		emailext body: "*${currentBuild.currentResult}:* Job Name: 
                ${env.JOB_NAME} || Build Number: ${env.BUILD_NUMBER}\n More 
                information at: ${env.BUILD_URL}",
		subject: 'Declarative Pipeline Build Status',
		to: 'Pavankrishnan1993@gmail.com'
	}
}

Above code will send a Mail with followed information as below:

1. emailext body:     

A. Current Build Status [Success or Failure or Unstable]. 

B. Job Name as specified in Jenkins Job.

C. Build Number that is executed in Jenkins.   

2. Subject: In this section, you can provide Subject name as per your Requirement.       

3. to: In this section, you can provide Mail IDs to which Email Notification should be sent.

Note: 

The above code can be used in different steps for Job Success, Failure or Unstable..!!

Conclusion: In this blog, we have seen how can we configure Email Notification in Jenkins for Jobs with simple steps for Builds and Pipeline.

Cheers!

Naveen AutomationLabs

Steps to Configure Maven Project with Jenkins

Jenkins is an Open Source Continuous integration tool that is written in Java which is often used in Devops.

It is mainly used by Developers and Testers, whenever Developers/Testers does any changes in Source Code then Jenkins will automatically pull the code and continuously build and test code that has been added.           

Step 1: Installing Jenkins War File.

Follow below steps to install Jenkins War File. 

Go to any browser and search by Jenkins Download as shown below and click on  below highlighted link.

After clicking on above highlighted link, you will be navigated to below page.      

Click on “Permalink to the latest” – Latest and Stable version of Jenkins War File will be installed into your local system.

Now you are good to execute your Jenkins War File from Command Prompt.

Step 2: Executing Jenkins War File from Command Prompt.

Create a separate folder in your local system and place Jenkins War file once it is downloaded. Note: We must run Jenkins.war file through Command Line Prompt.

Step 3: Use below command to Run Jenkins.war file

Note:  By default, Jenkins will always run in localhost:8080. Make sure nothing else is running on port 8080. If localhost:8080 is already occupied then you won’t be able to execute Jenkins.war file.                    In such case you can execute your Jenkins.war file in other port using below command.

Once Jenkins is successfully launched, user should be able to see below message in
Command Prompt.

“Jenkins is Fully Up and Running”.

Step 4: Now, go to browser and open localhost:8084 where you have run your Jenkins.               
In my case, I have run Jenkins in port 8084.                                                                            

When launching it for first time, you have to set username and password and install default plug-ins that suggests etc and then you will be landed on to Jenkins Dashboard Page. 

Step 5: Configure your system for Java and Maven in Jenkins as shown below                

Go to Manage Jenkins >> Global Tool Configuration.

Step 6: Install Required Plug-ins >> Go to Manage Jenkins >> Manage Plug-ins and install from Available Section.

Step 7: Create Job >> New Item >> Enter Item Name >> Select Maven Project and Click on OK. After installing all Maven Plug-ins user should be able to see Maven Project Option.

Step 8:                                                                                                                                           A. Go to General >> Enter Description of your Project.

B. Go to Maven Info Plug-in Configuration >> Select None.

C. Go to Source Code Management. [You have to select any one option from it].       

Select None, if you are not using any Source Code Management tool for maintaining Code.

Select Git and provide Repository URL and Branch Name, if you are maintaining code in Git.

D. Go to Build Triggers.                                                                                                      

You can select as shown below, if you are not scheduling jobs using CRON Command and such. [In this case you have to build a job manually].

If you have to schedule jobs automatically, select Build Periodically and use CRON Command. 

If we have to build a job automatically when in any commit happens to Git then we
can select Poll SCM and use CRON Command.                                                                 

[As soon as code commit happens to Git, it will trigger a build].

E. From Build Environment, Select None

F. From Pre Steps, Select None.

G. From Build, Enter Path for your Root POM.xml and command to be executed as shown below.                                                                                                                  
Note: When in giving Maven Command to Run Test Cases in Jenkins, ignore mvn and just give commands as below.                                                                                
clean install Or test Or test -PSmoke etc.

H. From Post Steps, you can select any option as per your requirement.

I. If you want to be notified, when in any job is getting failed then you can select Build Settings and configure it.

Note: To do this we need to do other extra configuration [You can ignore for it now].

J. Post Build Actions can be used to Generate Results. [To achieve it, we need to install required plug-ins like TestNG Plug-in, HTML Report Plug-in for Generating Extent Report]

Below Configurations needs to be done for generating Extent Reports in Project Folder.

Step 9: Apply and Save, now click on Build now to trigger your Job.

Conclusion: In this blog, we have seen how to create a Job for Maven Project, Configuring Job and Executing a Job in Jenkins.


Cheers!!

Naveen AutomationLabs

Blog Contributors:

Author:  Pavan K

Pavan, having good knowledge in Selenium Web UI and API Automation frameworks. Also, he is helping QA community with his knowledge along with Naveen AutomationLabs!!

LinkedIn

Reviewer: Naveen Khunteta 

https://www.linkedin.com/in/naveenkhunteta