SlideShare a Scribd company logo
Presentation on Mobile app
testing
What is mobile app testing?
• Mobile application testing is a process by which application
software developed for handheld mobile devices is tested for its
functionality, usability and consistency. Mobile application testing
can be an automated or manual type of testing. Mobile applications
either come pre-installed or can be installed from mobile software
distribution platforms. Mobile devices have witnessed a
phenomenal growth in the past few years. A study conducted by
the Yankee Group predicts the generation of $4.2 billion in revenue
by 2013 through 7 billion U.S. smartphone app downloads.
• Additionally, wearable application testing is an interesting market.
Bluetooth, GPS, Sensors, Wi-Fi are some of the core technologies at
play in wearables. A lot of importance is needed here for field
testing, user focus, and looking at areas where hardware and
software need to be tested in unison.
Some or all of the following testing types may be
performed depending on your mobile testing
requirements
• Functional testing
• Performance testing
• Security testing
• Usability testing
• Compatibility testing
• Recoverability Testing
Functional testing
The functional testing of Mobiles normally consists in the areas of testing user interactions as well as testing the transactions. The
various factors which are relevant in functional testing are
Type of application based upon the business functionality usages (banking, gaming, social or business)
Some common test scenarios that you should considered in the functional testing are :
1. To validate whether all the required mandatory fields are working as required.
2. To validate that the mandatory fields are displayed in the screen in a distinctive way than the non-mandatory fields.
3. To validate whether the application works as per as requirement whenever the application starts/stops.
4. To validate whether the application goes into minimized mode whenever there is an incoming phone call. In order to validate the same
we need to use a second phone, to call the device.
5. To validate whether the phone is able to store, process and receive SMS whenever the app is running. In order to validate the same we
need to use a second phone to send sms to the device which is being tested and where the application under test is currently running.
6. To validate that the device is able to perform required multitasking requirements
7. To validate that the page scrolling scenarios are being enabled in the application as necessary.
8. To validate that the navigation between relevant modules in the application are as per the requirement.
9. To validate that the user receives an appropriate error message like “Network error. Please try after some time” whenever there is any
network error.
10. To validate that the installed application enables other applications to perform satisfactorily, and it does not eat into the memory of
the other applications.
11. To validate whether the installation of the application can be done smoothly provided the user has the necessary resources and it does
not lead to any significant errors.
12. To validate whether the application performs according to the requirement in all versions of Mobile that is 2g, 3g and 4g.
13. To perform regression testing to uncover new software bugs in existing areas of a system after changes have been made to them. Also
rerun previously performed tests to determine that the program behavior has not changed due to the changes.
14. To validate whether the application provides an available user guide for those who are not familiar to the app
Performance testing
The general test scenarios for performance testing in a Mobile application are:
• To determine whether the application performs as per the requirement under different load
conditions.
• To determine whether the current network coverage is able to support the application at
peak, average and minimum user levels.
• To determine whether the existing client-server configuration setup provides the required
optimum performance level.
• To validate whether the response time of the application is as per as the requirements.
• To evaluate product and/or hardware to determine if it can handle projected load volumes.
• To evaluate whether the battery life can support the application to perform under projected
load volumes.
• To validate application performance when network is changed to WIFI from 2G/3G or vice
versa.
This type of testing fundamental objective is to ensure that the application performs
acceptably under certain performance requirements such as access by a huge number
of users or the removal of a key infrastructure part like a database server.
Security testing
The following are the most crucial areas for checking the security of Mobile applications.
1. To validate that the application is able to withstand any brute force attack which is an automated process
of trial and error used to guess a person’s username, password or credit-card number.
2. To validate whether an application is not permitting an attacker to access sensitive content or functionality
without proper authentication.
3. To validate that the application has a strong password protection system and it does not permit an
attacker to obtain, change or recover another user’s password.
4. To validate that the application does not suffer from insufficient session expiration.
5. To identify the dynamic dependencies and take measures to prevent any attacker for accessing these
vulnerabilities.
6. To prevent from SQL injection related attacks and denial of service attacks.
7. To ensure whether the certificates are validated, does the application implement Certificate Pinning or
not.
8. To analyze the data storage and data validation requirements.
9. To analyze file system interactions, determine any vulnerability and correct these problems.
10. To investigate file caching and prevent any malicious possibilities from the same.
11. To prevent from insecure data storage in the keyboard cache of the applications.
12. To investigate cookies and preventing any malicious deeds from the cookies.
13. To prevent from buffer overflows and memory corruption cases.
Usability testing
The general test scenarios for usability testing in a Mobile application are:
• To ensure that the buttons should have the required size and be suitable to big fingers.
• To ensure that the buttons are placed in the same section of the screen to avoid confusion to the
end users.
• To ensure that the icons are natural and consistent with the application.
• To ensure that the buttons, which have the same function should also have the same color.
• To ensure that the validation for the tapping zoom-in and zoom-out facilities should be enabled.
• To ensure that the keyboard input can be minimized in an appropriate manner.
• To ensure that the application provides a method for going back or undoing an action, on touching
the wrong item, within an acceptable duration.
• To ensure that the contextual menus are not overloaded because it has to be used quickly.
• To ensure that the text is kept simple and clear to be visible to the users.
• To ensure that the short sentences and paragraphs are readable to the end users.
• To ensure that the font size is big enough to be readable and not too big or too small.
• To validate the application prompts the user whenever the user starts downloading a large amount
of data which may be not conducive for the application performance.
The usability testing process of the Mobile application is performed to have a quick and
easy step application with less functionality than a slow and difficult application with many
features. The main objective is to ensure that we end up having an easy-to-use, intuitive
and similar to industry-accepted interfaces which are widely used.
Compatibility testing:
The following are the most prominent areas for compatibility
testing.
• To validate that the user Interface of the application is as
per the screen size of the device, no text/control is partially
invisible or inaccessible.
• To ensure that the text is readable for all users for the
application.
• To ensure that the call/alarm functionality is enabled
whenever the application is running. The application is
minimized or suspended on the event of a call and then
whenever the call stops the application is resumed.
Compatibility testing on mobile devices is performed to ensure that since
mobile devices have different size, resolution, screen, version and hardware
so the application should be tested across all the devices to ensure that the
application works as desired.
Recoverability Testing
• Crash recovery and transaction interruptions
• Validation of the effective application recovery
situation post unexpected interruption/crash scenarios.
• Verification of how the application handles a
transaction during a power failure (i.e. Battery dies or a
sudden manual shutdown of the device)
• The validation of the process where the connection is
suspended, the system needs to re-establish for
recovering the data directly affected by the suspended
connection.
•
Installation testing
whether the application can be installed in a
reasonable amount of time and with required
criterion
• Unlike desktop or browser, to test mobile
application you need to install different set of
tools and applications.
• Apple’s recent release of a new, modern mobile programming
language for iOS, Swift, has taken the mobile app
development world by storm. Its adoption by developers has
been record-breaking as it continues to climb the charts of
most used coding languages. Swift replaces the aging
Objective-C, which has been in use for three decades.
• As mobile device usage continues to skyrocket and mobile
app downloads reach well into the gazillions, other languages
and tools will emerge to enable developers to churn out more
cool apps and help testers improve app quality.
Top 6 Mobile testing tools
1. Appium for Android and iOS – Appium is an open source project for cross-platform test
automation. Essentially, it is an HTTP server managing WebDriver sessions. It supports tests in any
framework and in any language that can create an HTTP request. No app code needs to be modified
for testing. Any test is suitable to run on either iOS or Android on real devices or emulators. It
supports native, hybrid, and web apps.
2. Calabash for Android and iOS – Maintained by Xamarin, Calabash consists of two open source
libraries, one for iOS and another for Android, which automate testing for native or hybrid mobile
apps. Used with Cucumber, test cases are written in natural language then translated to test scripts
that run within the framework. It works well with Ruby, Java, .NET, Flex and many other
programming languages.
4. Robotium for Android- Robotium is an open source library aimed solely at Android UI testing. It is
used for automated black-box testing for web, native or hybrid mobile applications. Using it in
conjunction with TestDroid Recorder, JavaScript test scripts are created as the tester traverses the
UI of the mobile application under test. A free extension library called ExtSolo adds multi-path
dragging, auto-scaling for different display resoultions and other abilities.
5. Selendroid for Android – No app code modification is required to use Selendroid, which is
essentially Selenium for Android apps. Selenium 2 and the WebDriver API are the basis for test
code. The framework interacts with multiple devices or device emulators simultaneously. It even
supports device hot-swapping. There is an inspection component for recording device UI state for
test case creation.
6. Ranorex (Android and iOS) - Ranorex is open-source UI Automation Framework used test web-
based and mobile applications. Ranorex used for Functional Testing to test native iOS apps, native
mobile apps, Mobile Web Testing for iOS, Mono touch etc. Ranorex supports many types of test like
Acceptance Testing, Automation Testing, GUI Testing, Web Testing, Mobile Testing etc
Today we will learn some basics of
Appium
Webdriver+Mobile Features=Appium
Appium is popular because:
• It is open source mobile test automation tool
• Based on popular selenium web driver
• Can work with packaged applications without
modification
APPIUM STUDIO
Classic Appium challenges
Complex installation, setup and maintenance
Slow adoption, too many dependencies
No UI for test development
Slow ramp up, slower test development
No OS or environment control
Large % of use cases cannot be automated out of app integration
Insufficient support for parallel execution
Nearly impossible to reach large scale continuous testing
No reports
Requires development of report mechanism
Slower update release which do not support new OS
To overcome these, experitest has launched a bundle application called
‘Appium studio’ which is built on Appium framework
Installation
• Install Appium studio (community edition)
from https://experitest.com/appium-studio
• Then open Appium studio and add new IOS
device by clicking Add Device
Adding new device
1. Open Appium Studio. Add new IOS device by clicking Add Device
2. Enter information - Name, Type. Also, add icloud account and finally click OK
3. Next, select your IOS device from top panel and click Open device icon. You will be asked to
verify the icloud account you have just added to verify in the device. Click Verify
4. Finally select device and click Open icon. Next your device loads in appium studio
Starting your device
• Once after you add your device and connect it via data cable then you will
see status Ready in device list
• Then double click on the device or click open device icon. You may have to
enter your icloud password again. Make sure device is unlocked.
You may get error like
• In such case, go to Settings > General > Profile & Device Management and
tap email under DEVELOPER APP and tap Trust “your email” and then load
again.
Checking CPU & Memory usage
• Load device via appium studio. Wait for emulator to
appear
• Click More Action icon
• Click Monitors. There you will see graph for CPU
usage and Memory usage.
• Open any app that consumes high memory.
Depending on the usage we can suggest developer
whether app consumes high or low memory or CPU
How to inspect in mobile app?
In browser, you can just right click and inspect to
find various properties but in mobile we can’t
do that. To overcome this, we can use appium
studio
Using spy to inspect elements
1. Load the device
2. Open the app where you want to inspect
3. Click Spy icon in the emulator
4. Then on the left side, you will see the properties of the selected
element.
Recording your first test
• Open your device. Make sure it is opened in emulator
• Go to the "Test" tab and click on the "record" button.
• Choose the Device, application and the capabilities to
record with from the available devices, application and
the capabilities on the lists.
• And finally all the steps are recorded along with log.
• You can alter/tamper xpath value and make it work as
your requirement.
Recommendations for Recording
• Before recording
– Plan the flow you would like to perform.
– Try to first execute it without recording.
– Keep your recording short. Don't record the whole test in one go.
• While recording
– Click on the center of the Objects you would like to identify.
– Wait for the screen to refresh and don't run the recording too quickly.
– Right-click (with your mouse) to add verification points.
• After recording
– Execute the script and verify it executes correctly.
– Make sure that all Objects are identified correctly. Edit the test if
needed to improve stability.
Xpath
XPath is a major element in the XSLT standard (Extensible Stylesheet Language Transformations) which is again subset of XML.
In automation, if the elements are not found by the general locators like id, class, name, etc. then XPath is used to find an element on the web page
Syntax for XPath
• XPath contains the path of the element situated at the web page. Standard syntax
for creating XPath is.
Xpath=//tagname[@attribute='value']// : Select current node.
• Tagname: Tagname of the particular node.
• @: Select attribute.
• Attribute: Attribute name of the node.
• Value: Value of the attribute.
To find the element on web pages accurately there are different types of locators:
Using spy icon button
• Use the Spy icon button in order to get the
Native/Web properties of all the objects on
the screen. The easiest way to create a simple
XPath query is by marking the wanted
properties of an element (one or multiple
properties can be used), right clicking on them
and then clicking on Copy XPath. This will copy
to the clipboard a query that will look for
elements that have the properties and values
that are looked for.
• You can replace the test steps that are
recorded earlier with the xpath you have just
copied.
• In your recorded steps, click dropdown and select
Find element which appears in the property. And
in value paste the xpath you have copied earlier.
To add new element in test case
Generate reports
• Once after the test recording is completed,
you will get reports for all steps.
• On the toolbar below Test, click dropdown of
Reports icon and click All Summaries Report.
Then it opens in your editor. In my case it’s
sublime so I can right click and select Open in
Browser.

