What is edge case testing?
Any software should work under load for a long time. Failures and system fault can lead to damage, loss of customers and other unpleasant consequences. Edge case testing allows you to determine how and with what speed the program works under a certain load. Through such testing, the compliance of the product performance with the requirements is formulated in the technical task.
Edge-case testing is recommended when new software is released, finalization of the software being operated and when the stand configuration is changed. Edge case testing is a kind of testing of an application or server in conditions of exceeding the limits of normal operation. It is intended to determine system performance and predict system behavior under stressful conditions.
Read more: Functional testing services
This type of testing is also used to assess the ability of the system to return to normal after reducing the voltage to a normal level. This type of testing is particularly relevant for mission-critical software.
Edge case testing benefits
- Identify pain points in the individual components of the system, due to which a decrease in system performance under stressful conditions is possible.
- The system load indicators are determined at which the system meets the performance requirements stated at the design stage.
KATASIS objectives when performing edge-case testing:
- The general study of the system behavior under extreme loads
- Examination of error handling and exceptions under extreme loads
- System bandwidth testing
- Study of some parts of the system or its components under conditions of disproportionate load
When do you need edge case testing services?
The service is necessary for systems with a high degree of business criticality, as well as applications with high availability.
As a rule, stress testing is carried out in the following cases:
- If the cost of a system failure in extreme situations is high.
- If there is a possibility of a sharp increase in the load on the system in extreme situations.
Stressful conditions include: increasing the intensity of operations to very high values, emergency change of hosting configuration.
The main tasks of testing
In the course of stress testing, scenarios that emulate the load on the system are developed, significantly exceeding the expected performance of the system. At the same time, performance indicators are removed, which are further analyzed and make it possible to draw conclusions about the endurance or stability of the application in the event of a surge in activity on its use.
Read more: Data services and analysis
The main tasks of stress testing are:
- study of the system behavior during peak loads;
- study of error handling and exceptional situations during peak and disproportionate loads;
- study of pain points in the individual components of the system;
- system capacity testing.
Edge-case testing types
Often, it is not possible to manually create the necessary load conditions, so they resort to:
- Focusing on certain types of transactions, which has a greater effect on the occurrence of boundary situations than with load testing.
- The use of scripts, virtual users and other automated simulators of intensive workflow, which
allows studying the behavior of software at peak load.
- The study of the «pain points» of the system.
- Examination of error handling and exceptional situations.
Read more: 4P analysis
Another case of stress testing is testing the capacity of the application, the purpose of which is to determine the «margin of safety» of the system with its full compliance with performance requirements. With this type of testing, it is necessary to take into account both the current load of requests and transactions and their expected number in the future. As a result of capacity testing, we get a set of permissible characteristics of software testing when it meets the requirements laid down in the development process.
Main stages of edge-case testing for web application
- Preparation. An analysis of the objectives and statistics of the operation of the system. Business transactions that are important in terms of system load are determined. A “Testing methodology” document is created and agreed, which includes: a testing strategy, a list, and description of tests, criteria for successful completion, a description of monitoring tools and load testing tools. Preparation of test data is carried out, monitoring is adjusted, the database is filled.
- Conduction. Write and debug load test scripts and implement load test scripts. With the help of the developed load testing system, applications are tested. As part of stress testing, various statistical information is collected, through which performance analysis is performed.
- Report. After the load testing, the customer is provided with a report that describes the test results, deviations from the methodology (if any), a list of errors, suggestions for optimizing the system, general comments.
Why should you trust our Edge-case testing services company to work?
- Fast start. Reduce time to find professionals attracting professionals. Our testing engineers will become an integral part of your team and will allow you to get results from day one.
- Modern laboratory. We have our own laboratory with a variety of platforms and tools for testing a wide range of software and electronic devices.
- Reduce costs. Recruitment is an expensive process that carries significant risks, incl. staff turnover. Cooperation with our company will quickly form a professional team in the project.
- We are professionals. Testing and quality control engineers with a total specialized experience of more than 100 years. A variety of skills of the KATASIS team will allow you to bring your products to a new qualitative level.
- Increase your efficiency. We will help ensure an effective testing process, automating and simplifying existing methods, formulating a unified approach to quality control of your products.
- Solid team. KATASIS offers a solid team of testers who know each other, have worked together and are able to start the project immediately. They will build a cohesive testing team for your needs.
- Best practice. KATASIS continuously studies the best international practices and pays special attention to developing its own methodologies, processes, and procedures carried out during the testing process.