Skip to content
geeksforgeeks
  • Courses
    • DSA to Development
    • Get IBM Certification
    • Newly Launched!
      • Master Django Framework
      • Become AWS Certified
    • For Working Professionals
      • Interview 101: DSA & System Design
      • Data Science Training Program
      • JAVA Backend Development (Live)
      • DevOps Engineering (LIVE)
      • Data Structures & Algorithms in Python
    • For Students
      • Placement Preparation Course
      • Data Science (Live)
      • Data Structure & Algorithm-Self Paced (C++/JAVA)
      • Master Competitive Programming (Live)
      • Full Stack Development with React & Node JS (Live)
    • Full Stack Development
    • Data Science Program
    • All Courses
  • Tutorials
    • Data Structures & Algorithms
    • ML & Data Science
    • Interview Corner
    • Programming Languages
    • Web Development
    • CS Subjects
    • DevOps And Linux
    • School Learning
  • Practice
    • GfG 160: Daily DSA
    • Problem of the Day
    • Practice Coding Problems
    • GfG SDE Sheet
  • Software Engineering Tutorial
  • Software Development Life Cycle
  • Waterfall Model
  • Software Requirements
  • Software Measurement and Metrics
  • Software Design Process
  • System configuration management
  • Software Maintenance
  • Software Development Tutorial
  • Software Testing Tutorial
  • Product Management Tutorial
  • Project Management Tutorial
  • Agile Methodology
  • Selenium Basics
Open In App
Next Article:
Integration Testing - Software Engineering
Next article icon

Integration Testing - Software Engineering

Last Updated : 01 May, 2025
Comments
Improve
Suggest changes
Like Article
Like
Report

Integration Testing is the process of testing the interface between two software units or modules. It focuses on determining the correctness of the interface. The purpose of integration testing is to expose faults in the interaction between integrated units. Once all the modules have been unit-tested, integration testing is performed.

Table of Content

  • What is Integration Testing?
  • Why is Integration Testing Important?
  • How to Write Integration Tests?
  • Types of Integration Testing
  • 1. Big-Bang Integration Testing
  • 2. Bottom-Up Integration Testing
  • 3. Top-Down Integration Testing
  • 4. Mixed Integration Testing
  • Applications of Integration Testing
  • Difference between Manual Testing and Automated Testing
  • Unit Testing vs Integration Testing

What is Integration Testing?

Integration Testing is a Software Testing Technique that focuses on verifying the interactions and data exchange between different components or modules of a Software Application. The goal of Integration Testing is to identify any problems or bugs that arise when different components are combined and interact with each other.

  • Integration testing can be done by picking module by module. This can be done so that there is a proper sequence to be followed.
  • And also if you don't want to miss out on any integration scenarios, then you have to follow the proper sequence.
  • Exposing the defects is the major focus of the integration testing and the time of interaction between the integrated units.
Integration-Testing
Integration Testing

Integration testing is typically performed after Unit Testing and before system testing. It helps to identify and resolve integration issues early in the Development Cycle, reducing the risk of more severe and costly problems later on. Integration testing is one of the basic Type of Software Testing and there are many other basic and advance software testing. If you are interested in learning all the testing concept and other more advance concept in the field of the software testing you can check out the Complete Software Testing Course - Beginner to Advance.

Why is Integration Testing Important?

Integration testing is important because it verifies that individual software modules or components work together correctly as a whole system. This ensures that the integrated software functions as intended and helps identify any compatibility or communication issues between different parts of the system. By detecting and resolving integration problems early, integration testing contributes to the overall reliability, performance, and quality of the software product.

How to Write Integration Tests?