More Related Content

What's hot

Mobile Application Testing Strategy
Mobile Application Testing StrategyMobile Application Testing Strategy
Mobile Application Testing Strategy
ankitQA
 
Mobile Application Testing by Javed Ansari
Mobile Application Testing by Javed AnsariMobile Application Testing by Javed Ansari
Mobile Application Testing by Javed Ansari
Javed Ansari
 
Mobile Application Testing
Mobile Application TestingMobile Application Testing
Mobile Application Testing
SWAAM Tech
 
Mobile App Testing Strategy by RapidValue Solutions
Mobile App Testing Strategy by RapidValue SolutionsMobile App Testing Strategy by RapidValue Solutions
Mobile App Testing Strategy by RapidValue Solutions
RapidValue
 
Mobile testing practices
Mobile testing practicesMobile testing practices
Mobile testing practices
Rakesh Jha
 
Mobile application testing
Mobile application testingMobile application testing
Mobile application testing
Tharindra Jayamaha
 
Functional Testing Tutorial | Edureka
Functional Testing Tutorial | EdurekaFunctional Testing Tutorial | Edureka
Functional Testing Tutorial | Edureka
Edureka!
 
Mobile Automation with Appium
Mobile Automation with AppiumMobile Automation with Appium
Mobile Automation with Appium
Manoj Kumar Kumar
 
