SlideShare a Scribd company logo
1 of 28
USER INTERFACE
TESTING
DAVID TZEMACH
WWW.DTVISIONTECH.COM
JAN 13 2016
OVERVIEW
• THE MAIN IDEA IS TO ENSURE THAT THE GUI IS DEVELOPED BASED ON THE WRITTEN SPECIFICATIONS.
• A GREAT UI THAT CODED AND TESTED EFFICIENTLY WILL ALLOW THE END USER TO PERFORM A HIGHLY
COMPLEX OPERATIONS WITHOUT A COMPLEX SET OF TASKS.
• THE MAIN GOAL OF GUI TESTS, IS TO HELP THE USER TO PERFORM IS TASKS IN THE EASIEST WAY AND
MOST IMPORTANTLY IN A WAY THAT SAVES IS TIME.
• THE GRAPHICAL USER INTERFACES (GUI) IS THE MAIN PLATFORM THAT WE USE TO MANIPULATE A GIVEN
APPLICATION.
THE CHALLENGE IN USER
INTERFACE TESTING
THE USER INTERFACE COMPLEXITY
THE SOFTWARE INDUSTRY CAN PRODUCE A VERY COMPLEX GUI (THAT CONTAINS
INFINITE SCENARIOS AND COMBINATIONS) FOR THE END CLIENTS. THEREFORE, IT’S
SIMPLE FACT THAT THE TESTING COMPLEXITY IS CUT BASED ON THIS PARAMETER (GUI
COMPLEXITY = MORE TESTS).
MULTIPLE PLATFORMS
NOT LIKE 30 YEARS, TODAY APPLICATIONS BECOME RELEVANT TO ALMOST EVERY DEVICE AND
SOFTWARE PLATFORMS, THE MORE PLATFORMS WE NEED TO SUPPORT THE MORE TESTING IS
NEEDED, JUST FOR EXAMPLE, THINK ABOUT AN APPLICATION THAT SHOULD BE COMPATIBLE WITH
THE FOLLOWING PLATFORMS:
HARDWARE PLATFORMS:
MOBILE PHONES. COMPUTERS, TABLETS, ETC.
SOFTWARE PLATFORMS:
WEB BROWSERS (FIREFOX, IE, CHROME…).
PHONES OS (ANDROID, WINOS, MACOS…).
DIFFERENT OS SYSTEMS (WIN/LINUX OS….)
HOW MUCH TESTING IS ENOUGH?
JUST LIKE ANY OTHER TESTING TYPES, YOU CAN SAY THAT YOU MAKE
ENOUGH TESTING ONLY WHEN ALL THE RISKS YOU ANALYZED AT THE
BEGINNING OF THE TESTING PROCESS ARE REMOVED.
AUTOMATION
YES OR NO?
WHY TO AUTOMATE…?
• GUI TESTING IS ONE OF THE MOST TIME CONSUMING TASKS IN THE SOFTWARE
INDUSTRY, AUTOMATION WILL REDUCE THIS TIME ON ANY REGRESSION CYCLE.
• AUTOMATION WILL SAVE YOU TIME AND MONEY.
• GUI TESTS MAY INVOLVE AN INFINITE TESTING SCENARIOS, AUTOMATION CAN
COVER AT LEAST 90% FROM THEM.
• THE SAME TESTS CAN BE EXECUTED DAILY.
WHY NOT TO AUTOMATE…?
• DEPENDS ON THE GUI COMPLEXITY, WRITING AUTOMATION TEST CASES COULD
TAKE AN INFINITE AMOUNT OF TIME.
• AUTOMATION CAN COVER MAJOR ASPECTS OF THE TESTED GUI, BUT FEW GUI
CASES CANNOT BE AUTOMATED.
• GUI IS ONE OF THOSE COMPONENTS THAT COULD BE CHANGED MULTIPLE TIMES,
AS A RESULT WE NEED TO INVEST MAJOR TIME TO MAINTAIN THE WRITTEN
AUTOMATION
RECOMMENDATIONS
FOR USER INTERFACE TESTING
DO NOT IGNORE THE HUMAN EYE
AUTOMATION IS THE BEST WAY TO TEST THE USER INTERFACE, BUT
THAT DOESN'T MEAN THAT YOU CAN IGNORE THE PERSPECTIVE,
VISION AND SENSE OF THE MANUAL TESTER.
AUTOMATE YOUR TESTS!
GUI TESTING IS PERFECT FOR AUTOMATION THAT ARE A KEY PART
FROM ANY REGRESSION CYCLE. THEREFORE, TRY TO AUTOMATE AS
MANY TEST CASES AVAILABLE.
TEST EFFICIENCY INSTEAD OF UNREALISTIC COVERAGE
THE FACT IS THAT GUI TESTS MAY LEAD TO AN INFINITE TESTING
MATRIX THAT YOU JUST CANNOT COVER, THE SOLUTION IS TO RUN
YOUR TESTS BASED ON AN EFFICIENT DESIGN THAT INVOLVE RISK
ANALYSIS AND PRIORITIZATION.
SEPARATION OF GUI OBJECTS
THE GRAPHICAL USER INTERFACE IS BUILT FROM A SET OF OBJECTS, WHEN DESIGNING YOUR TESTS
YOU SHOULD CONSIDER EVERY OBJECT AS “STAND ALONE” AND ASK YOURSELF FEW QUESTIONS:
• WHAT ARE THE OUTPUTS WE NEED TO GET WHEN USING THIS OBJECT?
• IS THERE ANY INTEGRATIONS WITH OTHER OBJECTS?
• WHAT ARE THE ATTRIBUTES OF THIS OBJECT?
• AVAILABLE INPUTS (IF SUPPORTED)?
• WHY WE NEED IT?
MAKE SURE THAT THE UI IS USABLE
THE UI IS THE MAIN CONSOLE THAT THE USER WILL USE WHILE
WORKING WITH THE SOFTWARE, YOUR TESTS MUST INVOLVE
ADDITIONAL LAYER THAT GUARANTEE THAT THE UI WILL BE USABLE
WHEN IT’S BEEN USED BY THE CLIENT.
FOLLOW THE INDUSTRY STANDARDS
EVERY UI MUST BE TESTED BASED ON A FEW BASIC STANDARDS THAT WE
USE IN THE SOFTWARE INDUSTRY, EXAMPLES:
• EVERY FIELD THAT USED TO FIND VALUES SHOULD BE CALLED “SEARCH” AND NOT “FIND”.
• KEYBOARD BUTTON “F1” SHOULD POINT TO USER HELP GUIDE ON WINDOWS PLATFORMS.
• IN WINDOWS OS THE “OK” BUTTON WILL BE ON THE LEFT OF THE “CANCEL” BUTTON (THE
OPPOSITE BEHAVIOR FROM MACOS).
CHECKLISTS AND GUIDELINES
FOR UI TESTING
You can find the full list at :
http://www.dtvisiontech.com/2014/05/qa-graphical-user-interface-testing.html
GENERAL TESTS
• IS THERE A DEFAULT OBJECT THAT HIGHLIGHTED WHEN THE USER STARTS THE APPLICATION?
• THE APPLICATION NAME SHOULD BE DISPLAYED ON THE APPLICATION MAIN FORM.
• THE “HELP” MENU SHOULD BE AVAILABLE IN THE MAIN SCREEN NAVIGATION BAR.
• IN MOST CASES GUI FORMS SHOULD HAVE THE MINIMIZE/MAXIMIZE OPTIONS.
• WEB APPLICATIONS SHOULD BE TESTED WITH DIFFERENT RESOLUTIONS
• CLOSING THE APPLICATION SHOULDN’T OCCUR WITHOUT AN APPROVAL NOTIFICATION THAT
ALLOWS THE USER TO “APPROVE” OR “DECLINE” THE OPERATION.
OBJECT COLOR
• IF FIELDS BECOME “GRAYED-OUT”, DO WE DISPLAY THE CORRECT COLOR?
• FORM TITLE AND DESCRIPTION DISPLAYED IN THE CORRECT COLOR?
• WHEN FIELD IN FOCUS, DO WE MARK IT WITH DIFFERENT COLOR?
• IS THE LOADING SCREEN DISPLAYED WITH THE CORRECT COLOR?
• ARE THE HYPERLINK COLORS ARE IN THE EXPECTED COLOR?
• FORM BACKGROUND COLOR IS THE CORRECT ONE?
• LOADING PROCESS BAR IN THE CORRECT COLOR?
• ARE THE BUTTONS ARE IN THE RIGHT COLOR?
OBJECTS SYNTAX
• IS THE TEXT IN ALL OBJECTS ARE WRITTEN WITH THE CORRECT FONT?
• IS THE TEXT IN ALL OBJECTS ARE WRITTEN WITH THE CORRECT SIZE?
• IS THE FIRST CHAR (IF RELEVANT) IN A WORD SET AS CAPITAL?
• ARE ALL THE SCREEN TEXTS ARE ALIGNED CORRECTLY?
CHECKLISTS AND GUIDELINES
FOR SPECIFIC OBJECTS
You can find the full list at :
http://www.dtvisiontech.com/2014/05/qa-graphical-user-interface-testing.html
RADIO BUTTONS
• EVERY BUTTON SHOULD EXECUTE A SPECIFIC FUNCTIONALITY.
• BY DEFAULT AT LEAST ONE BUTTON SHOULD BE SELECTED.
• EVERY BUTTON SHOULD BE AVAILABLE FOR SELECTION BOTH BY USING THE
MOUSE AND KEYBOARD.
VALIDATION FIELDS
• DO THE SRS DOC, SPECIFIED THAT THE AUTHENTICATION SUPPORT SPECIAL CHARACTERS?
• DO THE SRS DOC, SPECIFIED THAT THE AUTHENTICATION SUPPORT NEGATIVE VALUES?
• CHECK IF THE VALIDATION FIELDS SHOULD SUPPORT A SPECIFIC FORMAT OF VALUES.
• DO THE VALIDATION FIELDS ARE “CASE SENSITIVE”?
• IN ANY CASE OF INVALID AUTHENTICATION, THE USER SHOULD BE NOTIFIED THAT THE PROCESS
FAILED WITH AN APPROPRIATE NOTIFICATION.
DROP DOWN LISTS / LIST BOXES /COMBO BOX
• DROP DOWN VALUES MUST BE PRESENTED WITH ORDER, IN 90%, THE ORDER DETERMINED ALPHABETICALLY.
• NOT LIKE THE FIRST TWO OBJECTS, IN COMBO BOX, USER SHOULD HAVE THE OPTION TO INSERT TEXT.
• WHEN USER SELECT A VALUE, THIS VALUE SHOULD BE DISPLAYED ON THE MAIN DROP DOWN FIELD.
• IF THE LIST CONTAINS MULTIPLE VALUES, THE LIST SHOULD BE SCROLLABLE.
• DROP DOWN OBJECTS DOESN’T NEED TO SET WITH DEFAULT VALUES.
• WHEN THE DROP DOWN IN FOCUS THE KEYBOARD COMBINATION OF CTRL-F4 SHOULD OPEN THE LIST OF VALUES.
PUSH BUTTONS
• CONTINUING THE PREVIOUS BULLET, THE “SPACE” KEY SHOULD DO THE SAME ACTION.
• EVERY BUTTON SHOULD HAVE THE OPTION TO TRIGGER WITH AN APPROPRIATE KEYBOARD
SHORTCUT (YOU MUST MAKE SURE THAT DUPLICATE SHORTCUTS ARE NOT EXISTING).
• ESC SHOULD ACTIVE THE “CANCEL” BUTTON (IF AVAILABLE IN FORM).
• MAKE SURE THAT ALL BUTTONS ARE SIMILAR IN SIZE, SHAPE AND SIZE.
TEXT BOX
• THE TEXT BOX MUST SUPPORT COPY/PASTE OF SYNTAX FROM DIFFERENT LOCATIONS.
• DOUBLE CLICK ON THE TEXT SHOULD HIGHLIGHT THE ENTIRE SYNTAX.
• ENTER SYNTAX IN THE TEXT BOX WITH SPACE AT THE BEGINNING.
• ENTER SYNTAX IN THE TEXT BOX WITH SPACE AT THE END.
• USER HAS THE OPTION TO ENTER TEXT INTO THE BOX.
• DO WE SUPPORT UPPER AND LOWER CASE?
DATE AND TIME FIELDS
• CAN YOU CHANGE THE DATE/TIME (INSERT DAY IN THE YEAR LOCATION, INSERT YEAR IN THE
MONTH LOCATION...) ORDER AND APPROVE THE CHANGE?
• CHANGE TIME ZONES IN SPECIFIC COMPONENTS TO SEE HOW THE APPLICATION CAN HANDLE
DIFFERENT DATE FORMATS.
• APPLICATIONS MUST BE TESTED WITH OS “TIME ZONE” CHANGES, DIFFERENT COMPONENTS
THAT INTEGRATED WITH DIFFERENT TIME ZONES MAY LEAD TO FAILURES IN THE DATA
SYNCHRONIZATION.
FOR ADDITIONAL KB’S PLEASE
VISIT MY BLOG
WWW.DTVISIONTECH.COM

