10%

Try : Insurtech, Application Development

Edtech(5)

Events(33)

Interviews(10)

Life@mantra(10)

Logistics(1)

Strategy(14)

Testing(8)

Android(44)

Backend(28)

Dev Ops(2)

Enterprise Solution(22)

Frontend(28)

iOS(40)

Javascript(13)

AI in Insurance(29)

Insurtech(58)

Product Innovation(36)

Solutions(15)

Augmented Reality(10)

Customer Journey(8)

Design(7)

User Experience(25)

E-health(3)

HealthTech(6)

mHealth(3)

Telehealth Care(1)

Artificial Intelligence(103)

Bitcoin(7)

Blockchain(14)

Cognitive Computing(7)

Computer Vision(6)

Data Science(14)

FinTech(41)

Intelligent Automation(26)

Machine Learning(45)

Natural Language Processing(12)

Basics of load testing in Enterprise Applications using J-Meter

5 minutes read

We need to test websites and applications for performance standards before delivering them to the client. The performance or benchmark testing is an ongoing function of software quality assurance that extends throughout the life cycle of the project. To build standards into the architecture of a system — the stability and response time of an application is extensively tested by applying a load or stress to the system.

Essentially, ‘load’ means the number of users using the application while ‘stability’ refers to the system’s ability to withstand the load created by the intended number of users. ‘Response time’ indicates the time taken to send a request, run the program and receive a response from a server.

Load testing on applications can be a challenging ordeal if a performance testing strategy is not predetermined. Testing tasks require multifaceted skill-sets — from writing test scripts, monitoring and analyzing test results to tweaking custom codes and scripts, and developing automated test scenarios for the actual testing.

So, is load testing on applications really necessary?

Quality testing ensures that the system is reliable, built for capacity and scalable. To achieve this, the involved stakeholders decide the budget considering its business impact.

Now, this raises a question — how do we predict traffic based on past trends? and how can we make the system more efficient to handle traffic without any dropouts? Also, if and when we hit peak loads, then how are we going to address the additional volume? For this, it is crucial to outline the performance testing strategy beforehand.

5 Key Benefits of Performance Testing

  1. It identifies the issues at the early stage before they become too costly to resolve (for example, exposing bugs that do not surface in cursory testing, such as memory management bugs, memory leaks, buffer overflows, etc.).
  2. Performance testing reduces development cycles, produces better quality and more scalable code.
  3. It prevents revenue and credibility loss due to poor web site performance.
  4. To enable intelligent planning for future scaling.
  5. It ensures that the system meets performance expectations (response time, throughput, etc.) under-designed levels of load.

Organizations don’t prefer manual testing these days because it is expensive and requires human resources and hardware. It is also quite complex to coordinate and synchronize multiple testers. Also, repeatability is limited in manual testing.

To find the stability and response time of each API, we can test different scenarios by varying the load at different time intervals on the application. We can then automate the application by using any performance testing tool.

Performance Testing Tools

There are a bunch of different tools available for testers such as Open Source testing Tools — Open STA Diesel Test, TestMaker, Grinder, LoadSim, J-Meter, Rubis; Commercial testing tools— LoadRunner, Silk Performer, Qengine, Empirix e-Load.

Among these, the most commonly used tool is Apache J-Meter. It is a 100% Java desktop application with a graphical interface that uses the Swing graphical API. It can, therefore, run on any environment/workstation that accepts Java virtual machine, for example, Windows, Linux, Mac, etc.

We can automate testing the application by integrating the ‘selenium scripts’ in the J-Meter tool. (The software that can perform load tests, performance-functional tests, regression tests, etc. on different technologies.)

[Related: A Complete Guide to Regression Testing in Agile]

If the project is large in scope and the number of users keeps increasing day-by-day then the server’s load will be greater. In such situations, Performance testing is useful to identify at what point the application will crash. To find the number of errors and warnings in the code, we use the J-Meter tool.

How J-Meter Works

