Posted on Leave a comment

7 Ways Automated Testing can Help You Save Time and Money

Introduction

One of the worst things that can happen to a web or mobile application is for it to be riddled with bugs upon deployment. This will limit the application’s ability to solve the problems for which it was built. But that’s not all, it will also negatively impact user experience and trust in your brand, making you lose users to competitors. However, there is one way forward, Testing!

Testing is the process of trying out the features of your application before deployment and they are majorly two types: Manual Testing and Automated Testing. Manual Testing involves an individual downloading or accessing the application, clicking on buttons, checking out features to see if they work, and navigating through pages to confirm if they are well linked. It is worthy of note that this method of testing is prone to inaccuracy due to human error or negligence.

Automated Testing, on the other hand, is a process that involves using an automation tool to execute test case suites and predefined actions on a software application. The testing tool takes real outcomes and compares them with the expected result to generate detailed test reports. This method is the most effective way of testing as it is fast, more reliable, and efficient.

In this article, we would be sharing ways through which Automated Testing can help you save time and money.

1. Grows User Retention

Users have a low tolerance for faulty applications. According to an article by TechCrunch, 88% of people say they would abandon an app if they encountered bugs or glitches. Results also show that most apps are buggy because they went through Manual Testing which was unable to properly spot possible bugs and errors before deployment.

With Automated Testing, there’s a significantly lower chance of encountering a bug or app failure. This is because Automated Testing is more meticulous and less prone to human error such as fatigue or loss of interest during testing. With Automated Testing, you get to keep your users and reduce your churn rate, thus helping you grow revenue.

2. Builds Confidence in Your Brand

Most of the apps in App stores are buggy. According to a survey by Compuware, 56% of app users say they have experienced one form of error or the other while using an app. They also said this led to them losing confidence in the app’s reputation and brand, prompting them to give bad reviews of the App.

Through Automated Testing, you can significantly reduce the chances of your app ever getting a bad review. This is because you will be able to detect bugs much earlier before deployment and fix them before making your app available online or in the App store.

3. Encourages Focus on Developing More Features

Automating your app testing gives your engineering/software team more time to be creative, think outside the box and come up with new, exciting features that will keep your users hooked. This is because less time is spent on testing. Furthermore, it boosts the confidence of the engineering/software team, giving them the necessary wherewithal to explore new ideas without fear of building a feature that could break the app.

4. Improves User Experience

The major reason anyone would want to use your app is that it solves a particular problem they currently face. A fundamental part of user experience is how well your app can solve the problems faced by your users. Above all else, this would be the factor that determines whether users come back to use your app or switch to a competitor.

With Automated Testing, you can ensure that your users do not experience an app failure that would compound their problem rather than help them solve it. This helps you increase the number of transactions and activities on your app, thus resulting in more revenue.

5. Encourages users to talk about your App

Because many apps are buggy, an app that does what it says it does and works without bugs will stand out in the marketplace. This alone could even be enough marketing for your business in the form of word of mouth.  And with this form of marketing comes a significant boost in sales and revenue. For instance Dropbox, a Google Drive competitor grew to become a $10 billion app majorly based on Word-of-Mouth alone. Getting the goodwill of your users also builds brand loyalty, scalability, retention rate and reduces the chances of your users jumping ship to use a competitor.

6. Faster release of App to market

Automated Testing saves you a lot of time. According to the Software Development Life Cycle (SDLC), software testing is the 5th Phase and it typically takes between 1-2months if performed manually by the QA and testing team. However, with Automated Testing, you can complete the Testing phase of the Software Development Life Cycle in days, not months hence giving your app a faster time to market.

If your app is developed to solve a novel problem, this could be the difference between you having a First Mover Advantage over your competitors and gaining market share without worrying about whether your app is bug-free or not.

7. Improved Return on Investment

Most times, the reason businesses are skeptical about using Automated Testing is because it is more expensive than Manual Testing, and this is reasonable in the short-term. However, the long-term benefits of using Automated Testing greatly supersedes the short-term benefits of saving cost by performing Manual Testing. This is because Automated Testing saves a lot of time, energy and gives you a bug-free version of your app. Furthermore, Automated Testing encourages scalability – enabling you to reach more users and grow revenue over a short period.

Conclusion

It is quite obvious that the benefits of Automated Testing greatly outweigh that of Manual Testing. So if you want to build scalable, bug-free apps faster, Automated Testing is the way to go. However, it is worthy of note that the success of your Automated Testing depends largely on the tool you choose to perform the test. There are so many out there that it can be very difficult to choose the one that is best for you.

