SlideShare a Scribd company logo
1 of 19
Testing Automation
2
Testing Challenges
Coverage of range of devices and OS versions
Regression testing cycle is repetitive process due to which some
flows get skipped
Quicker Time to Market
Why Automation ?????
Fast: Runs tests significantly faster than human users.
Repeatable: Testers can test how the application reacts after repeated execution of the
same operation.
Reusable: Tests can be re-used on different versions of the software.
Reliable: Tests perform precisely the same operation each time they are run thereby
eliminating human error.
Comprehensive: Testers can build test suites of tests that covers every feature in
software software application
Programmable: Testers can program sophisticated tests that bring hidden information.
4
Possible options for Automation
• Frank : It is a combination of Cucumber and Json Commands sender to the server within
native application.
 Pros :
− Css Style syntax.
− Command Line support.
 Cons :
− Driven by Cucumber based on ruby difficult to understand.
− Difficult to run on devices.
− Less Support for gestures.
5
Possible options for Automation
• KIF : It is an Objective – C based relatively new framework.
 Pros :
− Test are in Objective – C easier to pick.
− Command line support.
− Reasonable support for gestures.
 Cons :
− Fair amount of changes in production code.
− Tricky to integrate with back end stubs because it’s all running in-process.
− Not stand alone.
Possible options for Automation
• UIAutomation : Apple's own solution for testing. It runs tests in Javascript using instruments.
 Pros :
− Most closely linked to the device.
− Very good support for gestures.
 Cons :
− Not so good integration with the command line.
− Can't integrate with 3rd
party testing tools.
− Less Support for gestures.
Preparing
Your
Application
8
Add accessibility info to the UI:
 1. Interface Builder:
2. Programmatically:
Eg. - (UITableViewCell *)tableView:(UITableView *)tableView
cellForRowAtIndexPath:(NSIndexPath *)indexPath { ..
..
..
cell.isAccessibilityElement = YES;
cell.accessibilityLabel = @"user name“
..
..
}
Writing UI
Automation
Scripts
 Writing the test in JavaScript in editor of your choice.
 Few pre-requisites:
1) var target = UIATarget.localTarget() - a sort of proxy for the
user of the application.
2) var application = target.frontMostApp() - access to the top-
level structure of your application .
3) var window = app.mainWindow() - access to things like the
parent view, child views, pickers, sliders, etc.
Running
Your
Scripts
When you launch Instruments, choose "Automation" from the iPhone
templates.
UI Automation Dashboard :
Click here
Text Editor to write
the scripts
Press “Record” to start
the automation process
Debugging
Your
Tests
var target = UIATarget.localTarget();
var app = target.frontMostApp();
var window = app.mainWindow();
..
..
..
UIALogger.logStart(“test”);
try{
// some code
if(true){
UIALogger.logPass(“test”);
} else{
UIALogger.logFail(“test);
target.captureScreenWithName(“test-failed”);
}
}
catch(e){
UIALogger.logError(e);
UIALogger.logFail(“test”);
}
Provision for taking application
screen shot
in case of test script failure
or application crash
THANK YOU

More Related Content

What's hot

Open Source Software Testing Tools
Open Source Software Testing ToolsOpen Source Software Testing Tools
Open Source Software Testing ToolsVaruna Harshana
 
Testing Tool Evaluation Criteria
Testing Tool Evaluation CriteriaTesting Tool Evaluation Criteria
Testing Tool Evaluation Criteriabasma_iti_1984
 
UFT Automation Framework Introduction
UFT Automation Framework IntroductionUFT Automation Framework Introduction
UFT Automation Framework IntroductionHimal Bandara
 
Software Testing Tools | Edureka
Software Testing Tools | EdurekaSoftware Testing Tools | Edureka
Software Testing Tools | EdurekaEdureka!
 
Automation Testing with Test Complete
Automation Testing with Test CompleteAutomation Testing with Test Complete
Automation Testing with Test CompleteVartika Saxena
 
Choosing the Best Open Source Test Automation Tool for You
Choosing the Best Open Source Test Automation Tool for YouChoosing the Best Open Source Test Automation Tool for You
Choosing the Best Open Source Test Automation Tool for YouPerfecto by Perforce
 