J-Meter simulates a group of users sending requests to a target server and returns statistics that show the performance/functionality of the target server/application via tables, graphs, etc.

The following figure illustrates how J-Meter works:

How J-Meter works - Load Testing on applications

The J-Meter performance testing tool can find the performance of any application (no matter whatever the language used to build the project).

First, it requires a test plan which describes a series of steps that the J-Meter will execute when run. A complete test plan will consist of one or more thread groups, samplers, logic controllers, listeners, timers, assertions and configuration elements.

The ‘thread’ group elements are the beginning of any test plan. Thread group element controls the number of threads J-Meter will use during the test run. We can also control the following via thread group: setting the number of threads, setting the ramp-up time and setting the loop count. The number of threads implies the number of users to the server application, while the ramp-up period defines the time taken by J-Meter to get all the threads running. Loop count identifies the number of times to execute the test.

After creating the ‘thread’ group, we need to define the number of users, iterations and ramp-up time (or usage time). We can create virtual servers depending on the number of users defined in the thread group and start performing the action based on the parameters defined. Internally J-Meter will record all the results like response code, response time, throughput, latency, etc. It produces the results in the form of graphs, trees and tables.

J-Meter has two types of controllers: Samplers and Logic controllers. Samplers allow the J-Meter to send specific requests to a server, while Logic controllers control the order of processing of samplers in a thread. They can change the order of requests coming from any of their child elements. Listeners are then used to view the results of samplers in the form of reporting tables, graphs, trees or simple text in some log files.

Please remember, always do performance testing by changing one parameter at a time. This way, you’ll be able to monitor response and throughput metrics and correct discrepancies accordingly. The real purpose of load testing is to ensure that the application or site is functional for businesses to deliver real value to their users — so test practically, and think like a real user.

If you’ve any queries or doubts, please feel free to write to hello@mantralabsglobal.com.

About the author: Syed Khalid Hussain is a Software Engineer-QA at Mantra Labs Pvt Ltd. He is a pro at different QA testing methodologies and is integral to the organization’s testing services.

Load Testing on Applications FAQs

What is the purpose of load testing?

Load testing is done to ensure that the application is capable of withstanding the load created by the intended number of users (web traffic).

Which tool is used for load testing?

There are open source and commercial tools available for load testing. 
Open Source Tools are — Open STA Diesel Test, TestMaker, Grinder, LoadSim, J-Meter, Rubis. Commercial testing tools are — LoadRunner, Silk Performer, Qengine, Empirix e-Load.

How load testing is done?

Load testing is done using test scripts, monitoring and analyzing test results and developing automated test scenarios.

Check out these articles to catch the latest trends in mobile apps:

  1. 7 Important Points To Consider Before Developing A Mobile App
  2. The Clash of Clans: Kotlin Vs. Flutter
  3. Google for India September event 2019 key highlights
  4. Learn Ionic Framework From Scratch in Less Than 15 Minutes!
  5. AI in Mobile Development
  6. 10 Reasons to Learn Swift Programming Language
Cancel

Knowledge thats worth delivered in your inbox

Enhancing digital patient experience with healthcare chatbots

5 minutes read

Chatbots are fast emerging at the forefront of user engagement across industries. In 2021, healthcare is undoubtedly being touted as one of the most important industries due to the noticeable surge in demand amid the pandemic and its subsequent waves. The Global Healthcare Chatbots Market is expected to exceed over US$ 314.63 Million by 2024 at a CAGR of 20.58%.

Chatbots are being seen as those with high potential to revolutionize healthcare. They act as the perfect support system to agents on the floor by providing the first-step resolution to the customer, in terms of understanding intent and need, boost efficiency, and also improve the accuracy of symptom detection and ailment identification, preventive care, feedback procedures, claim filing and processing and more.

