• Home
  • Blog
  • GUI Test Automation | SHIFT Racine Framework

GUI Test Automation | SHIFT Racine Framework QA / Software Testing

Dec 15, 2020 Namiko

GUI Test Automation | SHIFT Racine Framework

What's Stopping Your Team?

Suppose any software or app were to succeed in the digital market. In that case, the minimum consumers expect is to provide a bug-free user experience regardless of device, browser, and operating system. However, what gives us headaches is that with products equipped with increasingly sophisticated features to win the competition, manual testing to verify each of the components has become such a complicated and long-winded task for us humans.

Nowadays, we feel it’s rare to come across a Quality Assurance And Testing Team that doesn’t wish to automate testing that is so energy-consuming. However, apprehensions regarding its implementation might stop many groups from switching to automation. You’ve been there; we’ve all been there. But if executed right with the right expertise, we assure you that automation testing is the best productivity booster you can take advantage of. This article will discuss keys to successful automation, standard practices, and our best-selling automation framework, “Racine.”

Rule #1: Not All Tests Can Be Automated

Since comprehensive testing is essential for optimal software operation, automation helps to make testers’ lives easier by letting them manually test only what they have to. For example, repetitive tests like regression and integration tests are prone to human error and are best left to machines.

However, automation testing requires the proper automation framework and technical knowledge to yield results. In other words, the key to success is to choose the appropriate framework made with languages your developers/testers are used to and ONLY automate what is necessary.

Deciding Which Tests To Automate

Let’s remember, it is NOT possible to automate every test since some of them can only be conducted with human judgment. So, every test automation plan must begin with narrowing down which tests will benefit from being automated.

We identified and advise tests with the following characteristics should be automated:

  1. Tests that require repetitive action with vast amounts of data
  2. Tests that prone to human error
  3. Tests that need to use multiple data sets
  4. Tests that extend across multiple builds
  5. Tests that must run on different platforms or configurations
  6. Tests that focus on frequently used functions

3 Types Of Tests

To ensure the highest quality of software, the following three distinct tests are often employed – each one assessing a unique aspect of the product in order to thoroughly evaluate the software quality assurance:

GUI Test:

  • End-to-end testing to simulate the actual user environment
  • Absolutely necessary to verify a product works at the end of the testing process
  • Can be costly, therefore should be selected

API Test

  • Can be executed with less time, used to verify everything works other than GUI
  • Relatively easy can be left to testers to create a test case and execute
  • Systems with no user-facing interface may execute API tests as end-to-end

Unit Test:

  • Used to check program logic in units
  • Speedy and stable, suitable for comprehensive verification
  • Focus is on units, so its purpose is different from the overall system and integration testing

What’s Commonly Automated

Generally, it is considered unit testing is best executed with accuracy by developers as they develop features and components, while “the rest” should be a collective effort between developers and tester. At SHIFT ASIA, a software testing services company, we have done the same but “the rest” involving GUI is the heaviest part. For that, we have relied on “Racine” which we use for most of our automation projects to minimize initial setup and accelerate the process.

What Racine Offers

Racine is a GUI test automation tool built on open-source Selenium, designed to automate web application testing. In addition to Selenium, Racine utilizes technology such as Appium, Selenide, and Allure and functions unique to Racine to meet various testing needs on the mobile application side.

Selenium is a widely used open-source framework, but it has limitations. Racine is an all-in-one automation tool that combines different elements to support functionality that Selenium alone cannot do.

Features include

  • Screenshot version comparison
  • Email receiving test
  • PDF version comparison
  • Data variation test
  • API calling test
  • Cloud test service data coordination

What we add to Selenium

  • Email receiving test
  • Data migration or reference using REST API
  • Screenshots and form PDF validation (image/text)

With Racine, thanks to its intuitive interface and functionality, environment setup only takes 2-4 days while most projects require about a week for the architect and custom java scripter to complete just the initial setup. SHIFT ASIA can assist ease the load so your team can focus more on building cool products and less on testing management or flaky automation scripts.

How Often do we update?
We regularly hold meetings with clients and engineers to understand needs to reflect those on our next release. This includes monthly updates to support OS, browser and latest versions.


Stay in touch with Us

What our Clients are saying

  • We asked Shift Asia for a skillful Ruby resource to work with our team in a big and long-term project in Fintech. And we're happy with provided resource on technical skill, performance, communication, and attitude. Beside that, the customer service is also a good point that should be mentioned.

    FPT Software

  • Quick turnaround, SHIFT ASIA supplied us with the resources and solutions needed to develop a feature for a file management functionality. Also, great partnership as they accommodated our requirements on the testing as well to make sure we have zero defect before launching it.

    Jienie Lab ASIA

  • Their comprehensive test cases and efficient system updates impressed us the most. Security concerns were solved, system update and quality assurance service improved the platform and its performance.