Why to choose HP UFT: Automation testing tool
Why to choose HP UFT: Automation testing toolWhy to choose HP UFT: Automation testing tool
Why to choose HP UFT: Automation testing toolBugRaptors
 
Introduction to Automation Testing
Introduction to Automation TestingIntroduction to Automation Testing
Introduction to Automation TestingArchana Krushnan
 
Top ten software testing tools
Top ten software testing toolsTop ten software testing tools
Top ten software testing toolsJanBask Training
 
Load runner & win runner
Load runner & win runnerLoad runner & win runner
Load runner & win runnerHimanshu
 
Software Automation Testing Introduction
Software Automation Testing IntroductionSoftware Automation Testing Introduction
Software Automation Testing IntroductionNarayanan Palani
 
Testing the User Interface - Coded UI Tests with Visual Studio 2010
Testing the User Interface - Coded UI Tests with Visual Studio 2010Testing the User Interface - Coded UI Tests with Visual Studio 2010
Testing the User Interface - Coded UI Tests with Visual Studio 2010Eric D. Boyd
 

What's hot (20)

Open Source Software Testing Tools
Open Source Software Testing ToolsOpen Source Software Testing Tools
Open Source Software Testing Tools
 
How to be an awesome test automation professional
How to be an awesome test automation professionalHow to be an awesome test automation professional
How to be an awesome test automation professional
 
Testing Tool Evaluation Criteria
Testing Tool Evaluation CriteriaTesting Tool Evaluation Criteria
Testing Tool Evaluation Criteria
 
UFT Automation Framework Introduction
UFT Automation Framework IntroductionUFT Automation Framework Introduction
UFT Automation Framework Introduction
 
Test automation within a scrum process
Test automation within a scrum processTest automation within a scrum process
Test automation within a scrum process
 
Software Testing Tools | Edureka
Software Testing Tools | EdurekaSoftware Testing Tools | Edureka
Software Testing Tools | Edureka
 
Automation Testing with Test Complete
Automation Testing with Test CompleteAutomation Testing with Test Complete
Automation Testing with Test Complete
 
Comparison manual & automation
Comparison manual & automationComparison manual & automation
Comparison manual & automation
 
Choosing the Best Open Source Test Automation Tool for You
Choosing the Best Open Source Test Automation Tool for YouChoosing the Best Open Source Test Automation Tool for You
Choosing the Best Open Source Test Automation Tool for You
 
Why to choose HP UFT: Automation testing tool
Why to choose HP UFT: Automation testing toolWhy to choose HP UFT: Automation testing tool
Why to choose HP UFT: Automation testing tool
 
Test Automation
Test Automation Test Automation
Test Automation
 
Uft Basics
Uft BasicsUft Basics
Uft Basics
 
Test complete, work done so far
Test complete, work done so farTest complete, work done so far
Test complete, work done so far
 
[Binh nguyen] Mobile Application Automation Testing iOS and Android
[Binh nguyen] Mobile Application Automation Testing iOS and Android [Binh nguyen] Mobile Application Automation Testing iOS and Android
[Binh nguyen] Mobile Application Automation Testing iOS and Android
 
Introduction to Automation Testing
Introduction to Automation TestingIntroduction to Automation Testing
Introduction to Automation Testing
 
Testing_with_TestComplete
Testing_with_TestCompleteTesting_with_TestComplete
Testing_with_TestComplete
 
Top ten software testing tools
Top ten software testing toolsTop ten software testing tools
Top ten software testing tools
 
Load runner & win runner
Load runner & win runnerLoad runner & win runner
Load runner & win runner
 
Software Automation Testing Introduction
Software Automation Testing IntroductionSoftware Automation Testing Introduction
Software Automation Testing Introduction
 
Testing the User Interface - Coded UI Tests with Visual Studio 2010
Testing the User Interface - Coded UI Tests with Visual Studio 2010Testing the User Interface - Coded UI Tests with Visual Studio 2010
Testing the User Interface - Coded UI Tests with Visual Studio 2010
 

Viewers also liked

