Comments
Description
Transcript
NoCode Test Automation Senyo Affram
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 Databases Web Services Web Applications Mobile Applications Files 13 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 MySql Databases Postgres Databases Oracle Databases Android Applications Hybrid Applications iOS Applications Robotium postgres.*jar mysql.*jar Selenium Appium ojdbc.jar Web Services SoapUI XML Files xmlunit.jar someimage.*jar Web Applications Image Files poi.*jar WATIR Excel Files 15 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 Web Keywords Selenium API Web Impl WATIR API Http Keywords Test Cases Http Client Impl HTTPClient API Oracle DB API Db Keywords Database Impl MySql DB API Test Case Layer FTP Keywords FTP Impl FTP API SSH Keywords SSH Impl SSH API Keyword Layer Implementation Layer API Layer 19 Yet Another Layer… Login Portal Web Keywords Web Impl Http Keywords Http Client Impl Db Keywords Database Impl FTP Keywords FTP Impl SSH Keywords SSH Impl Update Profile Logout Portal Test Cases Update Facebook Check Portal Db Test Case Layer Business Component Layer Keyword Layer Implementation Layer API Layer 20 The NoCode Tester Databases Web Services Mobile Applications NoCode Test Framework Web Applications Files 21 Scripting vs. NoCode Number of Scripts Number of Test Cases Scripting NoCode 22 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