Testup is a Visual Automation Testing Tool that makes it extremely easy to test your application. It is easy to set up, does not require coding, and can handle complex testing scenarios. You can get started with a free trial of Testup by clicking here.

Happy Testing!

Posted on Leave a comment

Conditional Jump

Conditional jump , enables you to control execution flow depending on true/false value in Clipboard Content. Conditional Jump is only possible to a certain place in Action List that is marked with #Tag.

Preconditions:
Make sure you are in mode.
Introduce a condition using or .

  1. Click on .
  2. Type in name for a Tag to jump in case of false return. #Tag is created automatically.
  3. Press Enter and record the action.
  4. Insert actions for true and false paths.
  5. Replay the test to check the expected behaviour.
    Once the condition is met and Clipboard content returns a true result, false path will end. Test actions will continue playing.

Please Notice

Click to control execution flow if the value in Clipboard content is true.

Posted on Leave a comment

Running Tests from a Script using REST API

There are many use cases where you want to start a test from a script. A common scenario is a regular execution from a server cron job or within a CI/CD build pipeline.

The first thing you need is your personal API-key. In the testup.io App (https://app.testup.io) you will find the API Key under the tab “Profiles”:

Now you can use the following APIs in a shell, for example:

Run a test.

curl -X POST "https://app.testup.io/api/v1/project/run-all/<Project ID>?testIds=<Test Case ID>"     
         -H "accept: */*" 
         -H "Content-Type: application/json"              
         -H "Authorization: ApiKey-v1 <APIKEY>"              
         -d "{\"message\":\"New run by curl\",\"threads\":1}"

where 

<APIKEY> is your API-key (see above),
<Project ID>  is the Project ID of your test (see URL of your project, e.g. 6607334),
<Test Case ID>  is the Test Case ID of your test (see URL of your test).
"New run by curl\" is the name of the new execution the command will create. You can change this freely.
"threads\" is the number of parallel test executions. 

This curl returns a JSON with the execution id <id>. Using this <id> you can get the status of the results:

curl -X GET "https://app.testup.io/api/v1/execution/<id>/details"              
     -H "accept: */*"              
     -H "Authorization: ApiKey-v1 <APIKEY>"

If you want to run all test cases at once, you can use

curl -X POST "https://app.testup.io/api/v1/project/run-all/<Project ID>"                
     -H "accept: */*" 
     -H "Content-Type: application/json"                
     -H "Authorization: ApiKey-v1 <APIKEY>"                
     -d "{\"message\":\"New run by curl\",\"threads\":2}"

Another feature you can use is to replace values in the test with new values using textMap. Or to change the url using urlMap:

PROJECTID=<Project ID>
CONFIG='{
    "message":"Run by Curl",
    "textMap":[{
       "old":"Beanie",
       "new":"Weenie"
    }],
    "urlMap":[{
       "old":"https://does-not-match",
       "new":"https://new-url"
    }]
}'
echo $CONFIG
curl -X POST https://app.testup.io/api/v1/project/run-all/$PROJECTID \   
     -H "accept: */*" \
     -H 'Content-Type: application/json' \
     -H "Authorization: ApiKey-v1 <APIKEY>" \
     -d "$CONFIG"

Posted on Leave a comment

Comprehensive list of Robotic Process Automation (RPA) Tools (2021)

Introduction

Robotic Process Automation(RPA) tools are mainly associated with the configuration of task automation. There are numerous RPA tool vendors, and choosing one could be overwhelming. However, following this well researched list is a good place to start. This list features 10 popular RPA tools in no particular order.

Logo UiPath www.uipath.com

UiPath RPA is a high-level platform dedicated to providing seamless automation of data entry on any web form & desktop application. It supports Excel and provides SAP and Citrix integration.

What’s the user interface of the tool?Web, Desktop
What’s the automated system under test?Android, IOS
Programming Style?HTML, Flash, AJAX, PDF, Java and Silverlight
What’s the price range?$3990/year/user
Is there a free trial?Yes

Logo Automation Anywhere www.automationanywhere.com

Automation Anywhere is the leading Robotic Process Automation (RPA) platform. The enterprise-grade solution combines sophisticated RPA, AI and embedded analytic technologies to create software bots to automate and manage front and back office tasks.

What’s the user interface of the tool?Web, Desktop, Enterprise Applications (Salesforce, Microsoft Excel, G Suite), Mobile app
What’s the automated system under test?Android, iOS
Programming Style?Python and Java
What’s the price range?$9000 /user/year
Is there a free trial?Yes

Logo Appian www.appian.com