ניטור ומחקר וידיאו באינטרנט
ניטור ומחקר וידיאו באינטרנטניטור ומחקר וידיאו באינטרנט
ניטור ומחקר וידיאו באינטרנטIFAT GROUP
 
People Analytics slides for Nikkei D3 Conference
People Analytics slides for Nikkei D3 Conference People Analytics slides for Nikkei D3 Conference
People Analytics slides for Nikkei D3 Conference Airline Design
 
Rumba dance lesson el paso tx
Rumba dance lesson el paso txRumba dance lesson el paso tx
Rumba dance lesson el paso txshundoballroom123
 
סקירת ערים ברשת החברתית- כנס דוברי רשויות
סקירת ערים ברשת החברתית- כנס דוברי רשויותסקירת ערים ברשת החברתית- כנס דוברי רשויות
סקירת ערים ברשת החברתית- כנס דוברי רשויותIFAT GROUP
 
Market research presentation
Market research presentationMarket research presentation
Market research presentationsedanur1234
 
Jocelyn Russo Final -Culture Club Presentation
Jocelyn Russo Final -Culture Club PresentationJocelyn Russo Final -Culture Club Presentation
Jocelyn Russo Final -Culture Club PresentationJocelyn Russo
 
Gateway Entrep Case Study Individual Final (2) (1)
Gateway Entrep Case Study Individual Final (2) (1)Gateway Entrep Case Study Individual Final (2) (1)
Gateway Entrep Case Study Individual Final (2) (1)Robin Hoke
 
LED LIGHTING - MICRO STRATEGIC CONSULTANCY FOR INDIAN / SAARC COUNTIRES
LED LIGHTING - MICRO STRATEGIC CONSULTANCY FOR INDIAN / SAARC COUNTIRESLED LIGHTING - MICRO STRATEGIC CONSULTANCY FOR INDIAN / SAARC COUNTIRES
LED LIGHTING - MICRO STRATEGIC CONSULTANCY FOR INDIAN / SAARC COUNTIRESAK MISHRA CONSULTING SERVICES
 
Location scouting seda
Location scouting   sedaLocation scouting   seda
Location scouting sedasedanur1234
 

Viewers also liked (20)

The Leaky Pipeline
The Leaky PipelineThe Leaky Pipeline
The Leaky Pipeline
 
ניטור ומחקר וידיאו באינטרנט
ניטור ומחקר וידיאו באינטרנטניטור ומחקר וידיאו באינטרנט
ניטור ומחקר וידיאו באינטרנט
 
People Analytics slides for Nikkei D3 Conference
People Analytics slides for Nikkei D3 Conference People Analytics slides for Nikkei D3 Conference
People Analytics slides for Nikkei D3 Conference
 
Rumba dance lesson el paso tx
Rumba dance lesson el paso txRumba dance lesson el paso tx
Rumba dance lesson el paso tx
 
סקירת ערים ברשת החברתית- כנס דוברי רשויות
סקירת ערים ברשת החברתית- כנס דוברי רשויותסקירת ערים ברשת החברתית- כנס דוברי רשויות
סקירת ערים ברשת החברתית- כנס דוברי רשויות
 
Resume 2
Resume 2Resume 2
Resume 2
 
Content-tastic Calender 2015
Content-tastic Calender 2015Content-tastic Calender 2015
Content-tastic Calender 2015
 
Google Plus
Google PlusGoogle Plus
Google Plus
 
Fuel_Cell
Fuel_CellFuel_Cell
Fuel_Cell
 
Market research presentation
Market research presentationMarket research presentation
Market research presentation
 
Hollow Pipes (8)
Hollow Pipes (8)Hollow Pipes (8)
Hollow Pipes (8)
 
Jocelyn Russo Final -Culture Club Presentation
Jocelyn Russo Final -Culture Club PresentationJocelyn Russo Final -Culture Club Presentation
Jocelyn Russo Final -Culture Club Presentation
 
Kristen Maragh Resume
Kristen Maragh ResumeKristen Maragh Resume
Kristen Maragh Resume
 
Gateway Entrep Case Study Individual Final (2) (1)
Gateway Entrep Case Study Individual Final (2) (1)Gateway Entrep Case Study Individual Final (2) (1)
Gateway Entrep Case Study Individual Final (2) (1)
 