Introduction To Mobile-Automation
Introduction To Mobile-AutomationIntroduction To Mobile-Automation
Introduction To Mobile-Automation
Mindfire Solutions
 
Performance and load testing
Performance and load testingPerformance and load testing
Performance and load testingsonukalpana
 
Mobile Application Testing
Mobile Application TestingMobile Application Testing
Mobile Application Testing
Ramakrishna Telapolu
 
Basic Guide For Mobile Application Testing
Basic Guide For Mobile Application TestingBasic Guide For Mobile Application Testing
Basic Guide For Mobile Application Testing
Sourabh Kasliwal
 
Appium Presentation
Appium Presentation Appium Presentation
Appium Presentation
OmarUsman6
 
SOFTWARE TESTING
SOFTWARE TESTINGSOFTWARE TESTING
SOFTWARE TESTING
Priyanka Karancy
 
Api testing
Api testingApi testing
Api testing
Keshav Kashyap
 
An Introduction To Automated API Testing
An Introduction To Automated API TestingAn Introduction To Automated API Testing
An Introduction To Automated API Testing
Sauce Labs
 
Types of testing
Types of testingTypes of testing
Types of testing
Sonam Agarwal
 
Automation Testing With Appium
Automation Testing With AppiumAutomation Testing With Appium
Automation Testing With Appium
Knoldus Inc.
 
Mobile Testing Service Desk_Own.ppt
Mobile Testing Service Desk_Own.pptMobile Testing Service Desk_Own.ppt
Mobile Testing Service Desk_Own.pptQA Programmer
 

What's hot (20)

Mobile Application Testing Strategy
Mobile Application Testing StrategyMobile Application Testing Strategy
Mobile Application Testing Strategy
 
Mobile Application Testing by Javed Ansari
Mobile Application Testing by Javed AnsariMobile Application Testing by Javed Ansari
Mobile Application Testing by Javed Ansari
 
Mobile Application Testing
Mobile Application TestingMobile Application Testing
Mobile Application Testing
 