Appian provides a software development platform that combines intelligent automation and enterprise low-code development to rapidly deliver powerful business applications.

What’s the user interface of the tool?Web, Desktop, Mobile
What’s the automated system under test?Android, iOS
Programming Style?Java
What’s the price range?$60/month/user
Is there a free trial?Yes

Logo Pega Platform www.pega.com

According to its vendor, Pega Robotic Process Automation (RPA) enables organizations to automate those tedious, time-consuming manual tasks.

What’s the user interface of the tool?Web, Desktop
What’s the automated system under test?Android, iOS
Programming Style?Java
What’s the price range?$90/month/user
Is there a free trial?Yes

Logo blueprism www.blueprism.com

Blue Prism Intelligent RPA can automate and perform mission critical processes, designed to allow users the freedom to focus on more creative, meaningful work.

What’s the user interface of the tool?Web
What’s the automated system under test?Web and different applications
Programming Style?Java
What’s the price range?Price not provided by vendor
Is there a free trial?Yes

Logo nintex www.nintex.com

Nintex RPA automates repetitive, manual business processes. From projects in Excel to CRM systems, Nintex RPA enables enterprises to leverage trained bots to quickly automate mundane tasks more efficiently.

What’s the user interface of the tool?Web
What’s the automated system under test?Web and different applications
Programming Style?no code
What’s the price range?$85/month
Is there a free trial?Yes

Logo Electro Neek www.electroneek.com/

ElectroNeek lets you automate hundreds of attended and unattended processes and run them concurrently at no cost, paying only for developer seats.

What’s the user interface of the tool?Web, Desktop
What’s the automated system under test?Web and different applications
Programming Style?JavaScript and Python
What’s the price range?$5400/year
Is there a free trial?Yes

Logo Zapier www.zapier.com/

Zapier’s integration platform allows the automation of daily tasks that involve using two or more applications.

What’s the user interface of the tool?Web
What’s the automated system under test?Web and different apps
Programming Style?No code
What’s the price range?$0 – $599/month
Is there a free trial?Yes

Logo MS Power Automate flow.microsoft.com

According to Microsoft, Power Automate allows anyone with knowledge of the business process to create repeatable flows that when triggered leap into action and perform the process for them. Power Automate became more robust in May 2020 when Microsoft acquired Softomotive. With the acquisition, WinAutomation, the most powerful and intuitive platform for Windows automation became a part of Power Automate.

What’s the user interface of the tool?Web
What’s the automated system under test?Web and different apps
Programming Style?No code
What’s the price range?$15 – $500/month
Is there a free trial?Yes

Posted on Leave a comment

Insert Tags

Use Tags to structure your test cases and find a desired set of actions quickly.
Tags can be inserted in the beginning, during or after test case creation like any other action.

Make sure the Editor is in mode.

  1. Click on .
  2. Type in a name for the Tag.
  3. Press [ENTER] to confirm and record the action.

Posted on Leave a comment

Why is it So Hard to Introduce Automated Testing in Your Development Process

Automated testing is all the rage in agile contexts these days. There’s no wonder since it works great for many types of testing and helps QAs execute complex test cases located on various platforms and involve a lot of data. It also benefits organizations in multiple ways, such as increasing the productivity of the test team, enhancing software quality, and reducing the time to market.

However, organizations have to face a lot of challenges when trying to apply automated testing into their development process. The seven most common challenges that make the transformation from manual testing to automation more difficult are the following:

  1. Not having a clear idea of what to automate
  2. Difficulties in picking up the right automation tool
  3. Lack of communication and collaboration within the team
  4. Difficulties in choosing a testing approach
  5. High upfront costs
  6. Not having skilled resources for automation
  7. Understanding the prospects of stakeholders and end-users

So let’s have a closer look at the challenges.

1. Not Having a Clear Idea of What to Automate

If you believe that 100% automation is possible, you are dreaming. You can’t automate each and every single test case. Some tests will be difficult to automate due to technology constraints. Specifically, in areas such as compatibility, user interface, or recovery, most of the testing needs to be done manually. For example, some testing frameworks will not support test cases that run across several browser sessions or different devices. Therefore, before you start thinking about automation, you have to come up with a list of criteria that test cases must fulfil in order to be automatized.

The ROI on automated tests varies depending on several factors. Thus, you have to decide which test cases are critical and need to be given a high priority when automating. Normally, it’s the areas that are

  • exposed to risk,
  • of importance to clients,
  • or feature complex business logic.

Recognize these application areas and test case specifications to ensure that your automation efforts payback.

