Click here to close now.

Welcome!

Open Web Authors: Liz McMillan, Lori MacVittie, Gilad Parann-Nissany, Carmen Gonzalez, Mark R. Hinkle

Related Topics: Microservices Journal, Java, XML, .NET, AJAX & REA, Open Web

Microservices Journal: Article

GUI Versus Script: Is This Old Load Testing Debate Now Over?

New breed of hybrid load testing solutions

The first step in performance or load testing a web application is to create a realistic test script. This script, representing a specific type of end user, contains steps that are fully automated transactions flows. Often, complex behaviors need to be emulated as part of these flows. To incorporate the needed behavior or to handle complex scenarios, testers need to customize these load scripts. The question is whether you utilize a tool that takes a GUI driven approach for script customization/manipulation, or whether you choose a tool which requires the use of a programming language.

As Performance testers, we typically evaluate several load testing tools before diving into a project. Some of us prefer the GUI driven approach to creating load scripts because, being results driven, we want to get the test up and running as quickly as possible. The GUI approach saves us time and there is no programming involved thus the learning curve is also extremely fast. These GUI scripts are typically easily modified by having their parameters and values organized in a visually obvious format. And just because a tool is easy to use, doesn't mean that it's only for beginners. Remember the good old days of MS-DOS? Eeek, thank goodness for GUI driven DOS (Windows).

Some testers (mistakenly) dismiss the GUI driven approach as being too limited for complicated behaviors. Old school testers insist on only utilizing program-based scripts because past experience has led them to think that this is the most flexible or the only choice for handling complicated behaviors. All too often, the perception is that GUI driven scripts limit the level of customizations possible to emulate a real user. This opinion is likely based on experiences with rudimentary GUI tools on the market that are too basic and limited in their capabilities such as handling dynamic content and varying the transactions flows.

However, there is a new breed in load testing solutions, designed and built to handle the most complex advanced scenarios. These are true enterprise-class solutions which provide a hybrid approach by containing both GUI and programming features. The power behind this hybrid approach enables the user to emulate even the most complex behavior but it also includes time saving features which can only be offered by a GUI solution.

Let's get really technical for a minute to highlight an example: Some tools provide the common "programming" tools like loops and conditions. Recorded values of parameters are easily replaced by variables with a click of the mouse. NeoLoad, an example of a modern enterprise solution, goes further to provide even more advanced features. Some specific examples include: 1) "Wait Until" Action to the current execution thread until certain conditions have been verified 2) "Shared Queue" Action to use values from one VU's response as input in an entirely different VU execution 3) a "While" Action allows various transactions, such as web pages, to be iterated while a condition remains false 4) "Try ...Catch" Action to break out of the script based on Validation or Assertions and go to the End phase. The use of nested actions creates even more complex behaviors. All of these advanced scenarios are accomplished without programming! PUSHtechnology which is rapidly being deployed in today's RIA's adds even more complexity. With asynchronous updates pushed to/from the page independent of complete page refreshes...imagine this programming nightmare! NeoLoad has a way to solve this problem using cutting edge technology that can "listen" for PUSH behavior (all polling or streaming requests) and wrap all these asynchronous requests into a GUI fork Action, even calculating the average time interval between execution, then presents you with a newly modified script to emulate these load pattern characteristics. Again, all of these GUI centric features allow further manipulation without the need for programming.

Admittedly, there are rare occasions which call for programming and the new breed solution has a Javascript Action with a complete API to give it a "hybrid" of GUI and coding capability. Again, simply drag the Javascript action into the place where you want it executed and add the java or javascript required. Accomplish things like computation of variables, logging values to files, manipulating cookies, etc.. Incorporating the javascript feature allows for unlimited flexibility in scripting.
As the script becomes more complicated, it's nice to have this hierarchical GUI-type view.

