CONTINUOUS TESTINGDIGITAL TRANSFORMATIONLook Ma! I’m Testing without Scripting!

Collin Chau Collin ChauJuly 7, 20206 min

Building applications quickly, with low cost and with high quality, is painful. In a recent survey, 97% cite challenges in designing and maintaining meaningful test cases that are aligned with end user expectations. Difficulties range from manually authoring test cases based on ambiguously written requirements, to designing incorrect test cases in the absence of best practices. 

 

This is especially problematic amongst Business Analysts (BA) who have a deep understanding of the company’s goals, needs, and processes. And also Product Managers (PM) who define the objective and scope of applications being developed. Both roles are critical to determining the acceptance test criteria for new product features in a Test Driven Development (TDD) environment, as test engineers reassess their tools to embed quality throughout the software delivery cycle that automatically tests for every build continuously. What do we mean by that?

 

The New Scriptless Approach to Testing

Let’s say that after talking to a business stakeholder, the BA or PM sees the need to add a new acceptance test for a use case. They understand their customer’s business case and can demo it to the developers. (An example could be to type a keyword in a form field, select a filter from a menu, and submit a request). 

 

Even though they know the acceptance test case best, they need to wait and work with a test engineer to write the actual script for them. This is in the absence of a test practice that allows sharing/reusing test cases to draw from, where non technical users are forced to learn a scripting language to create tests. Such delays are holding back Agile development.  

 

Simplify test creation and maintenance

But that changes when an agile development team uses the BlazeMeter’s platform for Scriptless GUI test creation and execution. Now, any team member can contribute to the test suite, even without a scripting background. 

 

With the built-in Chrome Extension recorder, BAs can create a GUI Functional Test by simply recording the steps taken for the application under test. Start the Recorder, open the web application and go through the steps, before saving the recorded test case in BlazeMeter. This same recorded test now can be used for functional and performance testing, to test user experiences under load in a single test run.

 

blazemeter scriptless testing

But what exactly does the BlazeMeter extension record? Well, it detects typical user actions (e.g. clicking, typing, selecting etc) and also objects (e.g. your web app’s buttons, form fields, menu items, etc). The objects are stored in BlazeMeter’s Test Action Library which serves as the foundation by which teams maintain and share/reuse test cases. 

 

The recorded script applies test actions to test objects, just as testers do when they write scripts manually. What this means is that, if the BA or PM can describe an acceptance test as steps in an agile story and demo it through the web interface, then they are also able to create test cases for these acceptance tests in BlazeMeter Continuous Testing platform – No Scripting needed! 

 

Each time a team member records a new test, new test objects are automatically added to help grow the Test Action Library for your fellow test engineers. BlazeMeter ensures that objects recorded from the same web application are not duplicated, and every test case consistently uses the same locators to find objects. Finding out whether an object is covered by a test is as easy as finding it in the Test Action Library, and looking up the list of scenarios using this object.

 

Drag-drop for scriptless test automation 

A few sprints later with new features added, the team wants to update existing acceptance tests and add new ones. The platform’s user-friendly scenario editor makes it easy to create and maintain GUI Functional Tests. 

 

 

Whether you are a manual tester, a PM, or BA, you can open the outdated test and simply move, drag, and drop predefined actions and objects into the test scenario. The scenario editor even lets you structure the test flow: You can branch the test execution depending on a custom condition, or repeat groups of actions in a loop. 

 

With no need to learn new languages or technical processes, this intuitive building block approach lets a non-technical subject matter expert create tests faster without writing scripts. Experts can contribute to test cases that are shared across teams, and refine and create more complex tests with confidence. This applies even for manual testers who do not want to write scripts today!

 

Over the course of a Program Increment, it’s possible that a recorded and shared test fails, (for example, because a GUI element was renamed or an external service did not load). Any member of your Agile team can immediately run and debug the test scenario from the browser, and even watch a session video replay that provides step-by-step execution details for quick debugging & analysis. 

 

The Scenario Editor highlights failed test steps and helps team members get to the bottom of the problem. In most cases when test execution fails, even a non technical SME can fix script issues independently. And in the remaining cases, a fellow manual tester can always troubleshoot and update the script using the built-in debugger.

 

Comprehensive Testing with No Configuration Required

 

After getting the hang of Scriptless test creation, teams can decide to amp it up with more complex testing. Instead of just considering one variant, a manual tester might want to test different combinations of interactions that could cause similar errors. For example, your customers might not enter only plain search keywords, but also unicode characters and punctuation, so those are two more cases you want to cover. 

 

With BlazeMeter, teams do not have to record each test combination manually. Instead, you replace the target values by a keyword such as ${search_term} or ${username}, and upload a spreadsheet with test data with different test values. BlazeMeter automatically parameterizes test data into the runs for a more exhaustive, data driven test coverage. 

 

Speed up test maintenance to dramatically save time and costs

 

BlazeMeter understands how agile teams work and has made it easy to share tests, objects, and test data by using a modular approach that allows easy reuse and maintenance of these test components. 

By creating a workspace for every test component that relies on the same set of test objects in the library, any changes made in shared test components can be instantly propagated to all your relevant test suites. Each time a change is made to the building blocks in the scenario editor, the script behind it is also updated. 

When any team member updates a scenario or object, they can choose whether to propagate this change to all other tests that re-use it, or whether they want to save it as a new copy. Team members can check the revision history to find out why an object was updated, and by whom. 

Whether you test ‘as-code’ within the IDE or use a lightweight UI, eliminate QA roadblocks with a unified continuous testing platform that’s suited for all teams. The BlazeMeter Continuous Testing platform offers Agile teams comprehensive scriptless test automation capabilities with deeply integrated, intuitive workflows out of the box. 

Get Started

 

Simplify your test creation and maintenance with a devops ready platform that includes UI functional, User Experience, API and Performance Testing for your CI/CD pipeline. To learn more on how you can make the shift to quality, enroll for our free online courses and get your certifications at BlazeMeter University.  

 

Collin Chau

Collin Chau

Collin enjoys helping traditional Central IT and Agile development teams Plan-Build-Test-Run for speed in quality application release. Taking on grassroots engagements with practitioners in application test automation for the Agile software development lifecycle and DevOps delivery, Collin has broken new grounds in next generation programs like predictive insights for Dev-QA teams, and hybrid cloud management solutions for Ops teams in the software defined datacenter.