It’s a good idea to automate test cases that run in different environments, with different sets of data or large volumes of data. In contrast, you shouldn’t try to automate test cases that needed to be run once or twice like test cases for a rarely used feature. 

2. Difficulties in Picking up the Right Automation Tool

This is a major challenge most development companies go through when introducing automated testing. Test automation requires tools and development teams to find it difficult to choose the right tool for various reasons, as listed below.

  • Testers are lacking the necessary skills to make the most out of a particular automation tool.
  • Selected tools are not offering 100% test coverage.
  • The cost of automation tools exceeding the test budget.
  • Not knowing if the tool they need exists.

Various steps can be followed in order to mitigate these issues. For instance, if your testers don’t know how to use a specific automation tool effectively, you can arrange a training session with its provider, prepare an online course for them, or recruit a consultant who can help your testers to master it. If you’re still searching for the right automation tool, reach out to the testing community.  Forums like Stack Exchange are a valuable source of information.

Among numerous automated testing tools available in the market today, Testup is a new player that stands out of all the rest due to its excellent and unique features. It enables easy setup for users with a high focus on usability and supports complex test scenarios to boost your software quality. 

Testup covers all the essential use cases such as Front-end testing, End-to-End testing, CI/CD, Test-driven development (TDD), Robotic Process Automation(RPA) and many more. Codeless test automation is one most impressive features of Testup that saves enormous time for developers. In the future, Testup is likely to address most of the challenges organizations face when trying to adapt to automated testing.

3. Lack of Communication and Collaboration within the Team

Automated testing usually requires more communication and collaboration between team members than manual testing. You cannot run a successful testing process if the team fails to get involved adequately in setting automation targets and goals. Therefore, the team members need to be actively involved there.

Automation depends on historical test data, experience, and sometimes even proof of concept that can be obtained only through your team. Thus, the entire team should stay on the same page for automated testing to work properly.

Furthermore, you need to gain solid team management support on hand before you start with automated testing. It is also important to build a collaborative working environment where team members can communicate with each other regularly to deliver test results timely with minimum risk.

4. Difficulties in Choosing a Testing Approach

This is another most significant challenge automation engineers face when trying to go ahead with automated testing. They need to find out the right test automation approach to suit their needs. For that, they may need to ask the following questions from themselves:

  • How can we reduce the implementation and maintenance cost of test suites?
  • Will the selected automation tool be able to generate useful test reports?
  • Will these test suites last a long period of time at our company?

The above points are highly important when it comes to an agile development environment where the testing application constantly changes, and test automation should be implemented to identify these changes, helping the team stick into a cost-effective maintenance strategy. Therefore, you should consider embracing an automation solution that automatically detects these changes and updates or re-validates the test.

5. High Upfront Costs

Test automation will involve high costs at its initial phase. These costs associated with setting up a test automation suite hold back many companies from incorporating automated testing into their development process.

Therefore, make sure to analyze and create a test automation framework including elements like libraries of reusable functions before proposing the automation suite to the management. You need to add hardware costs as well as software costs, including licensing costs if you intend to use paid software. Even if you pick an open-source solution, you still have to consider some costs, such as maintaining and providing training. 

Convincing the management that test automation is worth all the effort might be a difficult task. However, the potential ROI is a clever argument there, so prepare an automation strategy along with a complete budget and go for it.

6. Not Having Skilled Resources for Automation

In automated testing, the teams have to design and maintain the necessary test automation frameworks, along with test scripts, build solutions, and many other vital elements. Therefore, the teams need to have a solid understanding of the design and implementation of the automated testing framework to work as expected. That’s the reason why you should build your team with testing resources who possess strong programming skills and test automation skills.

However, with Testup, organizations can eliminate the demand for skilled resources in automated testing since it is a no-code automation tool.

7. Understanding the Prospects of Stakeholders and End-Users

It doesn’t matter how perfect your testing tools or resources are – you have to always bear in mind that testing can’t be conducted in a vacuum. It serves a specific objective which is basically improving your software product.

While automated testing is a great option for automatically checking your software for bugs, humans still need to carry out non-automated testing scenarios. These tests return plenty of useful information to make optimal decisions for improving the system, not in the view of developers but the end-users.

Because of that, it’s important to make sure that the management, your testing team, and other stakeholders all understand and accept the expected results of your test automation strategy before implementing it.

Bottom Line

While test automation can bring plenty of benefits to testing teams and organizations, it can be difficult to implement due to various issues and constraints. Anyway, if you identify the challenges involved in introducing automated testing and prepare well for them, your organization can reap the benefits of it.