AIRINC Brochure
AIRINC BrochureAIRINC Brochure
AIRINC Brochure
 
C.V 2016
C.V 2016C.V 2016
C.V 2016
 
LED LIGHTING - MICRO STRATEGIC CONSULTANCY FOR INDIAN / SAARC COUNTIRES
LED LIGHTING - MICRO STRATEGIC CONSULTANCY FOR INDIAN / SAARC COUNTIRESLED LIGHTING - MICRO STRATEGIC CONSULTANCY FOR INDIAN / SAARC COUNTIRES
LED LIGHTING - MICRO STRATEGIC CONSULTANCY FOR INDIAN / SAARC COUNTIRES
 
RPH TAHUN 1 M1
RPH TAHUN 1 M1RPH TAHUN 1 M1
RPH TAHUN 1 M1
 
S CUBE IN CEO MAGAZINE -2016
S CUBE IN CEO MAGAZINE -2016S CUBE IN CEO MAGAZINE -2016
S CUBE IN CEO MAGAZINE -2016
 
Location scouting seda
Location scouting   sedaLocation scouting   seda
Location scouting seda
 

Similar to UIAutomation_Testing

Automated Software Testing Framework Training by Quontra Solutions
Automated Software Testing Framework Training by Quontra SolutionsAutomated Software Testing Framework Training by Quontra Solutions
Automated Software Testing Framework Training by Quontra SolutionsQuontra Solutions
 
Top 20 best automation testing tools
Top 20 best automation testing toolsTop 20 best automation testing tools
Top 20 best automation testing toolsQACraft
 
DEPLOYMENT OF CALABASH AUTOMATION FRAMEWORK TO ANALYZE THE PERFORMANCE OF AN ...
DEPLOYMENT OF CALABASH AUTOMATION FRAMEWORK TO ANALYZE THE PERFORMANCE OF AN ...DEPLOYMENT OF CALABASH AUTOMATION FRAMEWORK TO ANALYZE THE PERFORMANCE OF AN ...
DEPLOYMENT OF CALABASH AUTOMATION FRAMEWORK TO ANALYZE THE PERFORMANCE OF AN ...Journal For Research
 
4&5.pptx SOFTWARE TESTING UNIT-4 AND UNIT-5
4&5.pptx SOFTWARE TESTING UNIT-4 AND UNIT-54&5.pptx SOFTWARE TESTING UNIT-4 AND UNIT-5
4&5.pptx SOFTWARE TESTING UNIT-4 AND UNIT-5hemasubbu08
 
Automation Tool Overview
Automation Tool OverviewAutomation Tool Overview
Automation Tool OverviewANKUR-BA
 
Automation Tools Overview
Automation Tools OverviewAutomation Tools Overview
Automation Tools OverviewSachin-QA
 
Automated Generation, Evolution and Maintenance: a perspective for mobile GUI...
Automated Generation, Evolution and Maintenance: a perspective for mobile GUI...Automated Generation, Evolution and Maintenance: a perspective for mobile GUI...
Automated Generation, Evolution and Maintenance: a perspective for mobile GUI...Riccardo Coppola
 
[DevDay 2017] Automation Testing - Speaker: Nghia Khuong - Project Manager at...
[DevDay 2017] Automation Testing - Speaker: Nghia Khuong - Project Manager at...[DevDay 2017] Automation Testing - Speaker: Nghia Khuong - Project Manager at...
[DevDay 2017] Automation Testing - Speaker: Nghia Khuong - Project Manager at...DevDay.org
 
Automation Tools Overview
Automation Tools OverviewAutomation Tools Overview
Automation Tools OverviewMurageppa-QA
 
Unit Testing to Support Reusable for Component-Based Software Engineering
Unit Testing to Support Reusable for Component-Based Software EngineeringUnit Testing to Support Reusable for Component-Based Software Engineering
Unit Testing to Support Reusable for Component-Based Software Engineeringijtsrd
 