Mobile App Testing Strategy by RapidValue Solutions
Mobile App Testing Strategy by RapidValue SolutionsMobile App Testing Strategy by RapidValue Solutions
Mobile App Testing Strategy by RapidValue Solutions
 
Mobile testing practices
Mobile testing practicesMobile testing practices
Mobile testing practices
 
Mobile application testing
Mobile application testingMobile application testing
Mobile application testing
 
Functional Testing Tutorial | Edureka
Functional Testing Tutorial | EdurekaFunctional Testing Tutorial | Edureka
Functional Testing Tutorial | Edureka
 
Mobile Automation with Appium
Mobile Automation with AppiumMobile Automation with Appium
Mobile Automation with Appium
 
Introduction To Mobile-Automation
Introduction To Mobile-AutomationIntroduction To Mobile-Automation
Introduction To Mobile-Automation
 
Performance and load testing
Performance and load testingPerformance and load testing
Performance and load testing
 
Mobile Application Testing
Mobile Application TestingMobile Application Testing
Mobile Application Testing
 
Basic Guide For Mobile Application Testing
Basic Guide For Mobile Application TestingBasic Guide For Mobile Application Testing
Basic Guide For Mobile Application Testing
 
Appium Presentation
Appium Presentation Appium Presentation
Appium Presentation
 
SOFTWARE TESTING
SOFTWARE TESTINGSOFTWARE TESTING
SOFTWARE TESTING
 
Api testing
Api testingApi testing
Api testing
 
An Introduction To Automated API Testing
An Introduction To Automated API TestingAn Introduction To Automated API Testing
An Introduction To Automated API Testing
 
Manual testing ppt
Manual testing pptManual testing ppt
Manual testing ppt
 
Types of testing
Types of testingTypes of testing
Types of testing
 
Automation Testing With Appium
Automation Testing With AppiumAutomation Testing With Appium
Automation Testing With Appium
 
Mobile Testing Service Desk_Own.ppt
Mobile Testing Service Desk_Own.pptMobile Testing Service Desk_Own.ppt
Mobile Testing Service Desk_Own.ppt
 

Similar to Presentation on mobile app testing

What is Mobile App Performance Testing & How to Conduct It.pptx
What is Mobile App Performance Testing & How to Conduct It.pptxWhat is Mobile App Performance Testing & How to Conduct It.pptx
What is Mobile App Performance Testing & How to Conduct It.pptx
Calidad Infotech
 
A Complete Guide to Mobile App Testing Types.pdf
A Complete Guide to Mobile App Testing Types.pdfA Complete Guide to Mobile App Testing Types.pdf
A Complete Guide to Mobile App Testing Types.pdf
pCloudy
 
A Developer's Guide to Mobile App Testing
A Developer's Guide to Mobile App TestingA Developer's Guide to Mobile App Testing
A Developer's Guide to Mobile App Testing
Testgrid.io
 
The Essentials of Mobile App Testing and Monitoring
The Essentials of Mobile App Testing and MonitoringThe Essentials of Mobile App Testing and Monitoring
The Essentials of Mobile App Testing and Monitoring
MobilePundits
 
App Testing SEO Expert Bangladesh LTD
App Testing SEO Expert Bangladesh LTDApp Testing SEO Expert Bangladesh LTD
App Testing SEO Expert Bangladesh LTD
Tasnim Jahan
 
Best Practices & Testing Process of Mobile Application Testing.pptx
Best Practices & Testing Process of Mobile Application Testing.pptxBest Practices & Testing Process of Mobile Application Testing.pptx
Best Practices & Testing Process of Mobile Application Testing.pptx
Calidad Infotech
 
Types of Mobile App Testing
Types of Mobile App TestingTypes of Mobile App Testing
Types of Mobile App TestingRita Singh
 
App Testing Tools and Frameworks A Comparative Analysis.pdf
App Testing Tools and Frameworks A Comparative Analysis.pdfApp Testing Tools and Frameworks A Comparative Analysis.pdf
App Testing Tools and Frameworks A Comparative Analysis.pdf
lubnayasminsebl
 
Mobile Application Testing - White Paper
Mobile Application Testing - White PaperMobile Application Testing - White Paper
Mobile Application Testing - White Paper
Jade Global
 
Mobile app testing
Mobile app testingMobile app testing
Mobile app testing
sanpalan
 
Mobile testing
Mobile testingMobile testing
Mobile testing
sanpalan
 
Automated Front End Testing_ Navigating Types and Tools for Optimal Web Devel...
Automated Front End Testing_ Navigating Types and Tools for Optimal Web Devel...Automated Front End Testing_ Navigating Types and Tools for Optimal Web Devel...
Automated Front End Testing_ Navigating Types and Tools for Optimal Web Devel...
kalichargn70th171
 
Mobile application-testing for shanethatech
Mobile application-testing for shanethatechMobile application-testing for shanethatech
Mobile application-testing for shanethatech
shanethatech
 
Mobile Performance Testing Approaches and Challenges
Mobile Performance Testing Approaches and ChallengesMobile Performance Testing Approaches and Challenges
Mobile Performance Testing Approaches and Challenges
Nous Infosystems
 
Choosing the Right Testing Strategy to Scale up Mobile App Testing.pdf
Choosing the Right Testing Strategy to Scale up Mobile App Testing.pdfChoosing the Right Testing Strategy to Scale up Mobile App Testing.pdf
Choosing the Right Testing Strategy to Scale up Mobile App Testing.pdf
pCloudy
 
App Development Testing, App Testing Tools and Technologies 2023
App Development Testing, App Testing Tools and Technologies 2023App Development Testing, App Testing Tools and Technologies 2023
App Development Testing, App Testing Tools and Technologies 2023
XDuce Corporation
 