Designing integration test cases is a key part of ensuring that the different components of your software work well together. Here's a simplified approach to designing these tests:

  • Identify the components to be tested: Start by pinpointing which parts of your software need to be tested together. These are usually modules that interact or depend on each other.
  • Determine the test objectives: Define what you want to achieve with the test. Are you testing if data flows correctly between modules? Or perhaps checking if the system behaves as expected when components interact?
  • Define the test data: Decide what data you’ll use to test the integration. Make sure the data represents real-world scenarios so that your tests are relevant and meaningful.
  • Design the test cases: Plan out the specific steps for each test. Think about what actions the test will take and what results you expect.
  • Develop test scripts: Write the code that will automate your tests. If your tests are manual, ensure the steps are clearly documented and easy to follow.
  • Set up the testing environment: Make sure the environment where the tests will run mimics the real-world setup as closely as possible. This will give you more accurate results.
  • Execute the tests: Run your tests, paying close attention to how the components interact and whether they perform as expected.
  • Evaluate the results: Finally, review the test outcomes. Did the components work as intended? Were there any errors or unexpected behaviors?

Types of Integration Testing

There are four main strategies for executing integration testing: big-bang, top-down, bottom-up, and sandwich (or hybrid) testing. Each of these methods comes with its own set of advantages and challenges, so it's important to choose the right one based on the specific needs of your project. Those approaches are the following:

Integration-test-approaches
Integration Test Approaches

1. Big-Bang Integration Testing

It is the simplest integration testing approach, where all the modules are combined and the functionality is verified after the completion of individual module testing. In simple words, all the modules of the system are simply put together and tested. This approach is practicable only for very small systems. If an error is found during the integration testing, it is very difficult to localize the error as the error may potentially belong to any of the modules being integrated.

  • In debugging errors reported during Big Bang integration testing is very expensive to fix.
  • Big-bang integration testing is a software testing approach in which all components or modules of a software application are combined and tested at once.
  • This approach is typically used when the software components have a low degree of interdependence or when there are constraints in the development environment that prevent testing individual components.
  • The goal of big-bang integration testing is to verify the overall functionality of the system and to identify any integration problems that arise when the components are combined.
  • While big-bang integration testing can be useful in some situations, it can also be a high-risk approach, as the complexity of the system and the number of interactions between components can make it difficult to identify and diagnose problems.

Advantages of Big-Bang Integration Testing

  • It is convenient for small systems.
  • Simple and straightforward approach.
  • Can be completed quickly.
  • Does not require a lot of planning or coordination.
  • May be suitable for small systems or projects with a low degree of interdependence between components.

Disadvantages of Big-Bang Integration Testing

  • There will be quite a lot of delay because you would have to wait for all the modules to be integrated.
  • High-risk critical modules are not isolated and tested on priority since all modules are tested at once.
  • Not Good for long projects.
  • High risk of integration problems that are difficult to identify and diagnose.
  • This can result in long and complex debugging and troubleshooting efforts.
  • This can lead to system downtime and increased development costs.
  • May not provide enough visibility into the interactions and data exchange between components.
  • This can result in a lack of confidence in the system’s stability and reliability.
  • This can lead to decreased efficiency and productivity.
  • This may result in a lack of confidence in the development team.
  • This can lead to system failure and decreased user satisfaction.

2. Bottom-Up Integration Testing

In bottom-up testing, each module at lower levels are tested with higher modules until all modules are tested. The primary purpose of this integration testing is that each subsystem tests the interfaces among various modules making up the subsystem. This integration testing uses test drivers to drive and pass appropriate data to the lower-level modules.

Advantages of Bottom-Up Integration Testing

  • In bottom-up testing, no stubs are required.
  • A principal advantage of this integration testing is that several disjoint subsystems can be tested simultaneously.
  • It is easy to create the test conditions.
  • Best for applications that uses bottom up design approach.
  • It is Easy to observe the test results.

Disadvantages of Bottom-Up Integration Testing

  • Driver modules must be produced.
  • In this testing, the complexity that occurs when the system is made up of a large number of small subsystems.
  • As Far modules have been created, there is no working model can be represented.

3. Top-Down Integration Testing

Top-down integration testing technique is used in order to simulate the behaviour of the lower-level modules that are not yet integrated. In this integration testing, testing takes place from top to bottom. First, high-level modules are tested and then low-level modules and finally integrating the low-level modules to a high level to ensure the system is working as intended.