Automation Testing on Selenium by Quontra Solutions
Automation Testing on Selenium by Quontra SolutionsAutomation Testing on Selenium by Quontra Solutions
Automation Testing on Selenium by Quontra SolutionsQUONTRASOLUTIONS
 
Dive into Angular, part 5: Experience
Dive into Angular, part 5: ExperienceDive into Angular, part 5: Experience
Dive into Angular, part 5: ExperienceOleksii Prohonnyi
 
Basics of Scriptless Automation for Web and Mobile Apps (1).pdf
Basics of Scriptless Automation for Web and Mobile Apps (1).pdfBasics of Scriptless Automation for Web and Mobile Apps (1).pdf
Basics of Scriptless Automation for Web and Mobile Apps (1).pdfpcloudy2
 
Beyond Static Analysis: Integrating .NET Static Analysis with Unit Testing a...
Beyond Static Analysis: Integrating .NET  Static Analysis with Unit Testing a...Beyond Static Analysis: Integrating .NET  Static Analysis with Unit Testing a...
Beyond Static Analysis: Integrating .NET Static Analysis with Unit Testing a...Erika Barron
 
Lecture (Software Testing).pptx
Lecture (Software Testing).pptxLecture (Software Testing).pptx
Lecture (Software Testing).pptxskknowledge
 

Similar to UIAutomation_Testing (20)

Automated Software Testing Framework Training by Quontra Solutions
Automated Software Testing Framework Training by Quontra SolutionsAutomated Software Testing Framework Training by Quontra Solutions
Automated Software Testing Framework Training by Quontra Solutions
 
Top 20 best automation testing tools
Top 20 best automation testing toolsTop 20 best automation testing tools
Top 20 best automation testing tools
 
DEPLOYMENT OF CALABASH AUTOMATION FRAMEWORK TO ANALYZE THE PERFORMANCE OF AN ...
DEPLOYMENT OF CALABASH AUTOMATION FRAMEWORK TO ANALYZE THE PERFORMANCE OF AN ...DEPLOYMENT OF CALABASH AUTOMATION FRAMEWORK TO ANALYZE THE PERFORMANCE OF AN ...
DEPLOYMENT OF CALABASH AUTOMATION FRAMEWORK TO ANALYZE THE PERFORMANCE OF AN ...
 
Test automation proposal
Test automation proposalTest automation proposal
Test automation proposal
 
4&5.pptx SOFTWARE TESTING UNIT-4 AND UNIT-5
4&5.pptx SOFTWARE TESTING UNIT-4 AND UNIT-54&5.pptx SOFTWARE TESTING UNIT-4 AND UNIT-5
4&5.pptx SOFTWARE TESTING UNIT-4 AND UNIT-5
 
Automation Tool Overview
Automation Tool OverviewAutomation Tool Overview
Automation Tool Overview
 
Automation Tools Overview
Automation Tools OverviewAutomation Tools Overview
Automation Tools Overview
 
Automated Generation, Evolution and Maintenance: a perspective for mobile GUI...
Automated Generation, Evolution and Maintenance: a perspective for mobile GUI...Automated Generation, Evolution and Maintenance: a perspective for mobile GUI...
Automated Generation, Evolution and Maintenance: a perspective for mobile GUI...
 
Resume_QA
Resume_QAResume_QA
Resume_QA
 
[DevDay 2017] Automation Testing - Speaker: Nghia Khuong - Project Manager at...
[DevDay 2017] Automation Testing - Speaker: Nghia Khuong - Project Manager at...[DevDay 2017] Automation Testing - Speaker: Nghia Khuong - Project Manager at...
[DevDay 2017] Automation Testing - Speaker: Nghia Khuong - Project Manager at...
 
Automation Tools Overview
Automation Tools OverviewAutomation Tools Overview
Automation Tools Overview
 
SDET UNIT 4.pptx
SDET UNIT 4.pptxSDET UNIT 4.pptx
SDET UNIT 4.pptx
 
SE2011_10.ppt
SE2011_10.pptSE2011_10.ppt
SE2011_10.ppt
 
Testing concepts
Testing conceptsTesting concepts
Testing concepts
 