More Related Content

What's hot

Basic Guide to Manual Testing
Basic Guide to Manual TestingBasic Guide to Manual Testing
Basic Guide to Manual TestingHiral Gosani
 
Chapter 13 software testing strategies
Chapter 13 software testing strategiesChapter 13 software testing strategies
Chapter 13 software testing strategiesSHREEHARI WADAWADAGI
 
Mobile Application Testing Training Presentation
Mobile Application Testing Training PresentationMobile Application Testing Training Presentation
Mobile Application Testing Training PresentationMobiGnosis
 
Software Engineering- Types of Testing
Software Engineering- Types of TestingSoftware Engineering- Types of Testing
Software Engineering- Types of TestingTrinity Dwarka
 
Principles of Software testing
Principles of Software testingPrinciples of Software testing
Principles of Software testingMd Mamunur Rashid
 
White box & Black box testing
White box & Black box testingWhite box & Black box testing
White box & Black box testingNitishMhaske1
 
Introduction to performance testing
Introduction to performance testingIntroduction to performance testing
Introduction to performance testingRichard Bishop
 
Intro to Manual Testing
Intro to Manual TestingIntro to Manual Testing
Intro to Manual TestingAyah Soufan
 
Software testing methods, levels and types
Software testing methods, levels and typesSoftware testing methods, levels and types
Software testing methods, levels and typesConfiz
 
