Performance testing banking application is an important activity that will uncover problems like slowness in application speed, stability and scalability. More importantly, performance testing uncovers what needs to be improved before the product goes to market. There will be instances like payday or festival seasons that will be bringing in more concurrent users traffic to the site. Performance failures in banking applications can adversely affect the customer relationship. An example in this case is the Cyber Monday IT failure, a major bank that showed incorrect balances and left customers stranded, unable to pay bills at restaurants or check-out in stores.
Performance testing banking applications is always a challenge. The challenges are attributed to several compliance requirements, variety of users , i.e, various browsers, devices, locations, wide range of internet speed to name a few. Following are list of the most common challenges faced while load testing banking applications.
![bankinng-applications-perform-testing](images/jan-2016-blog.jpg)
Performance Testing from inside a private network
Banking applications are of two types. Certain application work over the internet (ex. internet banking portals) and the other set of applications work only inside the banking premises or on dedicated network across the branches. They share a lot of common program modules and databases. So, when testing bank applications it's important to the application over the internet and also within the LAN. Load testing tool should be able to work over the cloud and on premise. The on premise version of the load testing tool should be able to perform load test from within the LAN and on a private network.
Denial of Service(DoS)
Most of the Banking Application servers run an anti - DoS software to prevent the cyber attacks. This will prevent the load testing tools to send concurrent requests during the load test. Certain load testing tools come with load generators that can spoof the IP's, which will mimic unique IP addresses to all the virtual users and thus solving the above challenge.
Distributed Users
Online Banking applications users are mostly distributed geophysically. Also they come with various browser and internet connection speed. It's important to measure the page response time for the above combination. Synthetic user monitoring (SUM) will allow you to know the speed of application pages, from the location where end users are located. Statistics are collected from an actual browser. With SUM you can ensure the page speed across the globe, well before going live.
Testing Teller operation from Actual Branches
Banks operate with several branches. All these branches send data to the servers at regular intervals. Most of these branches might be located in remote locations. Load testing these operations using cloud based load generators will not reveal the actual problems. Load testing tools should allow testing with private load generators. Load testing tools should allow testing from different locations across the globe.
Remote Server monitoring
Banking application servers are usually placed in different geographies. It becomes very difficult to monitor these servers and to get unified insights. Moreover monitoring the server over the firewall usually becomes a challenge most of the time. Server monitoring agents can solve this problem. Monitoring agents are light weight services running on the servers. They collect the monitoring data and send them to centralized collector for reporting purposes. These communication happens through secure ports and logging will be enabled to save what data is being transferred. These logs can be used for compliance audits. Also on premise versions allow you to keep the data inside your boundary.
Load Testing ATMS
Load testing ATM machines is always a challenge. Most of the ATM transactions send and receive data in raw TCP/ IP format. Most of the load testing tools handle HTTP requests alone. Load testing tools should be able to send and receive data in TCP/IP format. Moreve bank atm can be used by other bank account holders as well. So it is always a challenge to predict the number of users and ATM transactions.
Transaction Monitoring
When it comes to banking, certain transactions are key to the business. Its very important to monitor these key transactions even on production as well. It's usually not advisable to have profiles in production as they add considerable overhead. Custom instrumentation allows you to monitor the key transactions with almost no overhead.
Today, banking industry has revolutionized completely and people no longer stand for long hours inside bank premises. Instead most of the operations are done either online or by mobile banking. Since, this is a day to day affair, banking companies have to conduct performance testing to reap the following advantages
- 24 X 7
availability.
- Minimum
Downtime.
- Faster
Transactions and more
successful transactions.
- Better
customer satisfaction.
- Higher return
on investments.
Module and its main features
Appedo LT (Load Test)- Available on
Cloud and On
Premise.
- Other Features
- IP Spoofing,
Private load generators.
- Supports
TCP/IP recording.
- Monitors
available for most of
the Java Stack, .net Stack code profilers . Also
available on Premise.
- Synthetic User
Monitoring,
Real user monitoring.
- Availability
monitor for 24X7
server uptime. Allows you to monitor from across the
globe.
- Allows you to
monitor
important transactions in specific program code sections.
- Detect every
SLA breach and
inform the Ops team, by email or SMS text.