10 Most Effective Strategies for Mobile App Testing.pptx
10 Most Effective Strategies for Mobile App Testing.pptx10 Most Effective Strategies for Mobile App Testing.pptx
10 Most Effective Strategies for Mobile App Testing.pptx
Oprim Solutions
 
HienVo_Mobile Testing_v.1.2
HienVo_Mobile Testing_v.1.2HienVo_Mobile Testing_v.1.2
HienVo_Mobile Testing_v.1.2Hien Vo
 
8 Types of Testing to Know for Bug-free Applications.pptx
8 Types of Testing to Know for Bug-free Applications.pptx8 Types of Testing to Know for Bug-free Applications.pptx
8 Types of Testing to Know for Bug-free Applications.pptx
Expert App Devs
 
12 considerations for mobile testing (march 2017)
12 considerations for mobile testing (march 2017)12 considerations for mobile testing (march 2017)
12 considerations for mobile testing (march 2017)
Antoine Aymer
 

Similar to Presentation on mobile app testing (20)

What is Mobile App Performance Testing & How to Conduct It.pptx
What is Mobile App Performance Testing & How to Conduct It.pptxWhat is Mobile App Performance Testing & How to Conduct It.pptx
What is Mobile App Performance Testing & How to Conduct It.pptx
 
A Complete Guide to Mobile App Testing Types.pdf
A Complete Guide to Mobile App Testing Types.pdfA Complete Guide to Mobile App Testing Types.pdf
A Complete Guide to Mobile App Testing Types.pdf
 
A Developer's Guide to Mobile App Testing
A Developer's Guide to Mobile App TestingA Developer's Guide to Mobile App Testing
A Developer's Guide to Mobile App Testing
 
The Essentials of Mobile App Testing and Monitoring
The Essentials of Mobile App Testing and MonitoringThe Essentials of Mobile App Testing and Monitoring
The Essentials of Mobile App Testing and Monitoring
 
App Testing SEO Expert Bangladesh LTD
App Testing SEO Expert Bangladesh LTDApp Testing SEO Expert Bangladesh LTD
App Testing SEO Expert Bangladesh LTD
 
Best Practices & Testing Process of Mobile Application Testing.pptx
Best Practices & Testing Process of Mobile Application Testing.pptxBest Practices & Testing Process of Mobile Application Testing.pptx
Best Practices & Testing Process of Mobile Application Testing.pptx
 
Types of Mobile App Testing
Types of Mobile App TestingTypes of Mobile App Testing
Types of Mobile App Testing
 
App Testing Tools and Frameworks A Comparative Analysis.pdf
App Testing Tools and Frameworks A Comparative Analysis.pdfApp Testing Tools and Frameworks A Comparative Analysis.pdf
App Testing Tools and Frameworks A Comparative Analysis.pdf
 
Mobile Application Testing - White Paper
Mobile Application Testing - White PaperMobile Application Testing - White Paper
Mobile Application Testing - White Paper
 
Mobile app testing
Mobile app testingMobile app testing
Mobile app testing
 
Mobile testing
Mobile testingMobile testing
Mobile testing
 
Automated Front End Testing_ Navigating Types and Tools for Optimal Web Devel...
Automated Front End Testing_ Navigating Types and Tools for Optimal Web Devel...Automated Front End Testing_ Navigating Types and Tools for Optimal Web Devel...
Automated Front End Testing_ Navigating Types and Tools for Optimal Web Devel...
 
Mobile application-testing for shanethatech
Mobile application-testing for shanethatechMobile application-testing for shanethatech
Mobile application-testing for shanethatech
 
Mobile Performance Testing Approaches and Challenges
Mobile Performance Testing Approaches and ChallengesMobile Performance Testing Approaches and Challenges
Mobile Performance Testing Approaches and Challenges
 
Choosing the Right Testing Strategy to Scale up Mobile App Testing.pdf
Choosing the Right Testing Strategy to Scale up Mobile App Testing.pdfChoosing the Right Testing Strategy to Scale up Mobile App Testing.pdf
Choosing the Right Testing Strategy to Scale up Mobile App Testing.pdf
 
App Development Testing, App Testing Tools and Technologies 2023
App Development Testing, App Testing Tools and Technologies 2023App Development Testing, App Testing Tools and Technologies 2023
App Development Testing, App Testing Tools and Technologies 2023
 
10 Most Effective Strategies for Mobile App Testing.pptx
10 Most Effective Strategies for Mobile App Testing.pptx10 Most Effective Strategies for Mobile App Testing.pptx
10 Most Effective Strategies for Mobile App Testing.pptx
 
HienVo_Mobile Testing_v.1.2
HienVo_Mobile Testing_v.1.2HienVo_Mobile Testing_v.1.2
HienVo_Mobile Testing_v.1.2
 
8 Types of Testing to Know for Bug-free Applications.pptx
8 Types of Testing to Know for Bug-free Applications.pptx8 Types of Testing to Know for Bug-free Applications.pptx
8 Types of Testing to Know for Bug-free Applications.pptx
 
12 considerations for mobile testing (march 2017)
12 considerations for mobile testing (march 2017)12 considerations for mobile testing (march 2017)
12 considerations for mobile testing (march 2017)
 

Recently uploaded

Using IESVE for Room Loads Analysis - Australia & New Zealand
Using IESVE for Room Loads Analysis - Australia & New ZealandUsing IESVE for Room Loads Analysis - Australia & New Zealand
Using IESVE for Room Loads Analysis - Australia & New Zealand
IES VE
 
SOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar Research Team: Latest Activities of IntelBrokerSOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar
 
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.ILBeyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Natan Silnitsky
 
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Shahin Sheidaei
 
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Globus
 
Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus
 
Accelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with PlatformlessAccelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with Platformless
WSO2
 
Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024
Globus
 
Prosigns: Transforming Business with Tailored Technology Solutions
Prosigns: Transforming Business with Tailored Technology SolutionsProsigns: Transforming Business with Tailored Technology Solutions
Prosigns: Transforming Business with Tailored Technology Solutions
Prosigns
 
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERRORTROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
Tier1 app
 
RISE with SAP and Journey to the Intelligent Enterprise
RISE with SAP and Journey to the Intelligent EnterpriseRISE with SAP and Journey to the Intelligent Enterprise
RISE with SAP and Journey to the Intelligent Enterprise
Srikant77
 
Cyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdfCyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdf
Cyanic lab
 
Corporate Management | Session 3 of 3 | Tendenci AMS
Corporate Management | Session 3 of 3 | Tendenci AMSCorporate Management | Session 3 of 3 | Tendenci AMS
Corporate Management | Session 3 of 3 | Tendenci AMS
Tendenci - The Open Source AMS (Association Management Software)
 
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdfDominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
AMB-Review
 
Developing Distributed High-performance Computing Capabilities of an Open Sci...
Developing Distributed High-performance Computing Capabilities of an Open Sci...Developing Distributed High-performance Computing Capabilities of an Open Sci...
Developing Distributed High-performance Computing Capabilities of an Open Sci...
Globus
 
Vitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume MontevideoVitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume Montevideo
Vitthal Shirke
 
May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
Adele Miller
 
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Globus
 
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Mind IT Systems
 
BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024
Ortus Solutions, Corp
 

Recently uploaded (20)

Using IESVE for Room Loads Analysis - Australia & New Zealand
Using IESVE for Room Loads Analysis - Australia & New ZealandUsing IESVE for Room Loads Analysis - Australia & New Zealand
Using IESVE for Room Loads Analysis - Australia & New Zealand
 
SOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar Research Team: Latest Activities of IntelBrokerSOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar Research Team: Latest Activities of IntelBroker
 
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.ILBeyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
 
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
 
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
 
Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024
 
Accelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with PlatformlessAccelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with Platformless
 
Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024
 
Prosigns: Transforming Business with Tailored Technology Solutions
Prosigns: Transforming Business with Tailored Technology SolutionsProsigns: Transforming Business with Tailored Technology Solutions
Prosigns: Transforming Business with Tailored Technology Solutions
 
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERRORTROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
 
RISE with SAP and Journey to the Intelligent Enterprise
RISE with SAP and Journey to the Intelligent EnterpriseRISE with SAP and Journey to the Intelligent Enterprise
RISE with SAP and Journey to the Intelligent Enterprise
 
Cyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdfCyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdf
 
Corporate Management | Session 3 of 3 | Tendenci AMS
Corporate Management | Session 3 of 3 | Tendenci AMSCorporate Management | Session 3 of 3 | Tendenci AMS
Corporate Management | Session 3 of 3 | Tendenci AMS
 
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdfDominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
 
Developing Distributed High-performance Computing Capabilities of an Open Sci...
Developing Distributed High-performance Computing Capabilities of an Open Sci...Developing Distributed High-performance Computing Capabilities of an Open Sci...
Developing Distributed High-performance Computing Capabilities of an Open Sci...
 
Vitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume MontevideoVitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume Montevideo
 
May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
 
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
 
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
 
BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024
 