Mutation Testing
Mutation TestingMutation Testing
Mutation TestingESUG
 
End to end testing - strategies
End to end testing - strategiesEnd to end testing - strategies
End to end testing - strategiesanuvip
 
Software Testing 101
Software Testing 101Software Testing 101
Software Testing 101QA Hannah
 
Mobile Application Testing
Mobile Application TestingMobile Application Testing
Mobile Application TestingSWAAM Tech
 
Basic software-testing-concepts
Basic software-testing-conceptsBasic software-testing-concepts
Basic software-testing-conceptsmedsherb
 

What's hot (20)

Basic Guide to Manual Testing
Basic Guide to Manual TestingBasic Guide to Manual Testing
Basic Guide to Manual Testing
 
Chapter 13 software testing strategies
Chapter 13 software testing strategiesChapter 13 software testing strategies
Chapter 13 software testing strategies
 
Mobile Application Testing Training Presentation
Mobile Application Testing Training PresentationMobile Application Testing Training Presentation
Mobile Application Testing Training Presentation
 
Software Engineering- Types of Testing
Software Engineering- Types of TestingSoftware Engineering- Types of Testing
Software Engineering- Types of Testing
 
Principles of Software testing
Principles of Software testingPrinciples of Software testing
Principles of Software testing
 
White box & Black box testing
White box & Black box testingWhite box & Black box testing
White box & Black box testing
 
Introduction to performance testing
Introduction to performance testingIntroduction to performance testing
Introduction to performance testing
 
Types of testing
Types of testingTypes of testing
Types of testing
 
Compatibility Testing
Compatibility TestingCompatibility Testing
Compatibility Testing
 
Software testing ppt
Software testing pptSoftware testing ppt
Software testing ppt
 
Intro to Manual Testing
Intro to Manual TestingIntro to Manual Testing
Intro to Manual Testing
 
Software testing methods, levels and types
Software testing methods, levels and typesSoftware testing methods, levels and types
Software testing methods, levels and types
 
Manual testing
Manual testingManual testing
Manual testing
 
Software Quality
Software QualitySoftware Quality
Software Quality
 
Mutation Testing
Mutation TestingMutation Testing
Mutation Testing
 
End to end testing - strategies
End to end testing - strategiesEnd to end testing - strategies
End to end testing - strategies
 
Software Testing 101
Software Testing 101Software Testing 101
Software Testing 101
 
Mobile Application Testing
Mobile Application TestingMobile Application Testing
Mobile Application Testing
 
Manual testing ppt
Manual testing pptManual testing ppt
Manual testing ppt
 
Basic software-testing-concepts
Basic software-testing-conceptsBasic software-testing-concepts
Basic software-testing-concepts
 

Viewers also liked

UI Testing Best Practices - An Expected Journey
UI Testing Best Practices - An Expected JourneyUI Testing Best Practices - An Expected Journey
UI Testing Best Practices - An Expected JourneyOren Farhi
 
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
 
Agile vs. waterfall - The fundamentals differences
Agile vs. waterfall - The fundamentals differencesAgile vs. waterfall - The fundamentals differences
Agile vs. waterfall - The fundamentals differencesDavid Tzemach
 
The evolution of agile development process
The evolution of agile development processThe evolution of agile development process
The evolution of agile development processDavid Tzemach
 
All you need to know about regression testing | David Tzemach
All you need to know about regression testing | David TzemachAll you need to know about regression testing | David Tzemach
All you need to know about regression testing | David TzemachDavid Tzemach
 
