10%

Try : Insurtech, Application Development

Edtech(5)

Events(31)

Interviews(10)

Life@mantra(10)

Logistics(1)

Strategy(14)

Testing(7)

Android(43)

Backend(28)

Dev Ops(2)

Enterprise Solution(20)

Frontend(28)

iOS(39)

Javascript(13)

AI in Insurance(26)

Insurtech(57)

Product Innovation(34)

Solutions(13)

Augmented Reality(7)

Customer Journey(7)

Design(6)

User Experience(21)

Artificial Intelligence(94)

Bitcoin(7)

Blockchain(14)

Cognitive Computing(7)

Computer Vision(6)

Data Science(13)

FinTech(41)

Intelligent Automation(25)

Machine Learning(43)

Natural Language Processing(10)

HealthTech(5)

mHealth(3)

Telehealth Care(1)

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

Virtual health: Delivering care through technology

8 minutes, 52 seconds read

Virtual Care, Telehealth, Telemedicine, etc. are terms used very synonymously. Indeed they are interrelated, however, Virtual Care is a broader term in which healthcare providers use digital tools to communicate and deliver care to their patients. Telehealth and Telemedicine are a part of Virtual Care where doctors deliver care to their patients, remotely via phone, video, or instant messaging. Virtual health includes care delivery beyond video consultation where hospitals provide services using technology such as wearables for remote monitoring, instruments for post-op care and second opinions, e-pharma services, and medical information, etc. 

The outbreak of the COVID-19 pandemic gave an impetus to Virtual Care, but even in the Pre-COVID time, the Healthcare sector was slowly gearing up for this next wave in care delivery. What COVID-19 did was, help patients get acclimatized to the digital health tools and services. 

What does Virtual Health help with?

The pandemic has brought the burning issues of the healthcare sector to center stage. Patient experience and access to healthcare services are key differentiators for people while choosing a healthcare provider. Let’s take a look at some of these issues addressed by technology in the healthcare sector-

The increasing number of patients

Apart from the pandemic, there’s already been a rise in the number of patients due to drastic changes in lifestyle and food habits, an increase in pollution levels, increase in new types of viruses, etc. This has caused undue stress on healthcare institutions and workers and has led to the deterioration of the quality of patient care. Virtual Health technology such as mHealth apps, EHR (Electronic Health Record), video conferencing, etc. has helped reduce the pressure on hospitals.

Difficulty in traveling for old patients

The pace of life is increasing at a rapid rate. It is getting insanely difficult for the elder population to navigate through the traffic and commute long distances for a check-up. Many times, they have to depend on their family members to take them to hospitals. Moreover, they are at risk of exposure to viruses in hospitals and clinics. Now that they have had the experience of virtual consultations, they prefer care delivery at home rather than going to hospitals.

Chronic Diseases treatment

The number of people above the age of 45 face health issues. Some patients are suffering from chronic diseases regardless of age. Regular monitoring of their vitals is very important. Moreover people now prefer Virtual healthcare services which are easily accessible and save a lot of time, effort, and money. Now that people have found these services effective, they will opt for online consults rather than frequent in-person visits. 

Post-op Care

The duration of post-operative care is quite long and tedious. If given a choice, people will lean towards wearables which will help keep doctors posted on the status of the treatment. Many times, the cost of post-op care is more than the actual treatment and sometimes is not covered under insurance. Virtual care-delivery services will help reduce the financial burden of people going through these treatments.

Follow-ups/Second opinion  

Some health conditions need multiple follow-ups and second opinions to figure out the right approach to treat the issue. It is much easier for patients to do follow-up consults virtually rather than going through the tedious process of appointment booking, commuting, and waiting for their turn. It helps reduce the queue outside the doctor’s office as well. Some health issues need a second opinion, sometimes both by patients and doctors. Virtual Healthcare technologies make it possible for them to take second opinions from doctors all over the world. With electronic records and image sharing, doctors can diagnose the problem better.

What does Virtual Health include?

Virtual Health can be broadly divided into below applications-

mHealth Applications

mHealth applications have widespread use. From symptom checkers to appointment booking, from fitness trackers to uploading medical records, from video conferencing features to chatbot integrations, mHealth apps are on a rise mainly because of easy accessibility for the tech-savvy customers. According to a study by NCBI, among the 22 selected mHealth apps operating in India, Practo, mfine, DocsApp, 1mg, Netmeds, Lybrate, MediBuddy, and Medlife were found to be the eight most popular ones with over a million downloads and on average four-plus user rating out of five. All the above apps are mainly being used for online consults. This just goes about showing that people prefer having homecare services instead of stepping out. 

E-Triage Tools

The rising number of patients with different stages of COVID symptoms was a task to deal with. E-triage software here enables hospitals to triage patients into different sections when there’s an overload of patients at a particular time. Now, in the case of home care, e-triage tools help patients to access the gravity of their health condition and notify the healthcare provider accordingly. Such tools help reduce A&E waiting time and improve NHS performance. Many companies are building healthcare software integrating the E-triage module within EHR, telemedicine, clinical decision making, billing, etc. In India, Persistent Systems’ cutting edge platform has a Nurse Triage system that enables nurses to see the queue of patients and triage via phone calls. Once the calls are done, a triage report is generated and sent to care providers. Many leading doctors feel that AI in image triage will see a boost in near future.