Advantages of Top-Down Integration Testing

  • Separately debugged module.
  • Few or no drivers needed.
  • It is more stable and accurate at the aggregate level.
  • Easier isolation of interface errors.
  • In this, design defects can be found in the early stages.

Disadvantages of Top-Down Integration Testing

  • Needs many Stubs.
  • Modules at lower level are tested inadequately.
  • It is difficult to observe the test output.
  • It is difficult to stub design.

4. Mixed Integration Testing

A mixed integration testing is also called sandwiched integration testing. A mixed integration testing follows a combination of top down and bottom-up testing approaches. In top-down approach, testing can start only after the top-level module have been coded and unit tested. In bottom-up approach, testing can start only after the bottom level modules are ready. This sandwich or mixed approach overcomes this shortcoming of the top-down and bottom-up approaches. It is also called the hybrid integration testing. also, stubs and drivers are used  in mixed integration testing.

Advantages of Mixed Integration Testing

  • Mixed approach is useful for very large projects having several sub projects.
  • This Sandwich approach overcomes this shortcoming of the top-down and bottom-up approaches.
  • Parallel test can be performed in top and bottom layer tests.

Disadvantages of Mixed Integration Testing

  • For mixed integration testing, it requires very high cost because one part has a Top-down approach while another part has a bottom-up approach.
  • This integration testing cannot be used for smaller systems with huge interdependence between different modules.

Applications of Integration Testing

Integration testing is all about making sure that different parts of a software application work well together. While unit testing checks individual components, integration testing focuses on how those components interact with each other. Here are the few application of Integration Testing:

  1. Identify the components: Identify the individual components of your application that need to be integrated. This could include the frontend, backend, database, and any third-party services.
  2. Create a test plan: Develop a test plan that outlines the scenarios and test cases that need to be executed to validate the integration points between the different components. This could include testing data flow, communication protocols, and error handling.
  3. Set up test environment: Set up a test environment that mirrors the production environment as closely as possible. This will help ensure that the results of your integration tests are accurate and reliable.
  4. Execute the tests: Execute the tests outlined in your test plan, starting with the most critical and complex scenarios. Be sure to log any defects or issues that you encounter during testing.
  5. Analyze the results: Analyze the results of your integration tests to identify any defects or issues that need to be addressed. This may involve working with developers to fix bugs or make changes to the application architecture.
  6. Repeat testing: Once defects have been fixed, repeat the integration testing process to ensure that the changes have been successful and that the application still works as expected.

Difference between Manual Testing and Automated Testing

Here is the Manual Testing vs Automated Testing difference in detailed manner:

Parameters Manual Testing Automation Testing
Definition In manual testing, the test cases are executed by the human tester. In automated testing, the test cases are executed by the software tools.
Processing Time Manual testing is time-consuming. Automation testing is faster than manual testing.
Resources requirement Manual testing takes up human resources. Automation testing takes up automation tools and trained employees.
Exploratory testing Exploratory testing is possible in manual testing. Exploratory testing is not possible in automation testing.
Framework requirement Manual testing doesn’t use frameworks. Automation testing uses frameworks like Data Drive, Keyword, etc.
Reliability Manual testing is not reliable due to the possibility of manual errors. Automated testing is more reliable due to the use of automated tools and scripts.
Investment In manual testing, investment is required for human resources. In automated testing, investment is required for tools and automated engineers.
Test results availability In manual testing, the test results are recorded in an excel sheet so they are not readily available. In automated testing, the test results are readily available to all the stakeholders in the dashboard of the automated tool.

Unit Testing vs Integration Testing

Here is the Difference between Unit Testing vs Integration Testing in detailed manner:

S. No. Unit Testing Integration Testing
1. In unit testing, each module of the software is tested separately. In integration testing, all modules of the software are tested combined.
2. In unit testing tester knows the internal design of the software. Integration testing doesn’t know the internal design of the software.
3. Unit testing is performed first of all testing processes. Integration testing is performed after unit testing and before system testing.
4. Unit testing is white box testing. Integration testing is black box testing.
5. Unit testing is performed by the developer. Integration testing is performed by the tester.