The basics of UNIT testing
The basics of UNIT testing The basics of UNIT testing
The basics of UNIT testing David Tzemach
 
Usability Testing and QA 12 11-15
Usability Testing and QA 12 11-15Usability Testing and QA 12 11-15
Usability Testing and QA 12 11-15Shilpa Thanawala
 
An Introduction to Performance Testing
An Introduction to Performance TestingAn Introduction to Performance Testing
An Introduction to Performance TestingDavid Tzemach
 
Android testing
Android testingAndroid testing
Android testingJinaTm
 
Android testing
Android testingAndroid testing
Android testingBitbar
 
Non-functional Testing (NFT) Overview
Non-functional Testing (NFT) Overview Non-functional Testing (NFT) Overview
Non-functional Testing (NFT) Overview Assaf Halperin
 
Extreme programming (xp) | David Tzemach
Extreme programming (xp) | David TzemachExtreme programming (xp) | David Tzemach
Extreme programming (xp) | David TzemachDavid Tzemach
 
Non Functional Testing
Non Functional TestingNon Functional Testing
Non Functional TestingNishant Worah
 
Non-Functional testing
Non-Functional testingNon-Functional testing
Non-Functional testingKanoah
 
School Management System ppt
School Management System pptSchool Management System ppt
School Management System pptMohsin Ali
 
Testing webapps, websites and mobile applications
Testing webapps, websites and mobile applicationsTesting webapps, websites and mobile applications
Testing webapps, websites and mobile applicationsurgentpager
 
Usability Best Practices for Adopting Responsive Design
Usability Best Practices for Adopting Responsive DesignUsability Best Practices for Adopting Responsive Design
Usability Best Practices for Adopting Responsive DesignUXPA International
 
Establishing best practices to improve usefulness and usability of web interf...
Establishing best practices to improve usefulness and usability of web interf...Establishing best practices to improve usefulness and usability of web interf...
Establishing best practices to improve usefulness and usability of web interf...DRIscience
 

Viewers also liked (20)

UI Testing Best Practices - An Expected Journey
UI Testing Best Practices - An Expected JourneyUI Testing Best Practices - An Expected Journey
UI Testing Best Practices - An Expected Journey
 
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
 
Agile scrum roles
Agile scrum rolesAgile scrum roles
Agile scrum roles
 
Agile vs. waterfall - The fundamentals differences
Agile vs. waterfall - The fundamentals differencesAgile vs. waterfall - The fundamentals differences
Agile vs. waterfall - The fundamentals differences
 
The evolution of agile development process
The evolution of agile development processThe evolution of agile development process
The evolution of agile development process
 
All you need to know about regression testing | David Tzemach
All you need to know about regression testing | David TzemachAll you need to know about regression testing | David Tzemach
All you need to know about regression testing | David Tzemach
 
The basics of UNIT testing
The basics of UNIT testing The basics of UNIT testing
The basics of UNIT testing
 
Usability Testing and QA 12 11-15
Usability Testing and QA 12 11-15Usability Testing and QA 12 11-15
Usability Testing and QA 12 11-15
 
An Introduction to Performance Testing
An Introduction to Performance TestingAn Introduction to Performance Testing
An Introduction to Performance Testing
 
Introduction to android testing
Introduction to android testingIntroduction to android testing
Introduction to android testing
 
Android testing
Android testingAndroid testing
Android testing
 
Android testing
Android testingAndroid testing
Android testing
 
Non-functional Testing (NFT) Overview
Non-functional Testing (NFT) Overview Non-functional Testing (NFT) Overview
Non-functional Testing (NFT) Overview
 
Extreme programming (xp) | David Tzemach
Extreme programming (xp) | David TzemachExtreme programming (xp) | David Tzemach
Extreme programming (xp) | David Tzemach
 
Non Functional Testing
Non Functional TestingNon Functional Testing
Non Functional Testing
 
Non-Functional testing
Non-Functional testingNon-Functional testing
Non-Functional testing
 
School Management System ppt
School Management System pptSchool Management System ppt
School Management System ppt
 
Testing webapps, websites and mobile applications
Testing webapps, websites and mobile applicationsTesting webapps, websites and mobile applications
Testing webapps, websites and mobile applications
 
Usability Best Practices for Adopting Responsive Design
Usability Best Practices for Adopting Responsive DesignUsability Best Practices for Adopting Responsive Design
Usability Best Practices for Adopting Responsive Design
 
Establishing best practices to improve usefulness and usability of web interf...
Establishing best practices to improve usefulness and usability of web interf...Establishing best practices to improve usefulness and usability of web interf...
Establishing best practices to improve usefulness and usability of web interf...
 

Similar to User Interface Testing | Best Practices

Using BDD to Solve communication problems
Using BDD to Solve communication problemsUsing BDD to Solve communication problems
Using BDD to Solve communication problemsRodrigo Urubatan
 
QASymphony and TestPlant: Bringing Together Best-in-Class Test Management and...
QASymphony and TestPlant: Bringing Together Best-in-Class Test Management and...QASymphony and TestPlant: Bringing Together Best-in-Class Test Management and...
QASymphony and TestPlant: Bringing Together Best-in-Class Test Management and...QASymphony
 
Mobile Project Management
Mobile Project ManagementMobile Project Management
Mobile Project ManagementLee Schlenker
 
Agile User Stories | The complete Review
Agile User Stories | The complete ReviewAgile User Stories | The complete Review
Agile User Stories | The complete ReviewDavid Tzemach
 
RAD Studio XE5 in Action Tech Preview
RAD Studio XE5 in Action Tech PreviewRAD Studio XE5 in Action Tech Preview
RAD Studio XE5 in Action Tech PreviewSoftline
 
DBMS_final_ppt_grp3.pptx
DBMS_final_ppt_grp3.pptxDBMS_final_ppt_grp3.pptx
DBMS_final_ppt_grp3.pptxBasirKhan21
 
OOP -interface and objects.pptx
OOP -interface and objects.pptxOOP -interface and objects.pptx
OOP -interface and objects.pptxEdFeranil
 
