Clicky

API Testing

 

API Testing by LoadView

Conduct dynamic API testing on virtually any type of system or infrastructure. Get actionable data—see where the problems lie and solve them fast.



Load Test APIs

  • Simulate 1,000s of users hitting your API every second to generate 100,000+ calls to your server per load testing session.
  • Define your API tests to simulate traffic at the pace you need by implementing a load curve that increases the number of simultaneous users as necessary to properly test your system.
  • Gather performance metrics consisting of the response times of each session and validation that the API returns the expected results in each response.
  • Visualize how the average response time is affected as you increase the number of simultaneous users.
  • Examine individual test sessions to see error codes and utilize additional troubleshooting tools such as traceroutes, waterfall charts and a copy of the server response.

Types of API Testing

APIs have become an incredible tool for sharing data between different software platforms across the internet. As businesses become more sophisticated and require real-time access to more and more data, many companies are building APIs to allow customers and partners to interact with and consume data in the manner that best suits their needs, but what is API testing? How is it done?

While an API can be tested in-house to ensure it responds properly to commands and requests, in-house testing does not guarantee the API will be able to respond effectively to external requests across the internet. Once an API has been deployed, it would ideally be tested using an external load testing service with nodes dispersed throughout the geographic regions of the target market. LoadView API load testing provides a powerful, on demand tool where you can input constant or dynamic variables into API requests, and scale the number of simultaneous users up from locations around the world easily and with little overhead. LoadView is able to test virtually any type of API in existence.

RESTful API Load Testing

LoadView testing for REST applications lets you define a list of steps to perform while interacting with an API through a series of GET/POST requests to the RESTful API server or URI. The series of API requests is saved as a script in the Dotcom-Monitor cloud, and can be queued up to run simultaneously by hundreds or thousands of virtual servers around the world.

By running a load test using nodes in multiple regions you can increase simultaneous connections in the load test to the point that the API begins slowing down the average response time. Further adding more simultaneous users to the API test should eventually stress the API server to the point that your RESTful requests begin to time out. When the API begins consistently timing out, you will able to identify a bottleneck in the system.

SOAP API Load Testing

Load Test SOAP APIs by defining the GET and POST parameters within HTTP/S requests. SOAP API testing can scale up from one user to thousands of simultaneous users by increasing the user count in a load curve. If necessary, custom C# scripts can be written to assist in the load test by generating random variables or passing parameters from one step of the API test to the next..

LoadView API Testing—RESTful, SOAP, SaaS, Dynamic

Conduct dynamic API testing on virtually any type of system or infrastructure.

Load Testing SaaS APIs

As your SaaS product becomes more and more popular, users will begin demanding access to the services directly through APIs. As soon as users gain access to your APIs they will likely start testing the limits of the SaaS system by sending many requests one after the other as fast as possible in order to create a real-time data feed into their own environment.

Whether you expect your customers to perform such requests so frequently or not, they will eventually do so, to the point that it may overload your systems. Setting up and performing regular load tests on your API before your customers do it for you is a proactive way of knowing the limits of your system, at which point you can build in some safeguards to protect your users from accidentally making too many calls. Often times, API managers will limit the number of requests per minute from an IP address, or limit the number of requests based upon the user account. LoadView makes it possible to test SaaS APIs with ease!

Dynamic API Load Generation

Using context parameters, LoadView allows you to specify a dynamic list of variables to use within subsequent API calls during a load test. If necessary you can also use C# to create a randomly generated value within specified constraints. Dotcom-Monitor support is available 24x7 to help you with any scripting issues and to help generate scripts for dynamic variables.


Global API Testing Tools

Test your API from around the world using LoadView's unmatched network of worldwide testing facilities!

Worldwide API Testing Options

Test API availability under heavy load from different geographic regions around the world. LoadView allows you to distribute the load between distinct geographic regions among top tier cloud services in any manner that you want.

For example, if a majority of your customers are in the East Coast of the United States, you may select to send 60% of your load test from the Amazon East Coast servers and distribute the other 40 percent between Rackspace Texas and Google central locations. Why would you do this? Because speed matters, and choosing the closest locations to your actual customers will provide the most effective emulation of real users during a load test.


API Performance Testing Under Load

Most APIs are tested for accuracy and flexibility, but do you know how many concurrent or simultaneous connections your API can support? This question is often more difficult to answer than verifying the accuracy of the results from your API. Due to constraints such as simultaneous database users, RAM availability, pagefile management, and CPU usage, you may not be able to support as many simultaneous users as you think.

Load testing an API with LoadView can be as simple as creating a script that sends several calls to the API in a sequence and scaling up the number of simultaneous users to the upper limits of expected traffic.


Finding Performance Bottlenecks with MetricsView

Once you’re able to generate bottleneck conditions, you want to be able to identify why the system is grinding to a halt. Using LoadView in conjunction with MetricsView is an excellent way to identify the cause of such slowdowns.

By installing the MetricsView Private Agent behind your firewall on a system that can monitor the API servers, you can monitor the Windows Performance Counters related to the API functionality. Measuring metrics such as CPU usage, available memory, bandwidth usage, SQL database transactions and Storage I/O can help determine if there is a hardware or software bottleneck preventing the API from completing transactions more efficiently.

You can also specify keywords expected from the API server to establish a successful response. If the expected keywords are not found in the response, the individual testing session will be flagged with an error. You can also setup maximum response threshold timeouts, so if the API takes longer than the set threshold, the test will return an error.

Tests will also record server response codes such as 4xx and 5xx error codes. When reviewing load test result you can see average test response times displayed in a chart as well as the ability to dig deeper into reports to see individual testing sessions.

LoadView API Testing—Beyond Cutting Edge

LoadView isn't your average load testing tool—
it's revolutionary dynamic testing software that will change the way you look at your system and infrastructure!