June 7th, 2017 by inflectra
In this short blog post, our test automation guru - Denis Markovtsev explains the ideas and principles behind the design of Inflectra's new Rapise Visual Language (RVL) introduced in Rapise 5.1. RVL is a spreadsheet-based approach to UI test automation implemented in Rapise to help domain specialists and test analysts, who are not programmers, participate in test automation projects.
Since the beginning of computer era, programmers divided code and static data. Let's briefly trace history starting with x86 assembler:
.model small
.stack 128
.code
start: mov ax, @data
mov ds, ax
mov ah, 9
lea dx, msg
int 21h
mov ah, 4ch
int 21h
.data
msg byte 'Hello World!', 13, 10, '$'
end start
Notice those .code
, .data
segments and msg
variable containing Hello World!
string.
In C
language the example turns into.
#include <stdio.h>
static const char* msg = "Hello World!\r\n";
int main()
{
printf(msg);
return 0;
}
And here is the one of the most modern successors of C
- C#
.
using System;
namespace CSharpConsoleApplication
{
class Program
{
private static string msg = "Hello World!";
static void Main(string[] args)
{
Console.WriteLine(msg);
}
}
}
Separation of code and data is a natural approach providing many benefits.
Notice that writing Hello World!
example in any of the languages mentioned above requires knowledge of
.model
, .stack
, char
, main
, namespace
, public
).{
, }
, (
, )
, [
, ]
.At Inflectra we kept in mind all these considerations while designing Maps feature for RVL and tried to simplify syntax as much as possible. Here is how Hello World!
looks like in RVL:
Actually, this example does a more complex thing than printing Hello World!
to a report. It has a loop that iterates through a data set (map) and prints all defined values. Adding more values
and see the execution result:
Let's iterate through a list of great capabilities expressed by RVL in this example:
Want to place data values in rows rather than columns. Excellent:
Now imagine you want to work with a particular row in the map. Just put this
on a desired row and the loop will execute just one iteration for it.
Easy and simple.
RVL is an effort to easy life for non-programmers and enable them to participate in UI test automation projects more effectively. RVL is based on many proven concepts developed for programming languages since assembler birth times and is build around simple spreadsheet-inspired notation.
Ask an Inflectra expert:
And if you have any questions, please email or call us at +1 (202) 558-6885
SpiraTest combines test management, requirements traceability & bug-tracking
SpiraTeam brings your teams together, managing the entire application lifecycle
SpiraPlan lets you manage your programs and portfolio of projects like never before
Orchestrates your automated regression testing, functional, load and performance
The ultimate test automation platform for web, mobile, and desktop applications
The help desk system, designed specifically for software support teams
Cloud hosted, secure source code management - Git and Subversion
Exploratory testing capture tool that automatically records your testing activity
Let us deal with the IT pain so you don't have to. Or use on-premise if you prefer.
Our customers work in every industry imaginable. From financial services to healthcare and biotech to government and defense and more, we work with our customers to address their specific needs.
Our products do not enforce a methodology on you, instead they let you work your way. Whether you work in agile development, Scrum, XP, Kanban and Lean, Waterfall, hybrid, or Scaled Agile Inflectra can help.
If you want to learn more about application delivery, testing, and more take a look at our whitepapers, videos, background papers, blog, and presentations.
Our suite of Accelerators speed up your deployment and adoption of our products, increasing your return on investment and reducing the cost of ownership.
We collaborate with a wide range of teams to bring our customers a range of services (including load testing, training, and consultation), complimentary technologies, and specialized tools for specific industries.
Learn how different organizations have benefited from using Inflectra products to manage their software testing and application develooment.
Outstanding support is the foundation of our company. We make support a priority over all other work. Take a look at our support policy.
Discover great tips, discussions, and technical solutions from fellow customers and Inflectra's technical experts.
If you can't find the answer you're looking for, please get in touch with us: over email, phone, or online.
We are constantly creating new videos to help customers learn about our products, including through in depth webinars, all freely available along with a wide selection of presentations.
We provide a number of resources to help customers learn how to get the most out of our products, with free online resources, virtual classrooms, and face to face.
Read about Inflectra, our manifesto, and values. Meet our incredible customers who are building awesome things, and our leadership team that are committed to building a great company.
The Inflectra Blog contains articles on all aspects of the software lifecycle.
In addition we have whitepapers,
background articles, videos and
presentations to help get you started.
Events are a big part of our awesome customer service. They are a chance to learn more about us, our products, and how to level up your skills with our tools.
We partner with educational institutions and individuals all over the world. We are also a great place to work and encourage you to explore joining our team.
Please contact us with your questions, feedback, comments, or suggestions. We'll get back to you as soon as possible.
When you need additional assistance (be it training, consulting, or integration services) our global certified solution provider partner network is ready to help.
At Inflectra, we are fully committed to provide our customers with the very best products and customer service. Check out some of our recent awards.
We want to help developers extend and customize our tools to fit in with their needs. We provide robust APIs, sample code, and open source projects.