UXVision - Tal Florentin - Windows 8 User Experience - Short Version
UXVision - Tal Florentin - Windows 8 User Experience - Short VersionUXVision - Tal Florentin - Windows 8 User Experience - Short Version
UXVision - Tal Florentin - Windows 8 User Experience - Short VersionTAL FLORENTIN
 
Agile Mobile Testing Workshop
Agile Mobile Testing WorkshopAgile Mobile Testing Workshop
Agile Mobile Testing WorkshopNaresh Jain
 
Web Analytics Wednesday - Session Replay Tools are Vital
Web Analytics Wednesday - Session Replay Tools are VitalWeb Analytics Wednesday - Session Replay Tools are Vital
Web Analytics Wednesday - Session Replay Tools are VitalCraig Sullivan
 
Best Mobile UI Practices - FITC Mobile 2010
Best Mobile UI Practices - FITC Mobile 2010Best Mobile UI Practices - FITC Mobile 2010
Best Mobile UI Practices - FITC Mobile 2010Boris Chan
 
Design Theory - Ankur Sharma - Presentation
Design Theory - Ankur Sharma - PresentationDesign Theory - Ankur Sharma - Presentation
Design Theory - Ankur Sharma - PresentationMobileNepal
 
Equipment manual writing may, 2014 final
Equipment manual writing may, 2014 finalEquipment manual writing may, 2014 final
Equipment manual writing may, 2014 finalbb2koontz
 
Android design patterns in mobile application development presentation
Android design patterns in mobile application development   presentationAndroid design patterns in mobile application development   presentation
Android design patterns in mobile application development presentationMichail Grigoropoulos
 
Boston meetup blaze_meter_feb2017
Boston meetup blaze_meter_feb2017Boston meetup blaze_meter_feb2017
Boston meetup blaze_meter_feb2017Perfecto Mobile
 
2. product usability & testing
2. product usability & testing2. product usability & testing
2. product usability & testingPrashanth Kumar
 
Rubyconf2016 - Solving communication problems in distributed teams with BDD
Rubyconf2016 - Solving communication problems in distributed teams with BDDRubyconf2016 - Solving communication problems in distributed teams with BDD
Rubyconf2016 - Solving communication problems in distributed teams with BDDRodrigo Urubatan
 
Xamariners - BDD + Mobile
Xamariners - BDD + MobileXamariners - BDD + Mobile
Xamariners - BDD + MobileXamariners
 

Similar to User Interface Testing | Best Practices (20)

Using BDD to Solve communication problems
Using BDD to Solve communication problemsUsing BDD to Solve communication problems
Using BDD to Solve communication problems
 
dbmsreal.pptx
dbmsreal.pptxdbmsreal.pptx
dbmsreal.pptx
 
QASymphony and TestPlant: Bringing Together Best-in-Class Test Management and...
QASymphony and TestPlant: Bringing Together Best-in-Class Test Management and...QASymphony and TestPlant: Bringing Together Best-in-Class Test Management and...
QASymphony and TestPlant: Bringing Together Best-in-Class Test Management and...
 
Mobile Project Management
Mobile Project ManagementMobile Project Management
Mobile Project Management
 
Agile User Stories | The complete Review
Agile User Stories | The complete ReviewAgile User Stories | The complete Review
Agile User Stories | The complete Review
 
RAD Studio XE5 in Action Tech Preview
RAD Studio XE5 in Action Tech PreviewRAD Studio XE5 in Action Tech Preview
RAD Studio XE5 in Action Tech Preview
 
Software Evaluation
Software EvaluationSoftware Evaluation
Software Evaluation
 
DBMS_final_ppt_grp3.pptx
DBMS_final_ppt_grp3.pptxDBMS_final_ppt_grp3.pptx
DBMS_final_ppt_grp3.pptx
 
OOP -interface and objects.pptx
OOP -interface and objects.pptxOOP -interface and objects.pptx
OOP -interface and objects.pptx
 
UXVision - Tal Florentin - Windows 8 User Experience - Short Version
UXVision - Tal Florentin - Windows 8 User Experience - Short VersionUXVision - Tal Florentin - Windows 8 User Experience - Short Version
UXVision - Tal Florentin - Windows 8 User Experience - Short Version
 
Agile Mobile Testing Workshop
Agile Mobile Testing WorkshopAgile Mobile Testing Workshop
Agile Mobile Testing Workshop
 
Web Analytics Wednesday - Session Replay Tools are Vital
Web Analytics Wednesday - Session Replay Tools are VitalWeb Analytics Wednesday - Session Replay Tools are Vital
Web Analytics Wednesday - Session Replay Tools are Vital
 
Best Mobile UI Practices - FITC Mobile 2010
Best Mobile UI Practices - FITC Mobile 2010Best Mobile UI Practices - FITC Mobile 2010
Best Mobile UI Practices - FITC Mobile 2010
 
Design Theory - Ankur Sharma - Presentation
Design Theory - Ankur Sharma - PresentationDesign Theory - Ankur Sharma - Presentation
Design Theory - Ankur Sharma - Presentation
 
Equipment manual writing may, 2014 final
Equipment manual writing may, 2014 finalEquipment manual writing may, 2014 final
Equipment manual writing may, 2014 final
 
Android design patterns in mobile application development presentation
Android design patterns in mobile application development   presentationAndroid design patterns in mobile application development   presentation
Android design patterns in mobile application development presentation
 
Boston meetup blaze_meter_feb2017
Boston meetup blaze_meter_feb2017Boston meetup blaze_meter_feb2017
Boston meetup blaze_meter_feb2017
 
2. product usability & testing
2. product usability & testing2. product usability & testing
2. product usability & testing
 
Rubyconf2016 - Solving communication problems in distributed teams with BDD
Rubyconf2016 - Solving communication problems in distributed teams with BDDRubyconf2016 - Solving communication problems in distributed teams with BDD
Rubyconf2016 - Solving communication problems in distributed teams with BDD
 
Xamariners - BDD + Mobile
Xamariners - BDD + MobileXamariners - BDD + Mobile
Xamariners - BDD + Mobile
 