Presentation on mobile app testing

  • 2. What is mobile app testing? • Mobile application testing is a process by which application software developed for handheld mobile devices is tested for its functionality, usability and consistency. Mobile application testing can be an automated or manual type of testing. Mobile applications either come pre-installed or can be installed from mobile software distribution platforms. Mobile devices have witnessed a phenomenal growth in the past few years. A study conducted by the Yankee Group predicts the generation of $4.2 billion in revenue by 2013 through 7 billion U.S. smartphone app downloads. • Additionally, wearable application testing is an interesting market. Bluetooth, GPS, Sensors, Wi-Fi are some of the core technologies at play in wearables. A lot of importance is needed here for field testing, user focus, and looking at areas where hardware and software need to be tested in unison.
  • 3. Some or all of the following testing types may be performed depending on your mobile testing requirements • Functional testing • Performance testing • Security testing • Usability testing • Compatibility testing • Recoverability Testing
  • 4. Functional testing The functional testing of Mobiles normally consists in the areas of testing user interactions as well as testing the transactions. The various factors which are relevant in functional testing are Type of application based upon the business functionality usages (banking, gaming, social or business) Some common test scenarios that you should considered in the functional testing are : 1. To validate whether all the required mandatory fields are working as required. 2. To validate that the mandatory fields are displayed in the screen in a distinctive way than the non-mandatory fields. 3. To validate whether the application works as per as requirement whenever the application starts/stops. 4. To validate whether the application goes into minimized mode whenever there is an incoming phone call. In order to validate the same we need to use a second phone, to call the device. 5. To validate whether the phone is able to store, process and receive SMS whenever the app is running. In order to validate the same we need to use a second phone to send sms to the device which is being tested and where the application under test is currently running. 6. To validate that the device is able to perform required multitasking requirements 7. To validate that the page scrolling scenarios are being enabled in the application as necessary. 8. To validate that the navigation between relevant modules in the application are as per the requirement. 9. To validate that the user receives an appropriate error message like “Network error. Please try after some time” whenever there is any network error. 10. To validate that the installed application enables other applications to perform satisfactorily, and it does not eat into the memory of the other applications. 11. To validate whether the installation of the application can be done smoothly provided the user has the necessary resources and it does not lead to any significant errors. 12. To validate whether the application performs according to the requirement in all versions of Mobile that is 2g, 3g and 4g. 13. To perform regression testing to uncover new software bugs in existing areas of a system after changes have been made to them. Also rerun previously performed tests to determine that the program behavior has not changed due to the changes. 14. To validate whether the application provides an available user guide for those who are not familiar to the app
  • 5. Performance testing The general test scenarios for performance testing in a Mobile application are: • To determine whether the application performs as per the requirement under different load conditions. • To determine whether the current network coverage is able to support the application at peak, average and minimum user levels. • To determine whether the existing client-server configuration setup provides the required optimum performance level. • To validate whether the response time of the application is as per as the requirements. • To evaluate product and/or hardware to determine if it can handle projected load volumes. • To evaluate whether the battery life can support the application to perform under projected load volumes. • To validate application performance when network is changed to WIFI from 2G/3G or vice versa. This type of testing fundamental objective is to ensure that the application performs acceptably under certain performance requirements such as access by a huge number of users or the removal of a key infrastructure part like a database server.
  • 6. Security testing The following are the most crucial areas for checking the security of Mobile applications. 1. To validate that the application is able to withstand any brute force attack which is an automated process of trial and error used to guess a person’s username, password or credit-card number. 2. To validate whether an application is not permitting an attacker to access sensitive content or functionality without proper authentication. 3. To validate that the application has a strong password protection system and it does not permit an attacker to obtain, change or recover another user’s password. 4. To validate that the application does not suffer from insufficient session expiration. 5. To identify the dynamic dependencies and take measures to prevent any attacker for accessing these vulnerabilities. 6. To prevent from SQL injection related attacks and denial of service attacks. 7. To ensure whether the certificates are validated, does the application implement Certificate Pinning or not. 8. To analyze the data storage and data validation requirements. 9. To analyze file system interactions, determine any vulnerability and correct these problems. 10. To investigate file caching and prevent any malicious possibilities from the same. 11. To prevent from insecure data storage in the keyboard cache of the applications. 12. To investigate cookies and preventing any malicious deeds from the cookies. 13. To prevent from buffer overflows and memory corruption cases.
  • 7. Usability testing The general test scenarios for usability testing in a Mobile application are: • To ensure that the buttons should have the required size and be suitable to big fingers. • To ensure that the buttons are placed in the same section of the screen to avoid confusion to the end users. • To ensure that the icons are natural and consistent with the application. • To ensure that the buttons, which have the same function should also have the same color. • To ensure that the validation for the tapping zoom-in and zoom-out facilities should be enabled. • To ensure that the keyboard input can be minimized in an appropriate manner. • To ensure that the application provides a method for going back or undoing an action, on touching the wrong item, within an acceptable duration. • To ensure that the contextual menus are not overloaded because it has to be used quickly. • To ensure that the text is kept simple and clear to be visible to the users. • To ensure that the short sentences and paragraphs are readable to the end users. • To ensure that the font size is big enough to be readable and not too big or too small. • To validate the application prompts the user whenever the user starts downloading a large amount of data which may be not conducive for the application performance. The usability testing process of the Mobile application is performed to have a quick and easy step application with less functionality than a slow and difficult application with many features. The main objective is to ensure that we end up having an easy-to-use, intuitive and similar to industry-accepted interfaces which are widely used.
  • 8. Compatibility testing: The following are the most prominent areas for compatibility testing. • To validate that the user Interface of the application is as per the screen size of the device, no text/control is partially invisible or inaccessible. • To ensure that the text is readable for all users for the application. • To ensure that the call/alarm functionality is enabled whenever the application is running. The application is minimized or suspended on the event of a call and then whenever the call stops the application is resumed. Compatibility testing on mobile devices is performed to ensure that since mobile devices have different size, resolution, screen, version and hardware so the application should be tested across all the devices to ensure that the application works as desired.
  • 9. Recoverability Testing • Crash recovery and transaction interruptions • Validation of the effective application recovery situation post unexpected interruption/crash scenarios. • Verification of how the application handles a transaction during a power failure (i.e. Battery dies or a sudden manual shutdown of the device) • The validation of the process where the connection is suspended, the system needs to re-establish for recovering the data directly affected by the suspended connection. •
  • 10. Installation testing whether the application can be installed in a reasonable amount of time and with required criterion
  • 11. • Unlike desktop or browser, to test mobile application you need to install different set of tools and applications.
  • 12. • Apple’s recent release of a new, modern mobile programming language for iOS, Swift, has taken the mobile app development world by storm. Its adoption by developers has been record-breaking as it continues to climb the charts of most used coding languages. Swift replaces the aging Objective-C, which has been in use for three decades. • As mobile device usage continues to skyrocket and mobile app downloads reach well into the gazillions, other languages and tools will emerge to enable developers to churn out more cool apps and help testers improve app quality.
  • 13. Top 6 Mobile testing tools 1. Appium for Android and iOS – Appium is an open source project for cross-platform test automation. Essentially, it is an HTTP server managing WebDriver sessions. It supports tests in any framework and in any language that can create an HTTP request. No app code needs to be modified for testing. Any test is suitable to run on either iOS or Android on real devices or emulators. It supports native, hybrid, and web apps. 2. Calabash for Android and iOS – Maintained by Xamarin, Calabash consists of two open source libraries, one for iOS and another for Android, which automate testing for native or hybrid mobile apps. Used with Cucumber, test cases are written in natural language then translated to test scripts that run within the framework. It works well with Ruby, Java, .NET, Flex and many other programming languages. 4. Robotium for Android- Robotium is an open source library aimed solely at Android UI testing. It is used for automated black-box testing for web, native or hybrid mobile applications. Using it in conjunction with TestDroid Recorder, JavaScript test scripts are created as the tester traverses the UI of the mobile application under test. A free extension library called ExtSolo adds multi-path dragging, auto-scaling for different display resoultions and other abilities. 5. Selendroid for Android – No app code modification is required to use Selendroid, which is essentially Selenium for Android apps. Selenium 2 and the WebDriver API are the basis for test code. The framework interacts with multiple devices or device emulators simultaneously. It even supports device hot-swapping. There is an inspection component for recording device UI state for test case creation. 6. Ranorex (Android and iOS) - Ranorex is open-source UI Automation Framework used test web- based and mobile applications. Ranorex used for Functional Testing to test native iOS apps, native mobile apps, Mobile Web Testing for iOS, Mono touch etc. Ranorex supports many types of test like Acceptance Testing, Automation Testing, GUI Testing, Web Testing, Mobile Testing etc
  • 14. Today we will learn some basics of Appium Webdriver+Mobile Features=Appium Appium is popular because: • It is open source mobile test automation tool • Based on popular selenium web driver • Can work with packaged applications without modification
  • 15. APPIUM STUDIO Classic Appium challenges Complex installation, setup and maintenance Slow adoption, too many dependencies No UI for test development Slow ramp up, slower test development No OS or environment control Large % of use cases cannot be automated out of app integration Insufficient support for parallel execution Nearly impossible to reach large scale continuous testing No reports Requires development of report mechanism Slower update release which do not support new OS To overcome these, experitest has launched a bundle application called ‘Appium studio’ which is built on Appium framework
  • 16. Installation • Install Appium studio (community edition) from https://experitest.com/appium-studio • Then open Appium studio and add new IOS device by clicking Add Device
  • 17. Adding new device 1. Open Appium Studio. Add new IOS device by clicking Add Device 2. Enter information - Name, Type. Also, add icloud account and finally click OK 3. Next, select your IOS device from top panel and click Open device icon. You will be asked to verify the icloud account you have just added to verify in the device. Click Verify 4. Finally select device and click Open icon. Next your device loads in appium studio
  • 18. Starting your device • Once after you add your device and connect it via data cable then you will see status Ready in device list • Then double click on the device or click open device icon. You may have to enter your icloud password again. Make sure device is unlocked. You may get error like • In such case, go to Settings > General > Profile & Device Management and tap email under DEVELOPER APP and tap Trust “your email” and then load again.
  • 19. Checking CPU & Memory usage • Load device via appium studio. Wait for emulator to appear • Click More Action icon • Click Monitors. There you will see graph for CPU usage and Memory usage. • Open any app that consumes high memory. Depending on the usage we can suggest developer whether app consumes high or low memory or CPU
  • 20. How to inspect in mobile app? In browser, you can just right click and inspect to find various properties but in mobile we can’t do that. To overcome this, we can use appium studio
  • 21. Using spy to inspect elements 1. Load the device 2. Open the app where you want to inspect 3. Click Spy icon in the emulator 4. Then on the left side, you will see the properties of the selected element.
  • 22.
  • 23. Recording your first test • Open your device. Make sure it is opened in emulator • Go to the "Test" tab and click on the "record" button. • Choose the Device, application and the capabilities to record with from the available devices, application and the capabilities on the lists. • And finally all the steps are recorded along with log. • You can alter/tamper xpath value and make it work as your requirement.
  • 24. Recommendations for Recording • Before recording – Plan the flow you would like to perform. – Try to first execute it without recording. – Keep your recording short. Don't record the whole test in one go. • While recording – Click on the center of the Objects you would like to identify. – Wait for the screen to refresh and don't run the recording too quickly. – Right-click (with your mouse) to add verification points. • After recording – Execute the script and verify it executes correctly. – Make sure that all Objects are identified correctly. Edit the test if needed to improve stability.
  • 25. Xpath XPath is a major element in the XSLT standard (Extensible Stylesheet Language Transformations) which is again subset of XML. In automation, if the elements are not found by the general locators like id, class, name, etc. then XPath is used to find an element on the web page
  • 26. Syntax for XPath • XPath contains the path of the element situated at the web page. Standard syntax for creating XPath is. Xpath=//tagname[@attribute='value']// : Select current node. • Tagname: Tagname of the particular node. • @: Select attribute. • Attribute: Attribute name of the node. • Value: Value of the attribute. To find the element on web pages accurately there are different types of locators:
  • 27. Using spy icon button • Use the Spy icon button in order to get the Native/Web properties of all the objects on the screen. The easiest way to create a simple XPath query is by marking the wanted properties of an element (one or multiple properties can be used), right clicking on them and then clicking on Copy XPath. This will copy to the clipboard a query that will look for elements that have the properties and values that are looked for.
  • 28. • You can replace the test steps that are recorded earlier with the xpath you have just copied. • In your recorded steps, click dropdown and select Find element which appears in the property. And in value paste the xpath you have copied earlier. To add new element in test case
  • 29. Generate reports • Once after the test recording is completed, you will get reports for all steps. • On the toolbar below Test, click dropdown of Reports icon and click All Summaries Report. Then it opens in your editor. In my case it’s sublime so I can right click and select Open in Browser.