EDUCBA

EDUCBA

MENUMENU
  • Free Tutorials
  • Free Courses
  • Certification Courses
  • 600+ Courses All in One Bundle
  • Login

Spike Testing

By Princy VictorPrincy Victor

Home » Software Development » Software Development Tutorials » Software Testing Tutorial » Spike Testing

Spike Testing

Introduction on Spike Testing

Testing is a vital part of the Software Development Life Cycle (SDLC) that checks various software components such as scalability, speed, and stability. Some of the testing techniques are stress testing, load testing, volume testing, endurance testing, compatibility testing, spike testing, and so on. These testing methods ensure that the developed software works fine under the expected workload and several other scenarios. Hence, the software testers are able to offer the product owners necessary information regarding scalability, accuracy, speed, and stability.

What is Spike Testing?

Spike Testing is performance testing, which is also a subset of stress testing that ensures whether the software or application developed is working under rapidly increasing and decreasing load generated by users. It is to make sure that no issue won’t arise in the speed of software, stability, and scalability after the product’s delivery.

Start Your Free Software Development Course

Web development, programming languages, Software testing & others

What is Spike Testing

The main objectives of this Software Testing are:

  • Estimates the applications’ weaknesses.
  • The behavior of the system can be analysed.
  • The stability of the system is analysed when there is a burst of load
  • System’s failure under huge load can be observed.
  • Identify the recovery time between the spike [Spike is the rapid decrease and increase in traffic] of increasing and decreasing the load.

While performing a spike test, the performance of the application may get worsen, slows or stops entirely. At that time, testers may find it and determine the point where the application or software fails. This can help in rectifying the mistakes of the developer while developing for the production environment.

How to do Spike Testing?

Steps to perform spike testing are:

How to do Spike Testing

The process to do spike testing is explained in the below section.

1. Set up the environment

Make sure that a live environment is not used and a separate testing environment is used to perform spike testing in an application. Set up the testing environment based on the several parameters in the business requirement.

2. Identify Maximum Load

Identify the maximum load capacity of the software or application you have developed.

Popular Course in this category
Sale
Software Testing Training (9 Courses, 2 Projects)9 Online Courses | 2 Hands-on Projects | 60+ Hours | Verifiable Certificate of Completion | Lifetime Access
4.5 (8,560 ratings)
Course Price

View Course

Related Courses
Penetration Testing Training Program (2 Courses)TestNG Training (4 Courses, 2 Project)

3. Apply peak load

Use any tools or softwares to apply the maximum expected load. Increase the load rapidly for a certain period of time.

4. Analyse the peak performance

Analyse the performance of the application in the maximum load.

5. Apply minimum load

Reduce the load gradually to the minimum level.

6. Analyse the performance in minimum load

Analyse the performance of the application in the minimum load.

7. Performance graph analysis

Performance graph analysis is done by considering the metrics such as Time taken, virtual users, failures etc. This will help the testers in identifying where the application has undergone failure and reporting the developers to fix the issue based on that.

Now, let us see some of the advantages and disadvantages of Spike Testing.

Advantages

Below are some of the advantages.

  1. Since performance is analysed even in extremely high load and extremely low load, issues won’t arise in the real environment. In these scenarios, it is helpful.
  2. Consequences of unexpected changes in load are addressed.
  3. Maintains the system from crashing under spikes of the load.
  4. Normally, worst-case scenarios won’t be addressed in the standard testing method. But through spike testing, all these issues are addressed.
  5. Identify how much an application or software can perform past its expected load.
  6. Developers are able to avoid application crash since the problems are identified.

Disadvantages

Following are the disadvantages given.

  1. Expensive since it needs special test conditions.
  2. Independent testing environment is needed.
  3. The time needed is more compared to other testing methods.

Tools Used

All the performance testing tools can be used for Spike Testing. But some tools are commonly used apart from others. They are:

  • Apache JMeter

Apache JMeter is an open-source tool that is 100% java application designed to functional test the performance and behaviour. Caching, full multi-threading, highly extensible core, portability, offline analysis are the main features of Apache JMeter.

  • Loadrunner

LoadRunner is an expensive software testing tool from Micro Focus which is used to perform under load, measure behaviour of the system, test applications. It can simulate a large number of users at the same time using application software. It records the same and later analyses the application’s key component performance.

As of now, we had discussed what is Spike Testing, its process along with advantages and disadvantages. Now, let us see some recovery scenarios we can use in Spike Testing.

  • Try to use cloud platforms such as Microsoft Azure, Amazon Web Services (AWS), etc. to rapidly increase the capacity of the server in synchronization with the user load.
  • Do not give permission to access the software or application for some users. In this way, people above the peak load cannot enter the application. This can protect the system from excess load threat.
  • Try to provide a warning message to the user who enters the system. Then he or she will be able to perform based on that.