Unit Testing to Support Reusable for Component-Based Software Engineering
Unit Testing to Support Reusable for Component-Based Software EngineeringUnit Testing to Support Reusable for Component-Based Software Engineering
Unit Testing to Support Reusable for Component-Based Software Engineering
 
Automation Testing on Selenium by Quontra Solutions
Automation Testing on Selenium by Quontra SolutionsAutomation Testing on Selenium by Quontra Solutions
Automation Testing on Selenium by Quontra Solutions
 
Dive into Angular, part 5: Experience
Dive into Angular, part 5: ExperienceDive into Angular, part 5: Experience
Dive into Angular, part 5: Experience
 
Basics of Scriptless Automation for Web and Mobile Apps (1).pdf
Basics of Scriptless Automation for Web and Mobile Apps (1).pdfBasics of Scriptless Automation for Web and Mobile Apps (1).pdf
Basics of Scriptless Automation for Web and Mobile Apps (1).pdf
 
Beyond Static Analysis: Integrating .NET Static Analysis with Unit Testing a...
Beyond Static Analysis: Integrating .NET  Static Analysis with Unit Testing a...Beyond Static Analysis: Integrating .NET  Static Analysis with Unit Testing a...
Beyond Static Analysis: Integrating .NET Static Analysis with Unit Testing a...
 
Lecture (Software Testing).pptx
Lecture (Software Testing).pptxLecture (Software Testing).pptx
Lecture (Software Testing).pptx
 

UIAutomation_Testing

  • 2. 2 Testing Challenges Coverage of range of devices and OS versions Regression testing cycle is repetitive process due to which some flows get skipped Quicker Time to Market
  • 3. Why Automation ????? Fast: Runs tests significantly faster than human users. Repeatable: Testers can test how the application reacts after repeated execution of the same operation. Reusable: Tests can be re-used on different versions of the software. Reliable: Tests perform precisely the same operation each time they are run thereby eliminating human error. Comprehensive: Testers can build test suites of tests that covers every feature in software software application Programmable: Testers can program sophisticated tests that bring hidden information.
  • 4. 4 Possible options for Automation • Frank : It is a combination of Cucumber and Json Commands sender to the server within native application.  Pros : − Css Style syntax. − Command Line support.  Cons : − Driven by Cucumber based on ruby difficult to understand. − Difficult to run on devices. − Less Support for gestures.
  • 5. 5 Possible options for Automation • KIF : It is an Objective – C based relatively new framework.  Pros : − Test are in Objective – C easier to pick. − Command line support. − Reasonable support for gestures.  Cons : − Fair amount of changes in production code. − Tricky to integrate with back end stubs because it’s all running in-process. − Not stand alone.
  • 6. Possible options for Automation • UIAutomation : Apple's own solution for testing. It runs tests in Javascript using instruments.  Pros : − Most closely linked to the device. − Very good support for gestures.  Cons : − Not so good integration with the command line. − Can't integrate with 3rd party testing tools. − Less Support for gestures.
  • 8. 8 Add accessibility info to the UI:  1. Interface Builder:
  • 9. 2. Programmatically: Eg. - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { .. .. .. cell.isAccessibilityElement = YES; cell.accessibilityLabel = @"user name“ .. .. }
  • 11.  Writing the test in JavaScript in editor of your choice.  Few pre-requisites: 1) var target = UIATarget.localTarget() - a sort of proxy for the user of the application. 2) var application = target.frontMostApp() - access to the top- level structure of your application . 3) var window = app.mainWindow() - access to things like the parent view, child views, pickers, sliders, etc.
  • 12.
  • 13.
  • 15. When you launch Instruments, choose "Automation" from the iPhone templates.
  • 16. UI Automation Dashboard : Click here Text Editor to write the scripts Press “Record” to start the automation process
  • 18. var target = UIATarget.localTarget(); var app = target.frontMostApp(); var window = app.mainWindow(); .. .. .. UIALogger.logStart(“test”); try{ // some code if(true){ UIALogger.logPass(“test”); } else{ UIALogger.logFail(“test); target.captureScreenWithName(“test-failed”); } } catch(e){ UIALogger.logError(e); UIALogger.logFail(“test”); } Provision for taking application screen shot in case of test script failure or application crash