More from David Tzemach

Best practices for test automation
Best practices for test automationBest practices for test automation
Best practices for test automationDavid Tzemach
 
The new manager role in scrum teams and beyond | SupremeAgile
The new manager role in scrum teams and beyond | SupremeAgileThe new manager role in scrum teams and beyond | SupremeAgile
The new manager role in scrum teams and beyond | SupremeAgileDavid Tzemach
 
Top Agile Myths & Misconceptions
Top Agile Myths & MisconceptionsTop Agile Myths & Misconceptions
Top Agile Myths & MisconceptionsDavid Tzemach
 
Scrum Master (SM) - Practical Approach
Scrum Master (SM) - Practical ApproachScrum Master (SM) - Practical Approach
Scrum Master (SM) - Practical ApproachDavid Tzemach
 
Expectations of scrum masters - How to choose a true great scrum master?
Expectations of scrum masters - How to choose a true great scrum master?Expectations of scrum masters - How to choose a true great scrum master?
Expectations of scrum masters - How to choose a true great scrum master?David Tzemach
 
Top 10 challenges faced by the scrum master
Top 10 challenges faced by the scrum masterTop 10 challenges faced by the scrum master
Top 10 challenges faced by the scrum masterDavid Tzemach
 
What is component testing | David Tzemach
What is component testing | David TzemachWhat is component testing | David Tzemach
What is component testing | David TzemachDavid Tzemach
 
What is automation testing | David Tzemach
What is automation testing | David TzemachWhat is automation testing | David Tzemach
What is automation testing | David TzemachDavid Tzemach
 
The role of the product owner in scrum team | David Tzemach
The role of the product owner in scrum team | David TzemachThe role of the product owner in scrum team | David Tzemach
The role of the product owner in scrum team | David TzemachDavid Tzemach
 
The complete guide for software integration testing | David Tzemach
The complete guide for software integration testing | David TzemachThe complete guide for software integration testing | David Tzemach
The complete guide for software integration testing | David TzemachDavid Tzemach
 
The complete guide for negative testing | David Tzemach
The complete guide for negative testing | David TzemachThe complete guide for negative testing | David Tzemach
The complete guide for negative testing | David TzemachDavid Tzemach
 
Software testing metrics | David Tzemach
Software testing metrics | David Tzemach Software testing metrics | David Tzemach
Software testing metrics | David Tzemach David Tzemach
 
An introduction to api testing | David Tzemach
An introduction to api testing | David TzemachAn introduction to api testing | David Tzemach
An introduction to api testing | David TzemachDavid Tzemach
 

More from David Tzemach (14)

Best practices for test automation
Best practices for test automationBest practices for test automation
Best practices for test automation
 
The new manager role in scrum teams and beyond | SupremeAgile
The new manager role in scrum teams and beyond | SupremeAgileThe new manager role in scrum teams and beyond | SupremeAgile
The new manager role in scrum teams and beyond | SupremeAgile
 
Top Agile Myths & Misconceptions
Top Agile Myths & MisconceptionsTop Agile Myths & Misconceptions
Top Agile Myths & Misconceptions
 
Scrum Master (SM) - Practical Approach
Scrum Master (SM) - Practical ApproachScrum Master (SM) - Practical Approach
Scrum Master (SM) - Practical Approach
 
Expectations of scrum masters - How to choose a true great scrum master?
Expectations of scrum masters - How to choose a true great scrum master?Expectations of scrum masters - How to choose a true great scrum master?
Expectations of scrum masters - How to choose a true great scrum master?
 
Top 10 challenges faced by the scrum master
Top 10 challenges faced by the scrum masterTop 10 challenges faced by the scrum master
Top 10 challenges faced by the scrum master
 
SDLC vs STLC
SDLC vs STLCSDLC vs STLC
SDLC vs STLC
 
What is component testing | David Tzemach
What is component testing | David TzemachWhat is component testing | David Tzemach
What is component testing | David Tzemach
 
What is automation testing | David Tzemach
What is automation testing | David TzemachWhat is automation testing | David Tzemach
What is automation testing | David Tzemach
 
The role of the product owner in scrum team | David Tzemach
The role of the product owner in scrum team | David TzemachThe role of the product owner in scrum team | David Tzemach
The role of the product owner in scrum team | David Tzemach
 
The complete guide for software integration testing | David Tzemach
The complete guide for software integration testing | David TzemachThe complete guide for software integration testing | David Tzemach
The complete guide for software integration testing | David Tzemach
 
The complete guide for negative testing | David Tzemach
The complete guide for negative testing | David TzemachThe complete guide for negative testing | David Tzemach
The complete guide for negative testing | David Tzemach
 
Software testing metrics | David Tzemach
Software testing metrics | David Tzemach Software testing metrics | David Tzemach
Software testing metrics | David Tzemach
 
An introduction to api testing | David Tzemach
An introduction to api testing | David TzemachAn introduction to api testing | David Tzemach
An introduction to api testing | David Tzemach
 

Recently uploaded

SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 

Recently uploaded (20)

SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 