Conclusion

Integration testing is a critical Phase in Software Development that ensures all components work together seamlessly. Various approaches like Big-Bang, Bottom-Up, Top-Down, and Mixed Integration Testing help validate the integration points and interactions between modules. Each approach has its advantages and disadvantages, catering to different project needs. Proper integration testing helps identify defects early, ensuring the reliability, performance, and quality of the software product.


Next Article
Integration Testing - Software Engineering
author
sanjoy_62
Improve
Article Tags :
  • Software Engineering
  • Software Testing
  • Automation Testing
  • Manual Testing
  • Software Testing

Similar Reads

    Automation Testing - Software Testing
    Automated Testing means using special software for tasks that people usually do when checking and testing a software product. Nowadays, many software projects use automation testing from start to end, especially in agile and DevOps methods. This means the engineering team runs tests automatically wi
    15+ min read
    Automation Testing Roadmap: A Complete Guide to Automation Testing [2025]
    Test automation has become a vital aspect of the Software Development Life Cycle (SDLC), aimed at reducing the need for manual effort in routine and repetitive tasks. Although manual testing is crucial for ensuring the quality of a software product, test automation plays a significant role as well.
    9 min read
    How to Start Automation Testing from Scratch?
    Automation Testing is the practice of using automated tools and scripts to execute tests on software applications, reducing manual effort and increasing efficiency. Starting automation testing from scratch involves several key steps, including selecting the right automation tool, identifying test ca
    8 min read
    Benefits of Automation Testing
    Automation Testing is the process of using tools and scripts to automatically run tests on software, instead of performing them manually. It helps developers and testers save time, catch bugs early, and ensure that applications work as expected after every change. In this article, we’ll explore the
    4 min read
    Stages of Automation Testing Life Cycle
    In this article, we will explore the phases and methodologies involved in automation testing and the phases of the automation testing lifecycle. We'll cover everything from scoping your test automation to creating a solid test plan and strategy. You'll also learn about setting up the perfect test en
    12 min read
    Top Automation Testing Books For 2024
    In this article, we can explore the top 10 books for automation testing, providing a top-level view of each book's content material and why it's worth considering for everybody interested in this sector. Table of Content Top 10 Books for Automation Testing BooksConclusionFAQs on Top Automation Test
    12 min read
    Top Test Automation mistakes and Tips for QA teams to avoid them
    In the dynamic landscape of software testing, avoiding common test automation pitfalls is crucial for QA teams aiming for efficient and successful testing processes. This article delves into prevalent errors in test automation and provides valuable insights on how QA teams can steer clear of these m
    7 min read
    Essential Skills for a Successful Automation Tester
    In the domain of software testing, automation plays a crucial role in ensuring efficiency, accuracy, and speed. However, to be a successful automation tester, one must possess a specific set of skills beyond just technical proficiency. This article explores the essential skills required for automati
    6 min read
    Steps to Select the Right Test Automation tools
    Selecting the right test automation tools is critical for ensuring efficient and effective testing processes in software development projects. In this article, we will discuss the key steps involved in choosing the most suitable automation tools for your project needs. From understanding project req
    5 min read
    Best Test Automation Practices in 2024
    Test Automation continues to evolve with new technologies and methodologies emerging each year. In 2024, staying updated with the latest best practices is crucial for efficient and effective testing processes. From robust test design to continuous integration and deployment, this article explores th
    7 min read