Some of the Spike Testing scenarios are addressed below.

  • When an online store is launching special offers with huge discount on special days.
  • Web Application is Live streaming a popular.
  • Exam result published on a website.
  • When a particular website goes viral for its content.
  • Multiple users access the system when it is newly released.
  • Login the system after a power outage issue is resolved.
  • Service outage of a system

Conclusion

It is a performance testing where an increase and decrease in spike is applied to an application or software developed. It helps in identifying the maximum load and common issues that can arise when an increase in load is applied. Process, advantages and common bugs regarding this testing is explained in the above sections.

Recommended Articles

This is a guide to Spike Testing. Here we discuss basic concept, step by step process along with the advantages and disadvantages. You may also have a look at the following articles to learn more –

  1. Stability Testing
  2. What is Functional Testing?
  3. Load Testing vs Stress Testing
  4. Selenium Load Testing

Software Testing Training (9 Courses, 2 Projects)

9 Online Courses

2 Hands-on Projects

60+ Hours

Verifiable Certificate of Completion

Lifetime Access

Learn More

2 Shares
Share
Tweet
Share
Primary Sidebar
Software Testing Tutorial
  • Types of Testing
    • Adhoc Testing
    • Types of System Testing
    • Manual Testing Types
    • Unit Testing Types
    • Unit Testing Benefits
    • Agile Testing
    • What is Agile Testing
    • Acceptance Testing
    • Stress Testing Types
    • Alpha and Beta Testing
    • Application Testing
    • Automation Testing
    • Automation Testing Advantages
    • Benchmark Testing
    • Black Box Testing
    • Domain Testing
    • Dynamic Testing
    • Ecommerce Testing
    • Fuzz Testing
    • Gray Box Testing
    • GUI Testing
    • Installation Testing
    • Interface Testing
    • Interoperability Testing
    • Mainframe Testing
    • Manual Testing
    • Mutation Testing
    • Monkey Testing
    • Negative Testing
    • Penetration Testing
    • Penetration testing phases
    • Penetration testing framework
    • Protocol Testing
    • Recovery Testing
    • Regression Testing
    • Mobile Penetration Testing
    • Accessibility Testing
    • Sanity Testing
    • Scalability Testing
    • Security Testing
    • Spike Testing
    • Stability Testing
    • State Transition Testing
    • Static Testing
    • Gatling Load Testing
    • System Integration Testing
    • Structural Testing
    • Locust Load Testing
    • System Testing
    • Control Flow Testing
    • Unit Testing
    • Cypress testing
    • Volume Testing
    • Web Testing Application
    • What is Exploratory Testing
    • What is Stress Testing
    • What is Usability Testing
    • White Box Testing
    • Types of White Box Testing
    • Compatibility Testing?
    • Use Case Testing
    • Beta Testing
    • Integration Testing
    • Non Functional Testing
    • Non Functional Testing Types
    • What is Functional Testing
    • Functional testing types
    • Cookie Testing
    • Alpha Testing
    • Boundary Value Testing
    • Equivalence Class Testing
    • Glass Box Testing
    • SOA Testing
    • Smoke Testing
    • Visual Testing
    • Visual Paradigm
    • Model-Based Testing
  • Basics
    • What is Software Testing
    • Careers in Software Testing
    • Defect Life Cycle in Software Testing
    • Bug Life Cycle
    • Levels of Software Testing
    • Software Testing Life Cycle
    • Software Tester Work
    • Software Testing Principles
    • Software Testing Services
    • Testing Methodologies
    • Test Approaches
    • Grey Box Testing
    • Types of Software Testing
    • What is a Bug in Software Testing
    • Benefits of Automation Testing
    • What is Automation Testing?
    • Types of Automation
    • Automation Testing Process
    • Mobile Automation Testing
    • Automation Testing Life Cycle
    • Software Quality Assurance
    • Software Quality Assurance
    • What is Test Environment?
    • Verification and Validation Testing
  • Testing techniques
    • Software Testing Methodologies
    • Black Box Testing Techniques
    • Static Testing Techniques
    • Test Case Design Techniques
    • What is Static Analysis
  • Testing tools
    • Manual Testing Tools
    • Visual Testing Tools
    • Automation Testing Tools
    • Functional Testing Tools
    • GUI Testing Tools
    • Penetration Testing Tools
    • Performance Testing Tools
    • SOA Testing Tools
    • Accessibility Testing Tools
    • What is QTP
    • Regression Testing Tools
    • Security Testing Tools
    • Test Management Tools
    • Defect Management Tools
    • Code Coverage Tools
    • Test Coverage Tools
    • Defect Tracking Tools
    • Continuous Integration Tools
    • Install Bugzilla
    • Test data generation tool
    • Unit Testing Tools
    • Web Testing Tools
    • Stress Testing Tools
    • Performance Monitoring Tools
    • Mobile Testing Tools
    • Responsive Testing Tool
    • Cross Browser Testing Tools
    • Risk Based Testing
    • Database Testing Tools
    • WinRunner
    • What is Squish?
    • CubicTest
    • What is WinRM?
    • Bugzilla Tool
    • Code review tools
    • Penetration Testing Open Source Tools
  • Advance
    • Cyclomatic Complexity
    • Decision Table Testing
    • Decision Tree Algorithm
    • What is Continuous Integration
    • Mantis Bug Tracker
    • Equivalence Partitioning
    • Gantt Chart Software
    • Acceptance Testing Types
    • Load testing tools
    • Install TestNG
    • Install Unity
    • Defect Management Process
    • Test Plan Template
    • Testing Interview Questions
    • Testing of Mobile application
    • What is Test Automation Frameworks
    • Test Automation Framework
    • Application of Automation
    • Test Automation Process
    • Automation Testing Roles and Responsibilities
    • What is Instruction Cycle?
    • What is Cucumber?
    • 15 Best Popular Bug Reporting Tools
    • What is Automated Testing?
    • Software Maintenance Types
    • Types of Penetration Testing
    • Software Reliability
    • Best Gantt Chart Software
    • Code Coverage
    • Branch Coverage
    • Decision Coverage
    • Statement Coverage
    • What is Test Case
    • Types of Test Case
    • What is Test Scenario
    • Formal Review
    • Alpha Beta Pruning
    • What is Cyclomatic Complexity?
    • Test Coverage
    • How to Write Test Case
    • Testing Documentation
    • Performance Testing Life Cycle
    • Test Harness
    • Test Strategy
    • Software Incident Management
    • What is Debugging
    • What is Defect?
    • Listeners in TestNG
  • Inteview Questions
    • Automation Testing Interview Questions
    • Manual Testing Interview Questions
    • ISTQB Interview Questions
    • Cucumber Interview Questions
    • Software Testing Interview Questions
    • Penetration Testing Interview Questions