User Interface Testing | Best Practices

  • 2. OVERVIEW • THE MAIN IDEA IS TO ENSURE THAT THE GUI IS DEVELOPED BASED ON THE WRITTEN SPECIFICATIONS. • A GREAT UI THAT CODED AND TESTED EFFICIENTLY WILL ALLOW THE END USER TO PERFORM A HIGHLY COMPLEX OPERATIONS WITHOUT A COMPLEX SET OF TASKS. • THE MAIN GOAL OF GUI TESTS, IS TO HELP THE USER TO PERFORM IS TASKS IN THE EASIEST WAY AND MOST IMPORTANTLY IN A WAY THAT SAVES IS TIME. • THE GRAPHICAL USER INTERFACES (GUI) IS THE MAIN PLATFORM THAT WE USE TO MANIPULATE A GIVEN APPLICATION.
  • 3. THE CHALLENGE IN USER INTERFACE TESTING
  • 4. THE USER INTERFACE COMPLEXITY THE SOFTWARE INDUSTRY CAN PRODUCE A VERY COMPLEX GUI (THAT CONTAINS INFINITE SCENARIOS AND COMBINATIONS) FOR THE END CLIENTS. THEREFORE, IT’S SIMPLE FACT THAT THE TESTING COMPLEXITY IS CUT BASED ON THIS PARAMETER (GUI COMPLEXITY = MORE TESTS).
  • 5. MULTIPLE PLATFORMS NOT LIKE 30 YEARS, TODAY APPLICATIONS BECOME RELEVANT TO ALMOST EVERY DEVICE AND SOFTWARE PLATFORMS, THE MORE PLATFORMS WE NEED TO SUPPORT THE MORE TESTING IS NEEDED, JUST FOR EXAMPLE, THINK ABOUT AN APPLICATION THAT SHOULD BE COMPATIBLE WITH THE FOLLOWING PLATFORMS: HARDWARE PLATFORMS: MOBILE PHONES. COMPUTERS, TABLETS, ETC. SOFTWARE PLATFORMS: WEB BROWSERS (FIREFOX, IE, CHROME…). PHONES OS (ANDROID, WINOS, MACOS…). DIFFERENT OS SYSTEMS (WIN/LINUX OS….)
  • 6. HOW MUCH TESTING IS ENOUGH? JUST LIKE ANY OTHER TESTING TYPES, YOU CAN SAY THAT YOU MAKE ENOUGH TESTING ONLY WHEN ALL THE RISKS YOU ANALYZED AT THE BEGINNING OF THE TESTING PROCESS ARE REMOVED.
  • 8. WHY TO AUTOMATE…? • GUI TESTING IS ONE OF THE MOST TIME CONSUMING TASKS IN THE SOFTWARE INDUSTRY, AUTOMATION WILL REDUCE THIS TIME ON ANY REGRESSION CYCLE. • AUTOMATION WILL SAVE YOU TIME AND MONEY. • GUI TESTS MAY INVOLVE AN INFINITE TESTING SCENARIOS, AUTOMATION CAN COVER AT LEAST 90% FROM THEM. • THE SAME TESTS CAN BE EXECUTED DAILY.
  • 9. WHY NOT TO AUTOMATE…? • DEPENDS ON THE GUI COMPLEXITY, WRITING AUTOMATION TEST CASES COULD TAKE AN INFINITE AMOUNT OF TIME. • AUTOMATION CAN COVER MAJOR ASPECTS OF THE TESTED GUI, BUT FEW GUI CASES CANNOT BE AUTOMATED. • GUI IS ONE OF THOSE COMPONENTS THAT COULD BE CHANGED MULTIPLE TIMES, AS A RESULT WE NEED TO INVEST MAJOR TIME TO MAINTAIN THE WRITTEN AUTOMATION
  • 11. DO NOT IGNORE THE HUMAN EYE AUTOMATION IS THE BEST WAY TO TEST THE USER INTERFACE, BUT THAT DOESN'T MEAN THAT YOU CAN IGNORE THE PERSPECTIVE, VISION AND SENSE OF THE MANUAL TESTER.
  • 12. AUTOMATE YOUR TESTS! GUI TESTING IS PERFECT FOR AUTOMATION THAT ARE A KEY PART FROM ANY REGRESSION CYCLE. THEREFORE, TRY TO AUTOMATE AS MANY TEST CASES AVAILABLE.
  • 13. TEST EFFICIENCY INSTEAD OF UNREALISTIC COVERAGE THE FACT IS THAT GUI TESTS MAY LEAD TO AN INFINITE TESTING MATRIX THAT YOU JUST CANNOT COVER, THE SOLUTION IS TO RUN YOUR TESTS BASED ON AN EFFICIENT DESIGN THAT INVOLVE RISK ANALYSIS AND PRIORITIZATION.
  • 14. SEPARATION OF GUI OBJECTS THE GRAPHICAL USER INTERFACE IS BUILT FROM A SET OF OBJECTS, WHEN DESIGNING YOUR TESTS YOU SHOULD CONSIDER EVERY OBJECT AS “STAND ALONE” AND ASK YOURSELF FEW QUESTIONS: • WHAT ARE THE OUTPUTS WE NEED TO GET WHEN USING THIS OBJECT? • IS THERE ANY INTEGRATIONS WITH OTHER OBJECTS? • WHAT ARE THE ATTRIBUTES OF THIS OBJECT? • AVAILABLE INPUTS (IF SUPPORTED)? • WHY WE NEED IT?
  • 15. MAKE SURE THAT THE UI IS USABLE THE UI IS THE MAIN CONSOLE THAT THE USER WILL USE WHILE WORKING WITH THE SOFTWARE, YOUR TESTS MUST INVOLVE ADDITIONAL LAYER THAT GUARANTEE THAT THE UI WILL BE USABLE WHEN IT’S BEEN USED BY THE CLIENT.
  • 16. FOLLOW THE INDUSTRY STANDARDS EVERY UI MUST BE TESTED BASED ON A FEW BASIC STANDARDS THAT WE USE IN THE SOFTWARE INDUSTRY, EXAMPLES: • EVERY FIELD THAT USED TO FIND VALUES SHOULD BE CALLED “SEARCH” AND NOT “FIND”. • KEYBOARD BUTTON “F1” SHOULD POINT TO USER HELP GUIDE ON WINDOWS PLATFORMS. • IN WINDOWS OS THE “OK” BUTTON WILL BE ON THE LEFT OF THE “CANCEL” BUTTON (THE OPPOSITE BEHAVIOR FROM MACOS).
  • 17. CHECKLISTS AND GUIDELINES FOR UI TESTING You can find the full list at : http://www.dtvisiontech.com/2014/05/qa-graphical-user-interface-testing.html
  • 18. GENERAL TESTS • IS THERE A DEFAULT OBJECT THAT HIGHLIGHTED WHEN THE USER STARTS THE APPLICATION? • THE APPLICATION NAME SHOULD BE DISPLAYED ON THE APPLICATION MAIN FORM. • THE “HELP” MENU SHOULD BE AVAILABLE IN THE MAIN SCREEN NAVIGATION BAR. • IN MOST CASES GUI FORMS SHOULD HAVE THE MINIMIZE/MAXIMIZE OPTIONS. • WEB APPLICATIONS SHOULD BE TESTED WITH DIFFERENT RESOLUTIONS • CLOSING THE APPLICATION SHOULDN’T OCCUR WITHOUT AN APPROVAL NOTIFICATION THAT ALLOWS THE USER TO “APPROVE” OR “DECLINE” THE OPERATION.
  • 19. OBJECT COLOR • IF FIELDS BECOME “GRAYED-OUT”, DO WE DISPLAY THE CORRECT COLOR? • FORM TITLE AND DESCRIPTION DISPLAYED IN THE CORRECT COLOR? • WHEN FIELD IN FOCUS, DO WE MARK IT WITH DIFFERENT COLOR? • IS THE LOADING SCREEN DISPLAYED WITH THE CORRECT COLOR? • ARE THE HYPERLINK COLORS ARE IN THE EXPECTED COLOR? • FORM BACKGROUND COLOR IS THE CORRECT ONE? • LOADING PROCESS BAR IN THE CORRECT COLOR? • ARE THE BUTTONS ARE IN THE RIGHT COLOR?
  • 20. OBJECTS SYNTAX • IS THE TEXT IN ALL OBJECTS ARE WRITTEN WITH THE CORRECT FONT? • IS THE TEXT IN ALL OBJECTS ARE WRITTEN WITH THE CORRECT SIZE? • IS THE FIRST CHAR (IF RELEVANT) IN A WORD SET AS CAPITAL? • ARE ALL THE SCREEN TEXTS ARE ALIGNED CORRECTLY?
  • 21. CHECKLISTS AND GUIDELINES FOR SPECIFIC OBJECTS You can find the full list at : http://www.dtvisiontech.com/2014/05/qa-graphical-user-interface-testing.html
  • 22. RADIO BUTTONS • EVERY BUTTON SHOULD EXECUTE A SPECIFIC FUNCTIONALITY. • BY DEFAULT AT LEAST ONE BUTTON SHOULD BE SELECTED. • EVERY BUTTON SHOULD BE AVAILABLE FOR SELECTION BOTH BY USING THE MOUSE AND KEYBOARD.
  • 23. VALIDATION FIELDS • DO THE SRS DOC, SPECIFIED THAT THE AUTHENTICATION SUPPORT SPECIAL CHARACTERS? • DO THE SRS DOC, SPECIFIED THAT THE AUTHENTICATION SUPPORT NEGATIVE VALUES? • CHECK IF THE VALIDATION FIELDS SHOULD SUPPORT A SPECIFIC FORMAT OF VALUES. • DO THE VALIDATION FIELDS ARE “CASE SENSITIVE”? • IN ANY CASE OF INVALID AUTHENTICATION, THE USER SHOULD BE NOTIFIED THAT THE PROCESS FAILED WITH AN APPROPRIATE NOTIFICATION.
  • 24. DROP DOWN LISTS / LIST BOXES /COMBO BOX • DROP DOWN VALUES MUST BE PRESENTED WITH ORDER, IN 90%, THE ORDER DETERMINED ALPHABETICALLY. • NOT LIKE THE FIRST TWO OBJECTS, IN COMBO BOX, USER SHOULD HAVE THE OPTION TO INSERT TEXT. • WHEN USER SELECT A VALUE, THIS VALUE SHOULD BE DISPLAYED ON THE MAIN DROP DOWN FIELD. • IF THE LIST CONTAINS MULTIPLE VALUES, THE LIST SHOULD BE SCROLLABLE. • DROP DOWN OBJECTS DOESN’T NEED TO SET WITH DEFAULT VALUES. • WHEN THE DROP DOWN IN FOCUS THE KEYBOARD COMBINATION OF CTRL-F4 SHOULD OPEN THE LIST OF VALUES.
  • 25. PUSH BUTTONS • CONTINUING THE PREVIOUS BULLET, THE “SPACE” KEY SHOULD DO THE SAME ACTION. • EVERY BUTTON SHOULD HAVE THE OPTION TO TRIGGER WITH AN APPROPRIATE KEYBOARD SHORTCUT (YOU MUST MAKE SURE THAT DUPLICATE SHORTCUTS ARE NOT EXISTING). • ESC SHOULD ACTIVE THE “CANCEL” BUTTON (IF AVAILABLE IN FORM). • MAKE SURE THAT ALL BUTTONS ARE SIMILAR IN SIZE, SHAPE AND SIZE.
  • 26. TEXT BOX • THE TEXT BOX MUST SUPPORT COPY/PASTE OF SYNTAX FROM DIFFERENT LOCATIONS. • DOUBLE CLICK ON THE TEXT SHOULD HIGHLIGHT THE ENTIRE SYNTAX. • ENTER SYNTAX IN THE TEXT BOX WITH SPACE AT THE BEGINNING. • ENTER SYNTAX IN THE TEXT BOX WITH SPACE AT THE END. • USER HAS THE OPTION TO ENTER TEXT INTO THE BOX. • DO WE SUPPORT UPPER AND LOWER CASE?
  • 27. DATE AND TIME FIELDS • CAN YOU CHANGE THE DATE/TIME (INSERT DAY IN THE YEAR LOCATION, INSERT YEAR IN THE MONTH LOCATION...) ORDER AND APPROVE THE CHANGE? • CHANGE TIME ZONES IN SPECIFIC COMPONENTS TO SEE HOW THE APPLICATION CAN HANDLE DIFFERENT DATE FORMATS. • APPLICATIONS MUST BE TESTED WITH OS “TIME ZONE” CHANGES, DIFFERENT COMPONENTS THAT INTEGRATED WITH DIFFERENT TIME ZONES MAY LEAD TO FAILURES IN THE DATA SYNCHRONIZATION.
  • 28. FOR ADDITIONAL KB’S PLEASE VISIT MY BLOG WWW.DTVISIONTECH.COM