geeksforgeeks-footer-logo
Corporate & Communications Address:
A-143, 7th Floor, Sovereign Corporate Tower, Sector- 136, Noida, Uttar Pradesh (201305)
Registered Address:
K 061, Tower K, Gulshan Vivante Apartment, Sector 137, Noida, Gautam Buddh Nagar, Uttar Pradesh, 201305
GFG App on Play Store GFG App on App Store
Advertise with us
  • Company
  • About Us
  • Legal
  • Privacy Policy
  • In Media
  • Contact Us
  • Advertise with us
  • GFG Corporate Solution
  • Placement Training Program
  • Languages
  • Python
  • Java
  • C++
  • PHP
  • GoLang
  • SQL
  • R Language
  • Android Tutorial
  • Tutorials Archive
  • DSA
  • Data Structures
  • Algorithms
  • DSA for Beginners
  • Basic DSA Problems
  • DSA Roadmap
  • Top 100 DSA Interview Problems
  • DSA Roadmap by Sandeep Jain
  • All Cheat Sheets
  • Data Science & ML
  • Data Science With Python
  • Data Science For Beginner
  • Machine Learning
  • ML Maths
  • Data Visualisation
  • Pandas
  • NumPy
  • NLP
  • Deep Learning
  • Web Technologies
  • HTML
  • CSS
  • JavaScript
  • TypeScript
  • ReactJS
  • NextJS
  • Bootstrap
  • Web Design
  • Python Tutorial
  • Python Programming Examples
  • Python Projects
  • Python Tkinter
  • Python Web Scraping
  • OpenCV Tutorial
  • Python Interview Question
  • Django
  • Computer Science
  • Operating Systems
  • Computer Network
  • Database Management System
  • Software Engineering
  • Digital Logic Design
  • Engineering Maths
  • Software Development
  • Software Testing
  • DevOps
  • Git
  • Linux
  • AWS
  • Docker
  • Kubernetes
  • Azure
  • GCP
  • DevOps Roadmap
  • System Design
  • High Level Design
  • Low Level Design
  • UML Diagrams
  • Interview Guide
  • Design Patterns
  • OOAD
  • System Design Bootcamp
  • Interview Questions
  • Inteview Preparation
  • Competitive Programming
  • Top DS or Algo for CP
  • Company-Wise Recruitment Process
  • Company-Wise Preparation
  • Aptitude Preparation
  • Puzzles
  • School Subjects
  • Mathematics
  • Physics
  • Chemistry
  • Biology
  • Social Science
  • English Grammar
  • Commerce
  • World GK
  • GeeksforGeeks Videos
  • DSA
  • Python
  • Java
  • C++
  • Web Development
  • Data Science
  • CS Subjects
@GeeksforGeeks, Sanchhaya Education Private Limited, All rights reserved
We use cookies to ensure you have the best browsing experience on our website. By using our site, you acknowledge that you have read and understood our Cookie Policy & Privacy Policy
Lightbox
Improvement
Suggest Changes
Help us improve. Share your suggestions to enhance the article. Contribute your expertise and make a difference in the GeeksforGeeks portal.
geeksforgeeks-suggest-icon
Create Improvement
Enhance the article with your expertise. Contribute to the GeeksforGeeks community and help create better learning resources for all.
geeksforgeeks-improvement-icon
Suggest Changes
min 4 words, max Words Limit:1000

Thank You!

Your suggestions are valuable to us.

'); // $('.spinner-loading-overlay').show(); let script = document.createElement('script'); script.src = 'https://assets.geeksforgeeks.org/v2/editor-prod/static/js/bundle.min.js'; script.defer = true document.head.appendChild(script); script.onload = function() { suggestionModalEditor() //to add editor in suggestion modal if(loginData && loginData.premiumConsent){ personalNoteEditor() //to load editor in personal note } } script.onerror = function() { if($('.editorError').length){ $('.editorError').remove(); } var messageDiv = $('
').text('Editor not loaded due to some issues'); $('#suggestion-section-textarea').append(messageDiv); $('.suggest-bottom-btn').hide(); $('.suggestion-section').hide(); editorLoaded = false; } }); //suggestion modal editor function suggestionModalEditor(){ // editor params const params = { data: undefined, plugins: ["BOLD", "ITALIC", "UNDERLINE", "PREBLOCK"], } // loading editor try { suggestEditorInstance = new GFGEditorWrapper("suggestion-section-textarea", params, { appNode: true }) suggestEditorInstance._createEditor("") $('.spinner-loading-overlay:eq(0)').remove(); editorLoaded = true; } catch (error) { $('.spinner-loading-overlay:eq(0)').remove(); editorLoaded = false; } } //personal note editor function personalNoteEditor(){ // editor params const params = { data: undefined, plugins: ["UNDO", "REDO", "BOLD", "ITALIC", "NUMBERED_LIST", "BULLET_LIST", "TEXTALIGNMENTDROPDOWN"], placeholderText: "Description to be......", } // loading editor try { let notesEditorInstance = new GFGEditorWrapper("pn-editor", params, { appNode: true }) notesEditorInstance._createEditor(loginData&&loginData.user_personal_note?loginData.user_personal_note:"") $('.spinner-loading-overlay:eq(0)').remove(); editorLoaded = true; } catch (error) { $('.spinner-loading-overlay:eq(0)').remove(); editorLoaded = false; } } var lockedCasesHtml = `You can suggest the changes for now and it will be under 'My Suggestions' Tab on Write.