At the outset of the COVID-19 pandemic, digital tools in healthcare, most commonly chatbots, rose to the forefront of healthcare solutions. Providence St. Joseph Health, Mass General Brigham, Care Health Insurance (formerly Religare), and several other notable names built and rolled out artificial intelligence-based chatbots to help with diagnostics at the first stage before a human-human virtual contact, especially while differentiating between possible COVID-19 cases and other ailments. The CDC also hosts an AI-driven chatbot on its website to help screen for coronavirus infections. Similarly, the World Health Organization (WHO) partnered with a messaging app named Ratuken Viber, to develop an interactive chatbot for accurate information about COVID-19 in multiple languages. This allowed WHO to reach up to 1 billion people located anywhere in the world, at any time of the day, in their respective native languages.

For Care Health Insurance, Mantra Labs deployed their Conversational AI Chatbot with AR-based virtual support, called Hitee, trained to converse in multiple languages. This led to 10X interactions over the previous basic chatbot; 5X more conversions through Vanilla Web Experience; Drop-in Customer Queries over Voice Support by 20% among other benefits.

Artificial Intelligence’s role in the healthcare industry has been growing strength by strength over the years. According to the global tech market advisory firm ABI Research, AI spending in the healthcare and pharmaceutical industries is expected to increase from $463 million in 2019 to more than $2 billion over the next 5 years, healthtechmagazine.net has reported. 

Speaking of key features available on a healthcare chatbot, Anonymity; Monitoring; Personalization; collecting Physical vitals (including oxygenation, heart rhythm, body temperature) via mobile sensors; monitoring patient behavior via facial recognition; Real-time interaction; and Scalability, feature top of the list. 

However, while covering the wide gamut of a healthcare bot’s capabilities, it is trained on the following factors to come in handy on a business or human-need basis. Read on: 

Remote, Virtual Consults 

Chatbots were seen surging exponentially in the year 2016, however, the year 2020 and onwards brought back the possibility of adding on to healthcare bot capabilities as people continued to stay home amid the COVID-19 pandemic and subsequent lockdowns. Chatbots work as the frontline customer support for Quick Symptom Assessment where the intent is understood and a patient’s queries are answered, including connection with an agent for follow-up service, Booking an Appointment with doctors, and more. 

Mental Health Therapy

Even though anxiety, depression, and other mental health-related disorders and their subsequent awareness have been the talk around the world, even before the pandemic hit, the pandemic year, once again could be attributed to increased use of bots to seek support or a conversation to work through their anxiety and more amid trying times. The popular apps, Woebot and Wysa, both gained popularity and recognition during the previous months as a go-to Wellness Advisor. 

An AI Wellness Advisor can also take the form of a chatbot that sends regular reminders on meal and water consumption timings, nutrition charts including requisite consultation with nutritionists, lifestyle advice, and more. 

Patient Health Monitoring via wearables 

Wearable technologies like wearable heart monitors, Bluetooth-enabled scales, glucose monitors, skin patches, shoes, belts, or maternity care trackers promise to redefine assessment of health behaviors in a non-invasive manner and helps acquire, transmit, process, and store patient data, thereby making it a breeze for clinicians to retrieve it as and when they need it.

Remote patient monitoring devices also enable patients to share updates on their vitals and their environment from the convenience and comfort of home, a feature that’s gained higher popularity amid the pandemic.

A healthcare chatbot for healthcare has the capability to check existing insurance coverage, help file claims and track the status of claims. 

What’s in store for the future of chatbots in Healthcare? 

The three main areas where healthcare chatbots can be particularly useful include timely health diagnostics, patient engagement outside medical facilities, and mental health care. 

According to Gartner, conversational AI will supersede cloud and mobile as the most important imperative for the next ten years. 

“For AI to succeed in healthcare over the long-term, consumer comfort and confidence should be front and center. Leveraging AI behind the scenes or in supporting roles could collectively ease us into understanding its value without risking alienation,” reads a May 2021 Forbes article titled, The Doctor Is In: Three Predictions For The Future Of AI In Healthcare. 

Cancel

Knowledge thats worth delivered in your inbox

Loading More Posts ...
Go Top
bot

May i help you?

bot shadow