New breed solutions not only allow for complex behaviors...the GUI approach has other time saving embedded assets. To handle dynamic parameters, NeoLoad is delivered with an ever evolving list of known architectural framework dynamic parameters which are automatically detected and handled by a wizard. The search and replace feature finds strings embedded in any request (body, header, URL's, XML tree, partial matches, etc.) and replaces or concatenates to the string with any data or variable - choose to replace entire string or just part of the string. There's an automatic extraction feature to take data from any response and use it to populate the value of a variable. You can enable/disable specific transactions at a page level or embedded request level which a click of the mouse to isolate transactions of interest. Target an entirely different QA/Performance/Production environment - change the Servers field from host where you initially made the recording to the new server name and port. Debug scripts easily using the side-by-side comparison feature with a tab isolating only the differences of recorded vs. replayed values.

From this perspective, the great debate over choosing a GUI driven or programming approach is over...eliminate the tradeoffs and choose a hybrid which has a powerful GUI and also extends the flexibility for programming. Skip most of the manual programming and only use coding where it's required. Both experts and beginners can agree there is now a solution which meets all of the load & performance testing challenges of your own unique web application. Introducing the "GUI hybrid".

More Stories By Rebecca Clinard

Rebecca Clinard is a Senior Performance Engineer at Neotys, a provider of load testing software for Web applications. Previously, she worked as a web application performance engineer for Bowstreet, Fidelity Investments, Bottomline Technologies and Timberland companies, industries spanning retail, financial services, insurance and manufacturing. Her expertise lies in creating realistic load tests and performance tuning multi-tier deployments. She has been orchestrating and conducting performance tests since 2001. Clinard graduated from University of New Hampshire with a BS and also holds a UNIX Certificate from Worcester Polytechnic Institute.

@ThingsExpo Stories
The true value of the Internet of Things (IoT) lies not just in the data, but through the services that protect the data, perform the analysis and present findings in a usable way. With many IoT elements rooted in traditional IT components, Big Data and IoT isn’t just a play for enterprise. In fact, the IoT presents SMBs with the prospect of launching entirely new activities and exploring innovative areas. CompTIA research identifies several areas where IoT is expected to have the greatest impact.
The 4th International Internet of @ThingsExpo, co-located with the 17th International Cloud Expo - to be held November 3-5, 2015, at the Santa Clara Convention Center in Santa Clara, CA - announces that its Call for Papers is open. The Internet of Things (IoT) is the biggest idea since the creation of the Worldwide Web more than 20 years ago.
The Industrial Internet revolution is now underway, enabled by connected machines and billions of devices that communicate and collaborate. The massive amounts of Big Data requiring real-time analysis is flooding legacy IT systems and giving way to cloud environments that can handle the unpredictable workloads. Yet many barriers remain until we can fully realize the opportunities and benefits from the convergence of machines and devices with Big Data and the cloud, including interoperability, data security and privacy.
The Internet of Things is tied together with a thin strand that is known as time. Coincidentally, at the core of nearly all data analytics is a timestamp. When working with time series data there are a few core principles that everyone should consider, especially across datasets where time is the common boundary. In his session at Internet of @ThingsExpo, Jim Scott, Director of Enterprise Strategy & Architecture at MapR Technologies, discussed single-value, geo-spatial, and log time series data. By focusing on enterprise applications and the data center, he will use OpenTSDB as an example t...
The Internet of Things is not only adding billions of sensors and billions of terabytes to the Internet. It is also forcing a fundamental change in the way we envision Information Technology. For the first time, more data is being created by devices at the edge of the Internet rather than from centralized systems. What does this mean for today's IT professional? In this Power Panel at @ThingsExpo, moderated by Conference Chair Roger Strukhoff, panelists will addresses this very serious issue of profound change in the industry.
Scott Jenson leads a project called The Physical Web within the Chrome team at Google. Project members are working to take the scalability and openness of the web and use it to talk to the exponentially exploding range of smart devices. Nearly every company today working on the IoT comes up with the same basic solution: use my server and you'll be fine. But if we really believe there will be trillions of these devices, that just can't scale. We need a system that is open a scalable and by using the URL as a basic building block, we open this up and get the same resilience that the web enjoys.
We are reaching the end of the beginning with WebRTC, and real systems using this technology have begun to appear. One challenge that faces every WebRTC deployment (in some form or another) is identity management. For example, if you have an existing service – possibly built on a variety of different PaaS/SaaS offerings – and you want to add real-time communications you are faced with a challenge relating to user management, authentication, authorization, and validation. Service providers will want to use their existing identities, but these will have credentials already that are (hopefully) i...
All major researchers estimate there will be tens of billions devices - computers, smartphones, tablets, and sensors - connected to the Internet by 2020. This number will continue to grow at a rapid pace for the next several decades. With major technology companies and startups seriously embracing IoT strategies, now is the perfect time to attend @ThingsExpo, June 9-11, 2015, at the Javits Center in New York City. Learn what is going on, contribute to the discussions, and ensure that your enterprise is as "IoT-Ready" as it can be
Container frameworks, such as Docker, provide a variety of benefits, including density of deployment across infrastructure, convenience for application developers to push updates with low operational hand-holding, and a fairly well-defined deployment workflow that can be orchestrated. Container frameworks also enable a DevOps approach to application development by cleanly separating concerns between operations and development teams. But running multi-container, multi-server apps with containers is very hard. You have to learn five new and different technologies and best practices (libswarm, sy...
SYS-CON Events announced today that DragonGlass, an enterprise search platform, will exhibit at SYS-CON's 16th International Cloud Expo®, which will take place on June 9-11, 2015, at the Javits Center in New York City, NY. After eleven years of designing and building custom applications, OpenCrowd has launched DragonGlass, a cloud-based platform that enables the development of search-based applications. These are a new breed of applications that utilize a search index as their backbone for data retrieval. They can easily adapt to new data sets and provide access to both structured and unstruc...
The Internet of Things is a misnomer. That implies that everything is on the Internet, and that simply should not be - especially for things that are blurring the line between medical devices that stimulate like a pacemaker and quantified self-sensors like a pedometer or pulse tracker. The mesh of things that we manage must be segmented into zones of trust for sensing data, transmitting data, receiving command and control administrative changes, and peer-to-peer mesh messaging. In his session at @ThingsExpo, Ryan Bagnulo, Solution Architect / Software Engineer at SOA Software, focused on desi...
An entirely new security model is needed for the Internet of Things, or is it? Can we save some old and tested controls for this new and different environment? In his session at @ThingsExpo, New York's at the Javits Center, Davi Ottenheimer, EMC Senior Director of Trust, reviewed hands-on lessons with IoT devices and reveal a new risk balance you might not expect. Davi Ottenheimer, EMC Senior Director of Trust, has more than nineteen years' experience managing global security operations and assessments, including a decade of leading incident response and digital forensics. He is co-author of t...
SYS-CON Events announced today that MetraTech, now part of Ericsson, has been named “Silver Sponsor” of SYS-CON's 16th International Cloud Expo®, which will take place on June 9–11, 2015, at the Javits Center in New York, NY. Ericsson is the driving force behind the Networked Society- a world leader in communications infrastructure, software and services. Some 40% of the world’s mobile traffic runs through networks Ericsson has supplied, serving more than 2.5 billion subscribers.
While great strides have been made relative to the video aspects of remote collaboration, audio technology has basically stagnated. Typically all audio is mixed to a single monaural stream and emanates from a single point, such as a speakerphone or a speaker associated with a video monitor. This leads to confusion and lack of understanding among participants especially regarding who is actually speaking. Spatial teleconferencing introduces the concept of acoustic spatial separation between conference participants in three dimensional space. This has been shown to significantly improve comprehe...
Buzzword alert: Microservices and IoT at a DevOps conference? What could possibly go wrong? In this Power Panel at DevOps Summit, moderated by Jason Bloomberg, the leading expert on architecting agility for the enterprise and president of Intellyx, panelists will peel away the buzz and discuss the important architectural principles behind implementing IoT solutions for the enterprise. As remote IoT devices and sensors become increasingly intelligent, they become part of our distributed cloud environment, and we must architect and code accordingly. At the very least, you'll have no problem fil...
The Domain Name Service (DNS) is one of the most important components in networking infrastructure, enabling users and services to access applications by translating URLs (names) into IP addresses (numbers). Because every icon and URL and all embedded content on a website requires a DNS lookup loading complex sites necessitates hundreds of DNS queries. In addition, as more internet-enabled ‘Things' get connected, people will rely on DNS to name and find their fridges, toasters and toilets. According to a recent IDG Research Services Survey this rate of traffic will only grow. What's driving t...
Today’s enterprise is being driven by disruptive competitive and human capital requirements to provide enterprise application access through not only desktops, but also mobile devices. To retrofit existing programs across all these devices using traditional programming methods is very costly and time consuming – often prohibitively so. In his session at @ThingsExpo, Jesse Shiah, CEO, President, and Co-Founder of AgilePoint Inc., discussed how you can create applications that run on all mobile devices as well as laptops and desktops using a visual drag-and-drop application – and eForms-buildi...
The Internet of Things promises to transform businesses (and lives), but navigating the business and technical path to success can be difficult to understand. In his session at @ThingsExpo, Sean Lorenz, Technical Product Manager for Xively at LogMeIn, demonstrated how to approach creating broadly successful connected customer solutions using real world business transformation studies including New England BioLabs and more.
The recent trends like cloud computing, social, mobile and Internet of Things are forcing enterprises to modernize in order to compete in the competitive globalized markets. However, enterprises are approaching newer technologies with a more silo-ed way, gaining only sub optimal benefits. The Modern Enterprise model is presented as a newer way to think of enterprise IT, which takes a more holistic approach to embracing modern technologies.
Every day we read jaw-dropping stats on the explosion of data. We allocate significant resources to harness and better understand it. We build businesses around it. But we’ve only just begun. For big payoffs in Big Data, CIOs are turning to cognitive computing. Cognitive computing’s ability to securely extract insights, understand natural language, and get smarter each time it’s used is the next, logical step for Big Data.