Remote Patient Monitoring 

There are multiple benefits such as reduced post-op expenditure, time wastage, less exposure to other diseases, etc. The global remote patient monitoring devices market is expected to expand at a CAGR of 7.1% during the forecast period (2019–2027) according to Coherent Market Insights. Some of the top players in this space are Biotronik, Boston Scientific Corporation, CAS Medical Systems, CONTEC MEDICAL, Dragerwerk, GE Healthcare, Guangdong Biolight Meditech, Medtronic, Mindray Medical, Nihon Kohden, Philips Healthcare, Spacelabs Healthcare, Abbott. Companies such as GE Healthcare and Philips Healthcare have done a great job with building remote patient monitoring systems within the hospital premises as well as homecare for COVID patients. The main goal was to reduce the exposure of healthcare workers to at-risk patients. 

Synchronous and Asynchronous Telehealth

Synchronous telehealth, in other words, Telemedicine is where there is a live conversation between the patient and the doctor. Asynchronous telehealth involves the exchange of recorded data e.g. images, video, medical reports, pathology reports between patients and doctors, at times between doctors as well. Similar to mHealth space, companies like Practo, 1mg, Lybrate, Medlife, and Portea Medical in India are some of the top players in telehealth and telemedicine. Lybrate’s USP lies in CMS (Clinical Management System) which helps doctors with tedious tasks of managing patients and providing better care. Meanwhile, Portea Medical’s home consults and pharma delivery have more relevance with the audience as it combines technology with a touch of personalization. 

Digital Therapeutics

Digital Therapeutics delivers evidence-based therapies with the help of software which can be used both as a preventive measure as well as treatment application. The effectiveness of the medication and lifestyle changes on patients are monitored by leveraging technology. In India, major non-communicable diseases that account for 62% of the total mortality rate are CVD, diabetes, respiratory conditions, and cancer. Prominent global players in this space include Noom (US), Livongo Health (US), Omada Health (US), WellDoc (US), Pear Therapeutics (US), Proteus Digital Health (US), Propeller Health (US), Akili Interactive Labs (US), Better Therapeutics (US), etc. Omada Health is the pioneer in the DTx (Digital Therapeutics) that focused primarily on diabetes and pre-diabetes but now is branching out in the mental health space as well. In India, Altran (a part of Capgemini) is into building personalized DTx applications for clients. Whereas a start-up called Wellthy Therapeutics has ready solutions catering to multiple diseases.

Future of Virtual Health

Undoubtedly, there has been a massive increase in the adoption of Virtual Health technologies as people have gotten accustomed to the ease of certain services at home. In the coming future, mHealth apps, remote patient monitoring, and Digital therapeutics see a surge in demand from the customers. According to a study by Markets and Markets, “The global digital therapeutics market is projected to reach USD 6.9 billion by 2025 from USD 2.1 billion in 2020, at a CAGR of 26.7% during the forecast period (2020–2025).” A study by Fortune Business Insights, “The global mHealth market size is projected to reach USD 293.29 billion by 2026, exhibiting a CAGR of 29.1% during the forecast period.” A Research and Markets report says, “The remote patient monitoring market is expected to reach US$31.326 billion by the end of 2023.” Apart from the above, development in digital infrastructure such as virtual health stations where doctors can provide consultations globally, mobile ICUs, MRIs, X-rays, ultrasound equipment, the establishment of rural virtual care units reaching the remote areas of the country are some of the trends which will gain momentum. The focus would always lie upon the personalization of the virtual care experience for patients driven by data exchange and interoperability. 

Indeed, there are certain challenges to the implementation of these technologies, lack of infrastructure, and digital literacy amongst elders and lower strata of society. Many healthcare institutions still have inhibitions while investing in digital technologies fearing rejection from the customers. It will be crucial for care providers to choose the right partner for implementing these technologies and create awareness amongst people to adopt them.  

In a Nutshell

The success of virtual care relies on how well the digital experience is designed for the patient. “By 2025, as many as 95 percent of all customer interactions will be through channels supported by artificial intelligence (AI) technology” – Microsoft. The use of algorithms and AI for personalizing these experiences will be the key. 

Find out more about unchartered territories in ‘Blue Ocean’ of Digital Health. Join our webinar hosted by Parag Sharma (CEO, Mantra Labs) as he shares his insights on untapped opportunities using digital self-care tools within behavioral healthcare & emotional wellness.

Save your spot! 

Further Readings:

  1. Reimagining Medical Diagnosis with Chatbots
  2. HealthTech 101: How are Healthcare Technologies Reinventing Patient Care
  3. What will be the state of the healthcare industry post pandemic?
  4. Healthcare Chatbots: Innovative, Efficient, and Low-cost Care
Cancel

Knowledge thats worth delivered in your inbox

Loading More Posts ...
Go Top
bot

May i help you?

bot shadow

Our Website is
Best Experienced on
Chrome & Safari

safari icon