Related Courses

Software Testing Course

Penetration Training Course

TestNG Training Course

Footer
About Us
  • Blog
  • Who is EDUCBA?
  • Sign Up
  • Live Classes
  • Corporate Training
  • Certificate from Top Institutions
  • Contact Us
  • Verifiable Certificate
  • Reviews
  • Terms and Conditions
  • Privacy Policy
  •  
Apps
  • iPhone & iPad
  • Android
Resources
  • Free Courses
  • Java Tutorials
  • Python Tutorials
  • All Tutorials
Certification Courses
  • All Courses
  • Software Development Course - All in One Bundle
  • Become a Python Developer
  • Java Course
  • Become a Selenium Automation Tester
  • Become an IoT Developer
  • ASP.NET Course
  • VB.NET Course
  • PHP Course

© 2022 - EDUCBA. ALL RIGHTS RESERVED. THE CERTIFICATION NAMES ARE THE TRADEMARKS OF THEIR RESPECTIVE OWNERS.

EDUCBA
Free Software Development Course

Web development, programming languages, Software testing & others

*Please provide your correct email id. Login details for this Free course will be emailed to you

By signing up, you agree to our Terms of Use and Privacy Policy.

EDUCBA
Free Software Development Course

Web development, programming languages, Software testing & others

*Please provide your correct email id. Login details for this Free course will be emailed to you

By signing up, you agree to our Terms of Use and Privacy Policy.

EDUCBA Login

Forgot Password?

By signing up, you agree to our Terms of Use and Privacy Policy.

Let’s Get Started

By signing up, you agree to our Terms of Use and Privacy Policy.

EDUCBA

*Please provide your correct email id. Login details for this Free course will be emailed to you

By signing up, you agree to our Terms of Use and Privacy Policy.

This website or its third-party tools use cookies, which are necessary to its functioning and required to achieve the purposes illustrated in the cookie policy. By closing this banner, scrolling this page, clicking a link or continuing to browse otherwise, you agree to our Privacy Policy

Loading . . .
Quiz
Question:

Answer:

Quiz Result
Total QuestionsCorrect AnswersWrong AnswersPercentage

Explore 1000+ varieties of Mock tests View more

Special Offer - Software Testing Training (9 Courses, 2 Projects) Learn More