You will be notified via email once the article is available for improvement. Thank you for your valuable feedback!`; var badgesRequiredHtml = `It seems that you do not meet the eligibility criteria to create improvements for this article, as only users who have earned specific badges are permitted to do so.

However, you can still create improvements through the Pick for Improvement section.`; jQuery('.improve-header-sec-child').on('click', function(){ jQuery('.improve-modal--overlay').hide(); $('.improve-modal--suggestion').hide(); jQuery('#suggestion-modal-alert').hide(); }); $('.suggest-change_wrapper, .locked-status--impove-modal .improve-bottom-btn').on('click',function(){ // when suggest changes option is clicked $('.ContentEditable__root').text(""); $('.suggest-bottom-btn').html("Suggest changes"); $('.thank-you-message').css("display","none"); $('.improve-modal--improvement').hide(); $('.improve-modal--suggestion').show(); $('#suggestion-section-textarea').show(); jQuery('#suggestion-modal-alert').hide(); if(suggestEditorInstance !== null){ suggestEditorInstance.setEditorValue(""); } $('.suggestion-section').css('display', 'block'); jQuery('.suggest-bottom-btn').css("display","block"); }); $('.create-improvement_wrapper').on('click',function(){ // when create improvement option clicked then improvement reason will be shown if(loginData && loginData.isLoggedIn) { $('body').append('
'); $('.spinner-loading-overlay').show(); jQuery.ajax({ url: writeApiUrl + 'create-improvement-post/?v=1', type: "POST", contentType: 'application/json; charset=utf-8', dataType: 'json', xhrFields: { withCredentials: true }, data: JSON.stringify({ gfg_id: post_id }), success:function(result) { $('.spinner-loading-overlay:eq(0)').remove(); $('.improve-modal--overlay').hide(); $('.unlocked-status--improve-modal-content').css("display","none"); $('.create-improvement-redirection-to-write').attr('href',writeUrl + 'improve-post/' + `${result.id}` + '/', '_blank'); $('.create-improvement-redirection-to-write')[0].click(); }, error:function(e) { showErrorMessage(e.responseJSON,e.status) }, }); } else { if(loginData && !loginData.isLoggedIn) { $('.improve-modal--overlay').hide(); if ($('.header-main__wrapper').find('.header-main__signup.login-modal-btn').length) { $('.header-main__wrapper').find('.header-main__signup.login-modal-btn').click(); } return; } } }); $('.left-arrow-icon_wrapper').on('click',function(){ if($('.improve-modal--suggestion').is(":visible")) $('.improve-modal--suggestion').hide(); else{ } $('.improve-modal--improvement').show(); }); const showErrorMessage = (result,statusCode) => { if(!result) return; $('.spinner-loading-overlay:eq(0)').remove(); if(statusCode == 403) { $('.improve-modal--improve-content.error-message').html(result.message); jQuery('.improve-modal--overlay').show(); jQuery('.improve-modal--improvement').show(); $('.locked-status--impove-modal').css("display","block"); $('.unlocked-status--improve-modal-content').css("display","none"); $('.improve-modal--improvement').attr("status","locked"); return; } } function suggestionCall() { var editorValue = suggestEditorInstance.getValue(); var suggest_val = $(".ContentEditable__root").find("[data-lexical-text='true']").map(function() { return $(this).text().trim(); }).get().join(' '); suggest_val = suggest_val.replace(/\s+/g, ' ').trim(); var array_String= suggest_val.split(" ") //array of words var gCaptchaToken = $("#g-recaptcha-response-suggestion-form").val(); var error_msg = false; if(suggest_val != "" && array_String.length >=4){ if(editorValue.length { jQuery('.ContentEditable__root').focus(); jQuery('#suggestion-modal-alert').hide(); }, 3000); } } document.querySelector('.suggest-bottom-btn').addEventListener('click', function(){ jQuery('body').append('
'); jQuery('.spinner-loading-overlay').show(); if(loginData && loginData.isLoggedIn) { suggestionCall(); return; } // script for grecaptcha loaded in loginmodal.html and call function to set the token setGoogleRecaptcha(); }); $('.improvement-bottom-btn.create-improvement-btn').click(function() { //create improvement button is clicked $('body').append('
'); $('.spinner-loading-overlay').show(); // send this option via create-improvement-post api jQuery.ajax({ url: writeApiUrl + 'create-improvement-post/?v=1', type: "POST", contentType: 'application/json; charset=utf-8', dataType: 'json', xhrFields: { withCredentials: true }, data: JSON.stringify({ gfg_id: post_id }), success:function(result) { $('.spinner-loading-overlay:eq(0)').remove(); $('.improve-modal--overlay').hide(); $('.create-improvement-redirection-to-write').attr('href',writeUrl + 'improve-post/' + `${result.id}` + '/', '_blank'); $('.create-improvement-redirection-to-write')[0].click(); }, error:function(e) { showErrorMessage(e.responseJSON,e.status); }, }); });
"For an ad-free experience and exclusive features, subscribe to our Premium Plan!"
Continue without supporting
`; $('body').append(adBlockerModal); $('body').addClass('body-for-ad-blocker'); const modal = document.getElementById("adBlockerModal"); modal.style.display = "block"; } function handleAdBlockerClick(type){ if(type == 'disabled'){ window.location.reload(); } else if(type == 'info'){ document.getElementById("ad-blocker-div").style.display = "none"; document.getElementById("ad-blocker-info-div").style.display = "flex"; handleAdBlockerIconClick(0); } } var lastSelected= null; //Mapping of name and video URL with the index. const adBlockerVideoMap = [ ['Ad Block Plus','https://media.geeksforgeeks.org/auth-dashboard-uploads/abp-blocker-min.mp4'], ['Ad Block','https://media.geeksforgeeks.org/auth-dashboard-uploads/Ad-block-min.mp4'], ['uBlock Origin','https://media.geeksforgeeks.org/auth-dashboard-uploads/ub-blocke-min.mp4'], ['uBlock','https://media.geeksforgeeks.org/auth-dashboard-uploads/U-blocker-min.mp4'], ] function handleAdBlockerIconClick(currSelected){ const videocontainer = document.getElementById('ad-blocker-info-div-gif'); const videosource = document.getElementById('ad-blocker-info-div-gif-src'); if(lastSelected != null){ document.getElementById("ad-blocker-info-div-icons-"+lastSelected).style.backgroundColor = "white"; document.getElementById("ad-blocker-info-div-icons-"+lastSelected).style.borderColor = "#D6D6D6"; } document.getElementById("ad-blocker-info-div-icons-"+currSelected).style.backgroundColor = "#D9D9D9"; document.getElementById("ad-blocker-info-div-icons-"+currSelected).style.borderColor = "#848484"; document.getElementById('ad-blocker-info-div-name-span').innerHTML = adBlockerVideoMap[currSelected][0] videocontainer.pause(); videosource.setAttribute('src', adBlockerVideoMap[currSelected][1]); videocontainer.load(); videocontainer.play(); lastSelected = currSelected; }

What kind of Experience do you want to share?

Interview Experiences
Admission Experiences
Career Journeys
Work Experiences
Campus Experiences
Competitive Exam Experiences