NoCode Test Automation - bcs.org · The Automated Tester 15 Web Applications Web ... WATIR API Http...

34
NoCode Test Automation An effective and efficient approach to test automation... Senyo Affram Lead Engineer Fofx Solutions Inc. www.fofxsolutions.com

Transcript of NoCode Test Automation - bcs.org · The Automated Tester 15 Web Applications Web ... WATIR API Http...

NoCode Test Automation An effective and efficient approach to test automation...

Senyo Affram Lead Engineer Fofx Solutions Inc. www.fofxsolutions.com

Who Am I?

• Lead Engineer at Fofx Solutions

• 7 years in IT

• 5 years in Test/Test Automation

2

Who are you?

• Name

• Company

• Product Mix (web, web services, etc.)

• Test/ Test Automation Tools

3

Content

• Overview

• Why Test Automation?

• Record-And-Playback vs. Scripting

• Manual Tester vs. Automated Tester

• Some Test Automation Issues

• What is NoCode Test Automation?

• NoCode Test Automation Framework Design

• An Introduction to RobotFramework/RobotEngine

• Characteristics of NoCode Test Automation

• NoCode Test Automation At SpotOn

4

Overview

• Test Automation Should Not Be Coding Intensive

• Automated Test Scripts Should Be Expressive

• The Automation Framework Should Easily Adapt To Changes

5

Why Test Automation?

• Save Cost/Time

• Increase Test Coverage

• Improve Software Quality

• Increase Competitiveness

• Free Human Resources

6

Record-and-Playback vs. Scripting

7

“Record-and-Playback”

• Quick Demo (Update Customer Profile)

• Share Experience

8

“Record-and-Playback”

Pro:

• Quick and Easy

Cons:

• Limited to UI

• Environment Specific

• UI Synchronization Issues

• Hard-Coded Values

• Difficult to Maintain

• Difficult to Create Highly Reusable Component

9

Scripting

• Quick Demo (Update Customer Profile)

• Share Experience

10

Scripting

Pros:

• Reusable Component

• Power to Do More

Cons:

• Programming Skills Required

• Programming Language Specific

• Test Not Easy To Read*

• Maintenance Issue*

• Takes Longer*

• Risk of False Positive*

• The Test Scripts Have to be Tested As Well*

11

Manual Tester vs. Automated Tester

12

The Manual Tester

13

Web Applications

Web Services

Databases

Mobile Applications

Files

The Manual Tester

Pros: • Intelligent • No Testing Limitations • Prepares Test Data/Environment • Reliable • Loves Documentation (Communicates Better) • Experienced • Change Tolerant

Cons: • May Take Time to Test

14

The Automated Tester

15

Web Applications

Web Services

Oracle Databases

Image Files

MySql Databases

Postgres Databases

Excel Files

XML Files

Android Applications

iOS Applications

WATIR

SoapUI

ojdbc.jar

mysql.*jar

Robotium

xmlunit.jar

Appium

Selenium

someimage.*jar

poi.*jar

postgres.*jar

Hybrid Applications

The Automated Test

Pros:

• Runs Fast

• More Repeatable

Cons:

• Not Really Intelligent

• Has Testing Limitation

• Not Always Reliable

• Not Always Document Friendly

• Subject To Change (Migration, Upgrades)

• May Have Bugs*

16

Some Test Automation Issues

• Speed of Test Development

• Technical Skills

• Test Tool Limitation

• Maintenance

• Change Adaptation

• Comprehensive Test Reports

• Intelligence

• Stability

• Extendibility

• Integration

17

What is NoCode Test Automation?

• A test automation solution that requires no coding in order to create test cases.

• The test framework is decoupled from the test case design and creation.

• The test framework provides very generic keywords/functions that are called to created test cases.

• The test framework is broken into a number of loosely coupled layers.

• The test framework is very robust.

• The test cases are very expressive.

• The test reports are easy to read and understand.

18

NoCode Test Automation Framework Design

Selenium API

HTTPClient API

Oracle DB API

MySql DB API

FTP API

SSH API

WATIR API

Http Client Impl

Web Impl

FTP Impl

Database Impl

SSH Impl

Web Keywords

Http Keywords

Db Keywords

FTP Keywords

SSH Keywords

Test Cases

Test Case Layer API Layer Keyword Layer Implementation Layer

19

Yet Another Layer…

Http Client Impl

Web Impl

FTP Impl

Database Impl

SSH Impl

Web Keywords

Http Keywords

Db Keywords

FTP Keywords

SSH Keywords

Test Case Layer API Layer Keyword Layer Implementation Layer

Login Portal

Update Profile

Logout Portal

Check Portal Db

Update Facebook

Business Component Layer

20

Test Cases

The NoCode Tester

21

Web Applications

Web Services

Databases

Mobile Applications

Files

NoCode Test Framework

Scripting vs. NoCode

22

Number of Scripts

Number of Test Cases

Scripting NoCode

Introduction To Robotframework Let’s go the site:

http://robotframework.org

23

Introduction To RobotEngine Let’s check it out:

http://www.fofxsolutions.com/robotengine/

24

RobotEngine

• Walkthrough of the Framework (test, test suites, resources, tags, ride…)

• Demonstrate the Various Layers (test, business, implementation, API)

• Quick Test Creation Demo (Update Customer Profile)

25

Characteristics of NoCode Test Automation

• No Coding Required (for test case creation)

• Quick Test Creation

• Increased Ability to Test

• Minimum Test Tool Limitations

• Easy to Maintain

• Adapts Easily to Change

• Meaningful Test Reports

• Intelligent*

• Highly Stable

• Highly Extendable

• Easy to Integrate

26

NoCode Test Automation at SpotOn

27

SpotOn Applications

• Customer Portal*

• Merchant Portal

• Tablet Application for Merchant

• Mobile Application for Customer

• Web Application for Internal Admin

28

Test/Test Automation Challenges - SpotOn

• Not Enough Time to Test

• Not Enough Resources to Test

• Poor Test Case Quality

• Scant Automated Test

• No Regression Test Suite

• Very Short Release Cycles

• Good Number of Production Defects

29

Test/Test Automation Strategy - SpotOn

• Automate as Much As Possible (not just test cases)

• Test Cases Should be of High Quality

• Test Cases Should be Expressive

• Test Cases Should be Categorized

• Test Cases Should be Repeatable

• Test Case Creation Should be Very Quick

• Test Cases Should be Easy to Maintain

• All Automated Tests Should Run Continuously

30

Test Automation Project Demo - SpotOn

• Demo the SpotOn Test Automation Project

31

Test/Test Automation Achievements - SpotOn

• Quick Test Case Creation

• Automated Regression Test Suite

• More Test Coverage

• Easy to Maintain Test Cases

• Easy to Read Test Cases

• Improved Overall Software Quality

32

Thank You!

33

Contact:

Web: www.fofxsolutions.com

Email: [email protected]

Phone: +1-312-566-7794

34