SwaamTech, is an independent QA and Software Testing company helping clients to bring quality in there products. Contact us for testing of your SmartPhone App testing: support@swaam.com
The document discusses automation testing for mobile apps using Appium. Appium allows for cross-platform mobile app testing by using the same tests across iOS and Android platforms. It functions by proxying commands to the devices to run tests using technologies like UIAutomation for iOS and UiAutomator for Android. While useful for local testing, Appium has limitations for scaling tests in continuous integration environments, where services like Sauce Labs are better suited.
The document discusses challenges in mobile automation testing and provides an overview of Appium as a tool for mobile test automation. It covers Appium architecture, requirements, capabilities, and tips for scaling mobile tests. Advanced Appium actions like horizontal and vertical swiping and chained locators are mentioned. The document also discusses visual testing, accessibility testing, and performance testing for mobile apps using Appium.
Appium is an open-source tool for automating native, mobile web, and hybrid applications on iOS mobile, Android mobile, and Windows desktop platforms. Native apps are those written using iOS, Android, or Windows SDKs. Mobile web apps are web apps accessed using a mobile browser (Appium supports Safari on iOS and Chrome or the built-in 'Browser' app on Android). Hybrid apps have a wrapper around a "webview" -- a native control that enables interaction with web content. Projects like Apache Cordova or Phonegap make it easy to build apps using web technologies that are then bundled into a native wrapper, creating a hybrid app.
Importantly, Appium is "cross-platform": it allows you to write tests against multiple platforms (iOS, Android, Windows), using the same API. This enables code reuse between iOS, Android, and Windows testsuites.
Do'd and Don'ts for mobile application testing, basic guide for learning mobile testing, covers different aspects for mobile testing includes android and iphone test methodology.
Also highlights different types of testing, mobile platforms, testing frameworks, emulator and simulator differences.
Different testing requirements that mobile applications have, challenges and solutions Challenges 1. Complex mobile testing matrix, Expensive test environment 2. Repetitive testing 3. Mobile testing for devices located at various locations Solutions: • Risk Based Testing approach • Using Mobile device emulators • Use of Automation tools • Leveraging external services
This document discusses mobile application testing. It begins with an introduction to the author's experience in mobile development and quality assurance. It then covers trends in mobile technology and applications. The main sections discuss approaches to testing mobile applications, including requirement analysis, challenges for different mobile platforms, and focus areas for testing like performance, security and compatibility. Automated and manual testing strategies are also outlined.
Esta presentación expone las principales herramientas y técnicas a utilizar para llevar a cabo un proceso de ingeniería inversa sobre una aplicación Android, con el objetivo de identificar código malicioso en la misma. En la exposición se presenta, desde el punto de vista de un analista de seguridad y de una forma práctica, el proceso de análisis de una aplicación existente en la Google Play Store.
This document discusses mobile application testing and automation. It covers:
- The types of mobile application testing including functionality, usability, and consistency testing as well as testing on emulators and different devices.
- The challenges of mobile app testing like different devices, operating systems, and networks.
- Popular mobile platforms and types of mobile apps.
- The approach to mobile app testing including installation/uninstallation, workflows, performance, localization, and device interactions.
- Types of mobile app testing like UI, compatibility, interruptions, and security testing.
- The importance and benefits of automation for mobile app testing.
- Popular mobile automation tools like MonkeyRunner, UIAutomator,
This document discusses software engineering and software testing. Software engineering is concerned with developing large software through applying engineering principles. The challenge is to produce high quality software within budget and schedule constraints. Software testing is the process of finding errors in software and involves both manual and automated testing. Different types of testing include unit, integration, system, and acceptance testing. The goal of testing is to uncover defects early and reduce costs.
The document discusses different types of mobile application testing including functional testing, memory leakage testing, update testing, interrupt testing, power consumption testing, and security testing. It provides examples of each type of testing and explains their importance in thoroughly validating mobile app functionality and performance.
Mobile App Testing Strategy by RapidValue SolutionsRapidValue
There has been an increase in the adoption of smartphones, tablets and several mobile devices with the passage of time. And it has led to an enormous growth of mobile applications in recent years. Mobile device is considered to be the primary medium of interaction for the customers and also, businesses worldwide. And mobile applications are, actually, driving the communication.
People, generally, do not give much importance to mobile application testing because of its expensive nature. But it is very much essential to ensure that the consumers have a great experience, every time they use the application.
The aim of mobile application testing should be to acquire knowledge about the quality of the service that you are offering. Does it work properly or not? Will it provide services as per the expectation of the customer? These questions need to be answered to ensure that the customer comes back to you, for your service again. Mobile testing is becoming more and more complicated and complex with each passing day. Strategies are invented and used to simplify the mobile application testing.
This presentation primarily addresses, the strategy to be adopted in mobile app testing, the types of mobile app testing and the stages to be followed, before the application is set live.
The document discusses mobile application testing, including the types of mobile applications like web, native, and hybrid applications; different mobile platforms like Android and iOS; how to test aspects like installation, features, and network connectivity; challenges in mobile application testing like lack of devices; and how to overcome challenges using emulators and automation tools.
** Software Testing Certification Courses: https://www.edureka.co/software-testi... **
This Edureka PPT on Types of Software Testing covers the various types of functional and non-functional testing. Below topics are covered in this PPT:
What is Software Testing
Why need Testing?
Software Testing Life Cycle
Types of Software Testing
Unit Testing
Integration Testing
System Testing
Interface Testing
Regression Testing
Acceptance Testing
Documentation Testing
Installation Testing
Performance Testing
Reliability Testing
Security Testing
Selenium playlist: https://goo.gl/NmuzXE
Selenium Blog playlist: http://bit.ly/2B7C3QR
Software Testing Blog playlist: http://bit.ly/2UXwdJm
The document discusses Appium, an open source test automation framework for testing native, hybrid and mobile web apps. It provides an overview of Appium and how it can be used to test both mobile web and mobile apps on Android and iOS. The document also summarizes how to set up the environment for Android automation using Appium, including writing sample scripts and discussing framework best practices. Advanced locator strategies for Appium like MobileBy, ByAccessibilityId and ByAndroidUIAutomator are also covered.
API Testing: The heart of functional testing" with Bj RollisonTEST Huddle
View webinar: http://www.eurostarconferences.com/community/member/webinar-archive/webinar-81-api-testing-the-heart-of-functional-testing
An API, or Application Programming Interface, is a collection of functions that provide much of the functional capabilities in complex software systems. Most customers are accustomed to interacting with a graphical user interface on the computer. But, many customers do not realize the much of the functionality of a program comes from APIs in the operating system or program's dynamic-link libraries (DLL). So, if the business logic or core functionality is exposed via an API call then and if we want to find functional bugs sooner than API testing may be an approach that provides additional value in your overall test strategy. Additionally, API testing can start even before the user interface is complete so functional capabilities can be tested while designers are hashing out the "look and feel." API testing will not replace testing through the user interface, but it can augment your test strategy and provide a solid foundation of automated tests that increase your confidence in the functional quality of your product.
This document provides an introduction to API testing using Postman. It begins with a brief overview of APIs, including what they are, their history and common types. It then covers API testing in more detail, explaining what it is, common types of API tests and advantages/challenges. Next, it discusses common API protocols, HTTP request methods and response codes. Finally, it introduces Postman, describing its basic building blocks and providing a short demo. The overall purpose is to educate attendees on APIs and API testing using Postman.
"Learn All Aspects Of Appium step by step, Enhance your skills & Launch Your Career, On-Demand Course affordable price & classes on virtually every topic.Try Before You Buy
for maven online training visit: https://goo.gl/YKsHBZ"
Mobile software testing guide includes importance of mobile app testing, testing strategy for mobile apps, kinds of mobile emulators etc for beginners in mobile app testing.
This presentation represents the Mobile Application testing fundamentals. This presentation will describe How Mobile testing is different from Web testing. It will give you brief information about different mobile application techniques which needs to be taken care while testing Mobile Applications.
Mobile applications testing (challenges, tools & techniques)Rakesh Jha
Device Fragmentation is a Big Challenge
Devices Vary in Screen Size, Memory, Processing Power, Hardware Features etc.
Apple iPhone is Least Fragmented among All Mobile Platforms
Testing on All Target Handset/Devices
Almost Impractical if Number of Target Handsets is Large
Testing on All Target Operator Networks
Almost Impractical if Number of Target Operators is Large
Network Operator may Impose Certain Constraints
Softwere Testing Aplication Specific Techniquesmaharajdey
This document discusses various types of software testing techniques including:
1. Unit testing focuses on testing individual units of code to check if they are fit for use.
2. Integration testing tests software modules when integrated together to expose defects.
3. Acceptance testing determines if the software meets acceptance criteria and is performed by end users before moving to production.
It also provides examples of why software testing is important to avoid costly failures and ensure quality, security, and customer satisfaction. A variety of testing types are described from functional to load testing.
- The presentation discusses various topics related to mobile application testing such as types of mobile applications, challenges in mobile testing, automation tools, and common errors.
- It covers the different types of mobile applications like native, web-based, and hybrid apps. Testing types include functional, performance, usability, and more. Challenges include device fragmentation, networks, and usability.
- Automation tools discussed include Appium, Ranorex, and Android DDMS. Common errors pertain to functionality, interfaces, interrupt handling, and compatibility across devices.
How to make your app successful with mobile app testing?MobilePundits
MobilePundits: Mobile App Testing is a process to find out the errors which occurred during app development. Testing also ensures that user expectation met and application execute properly. It is equally important to conduct device testing to make sure that mobile application performs well across several platform and devices. Here we are presenting testing at a glance, our goal is to provide optimistic and useful process for user to test apps effectively.
QualiTest places an emphasis on its mobile testing services to ensure that efficient testing is performed on each mobile device, version & platform - http://bit.ly/1DOBbv9
Mobile application testing is challenging due to the variety of mobile devices, operating systems, and networks. There are different types of mobile applications (native, web, and hybrid) that require different testing approaches. An effective mobile application testing strategy selects devices for testing, uses emulators for initial testing, and considers cloud-based testing to test across multiple devices simultaneously. Test cases should be developed to test the usability, compatibility, interfaces, services, performance, and security of the mobile application.
Mobile application testing faces several key challenges, including the variety of mobile devices with different hardware capabilities, diverse mobile platforms and operating systems, and different mobile networks. Effective mobile application testing requires testing across multiple devices, platforms, and networks. It also requires the use of emulators and cloud-based testing to efficiently test applications. The document outlines various types of mobile application testing including compatibility, interface, services, and performance testing. It discusses test strategies, common issues encountered in testing, and the importance of automation to address the complexities of mobile application testing.
The Essentials of Mobile App Testing and MonitoringMobilePundits
Mobile Technology is transforming the way people use their cell phones. Although demand is highest for consumer apps, enterprise applications are evolving too, allowing businesses to work more productively In this document we look at how the testing of mobile applications helps to achieve quality. Here we explore a typical way that an app is developed, look at the testing stages involved, answer some of the frequent questions concerning testing, and provide a definition of the common testing terms.
This document discusses mobile application testing and automation. It covers:
- The types of mobile application testing including functionality, usability, and consistency testing.
- Challenges of mobile app testing like different devices, platforms, and input methods.
- Popular mobile platforms and types of mobile apps and devices.
- Approaches to mobile app testing like installation/uninstallation, workflows, performance, localization, and device interactions.
- Types of mobile app testing including UI, compatibility, interruptions, usability, and security testing.
- The need for automation in mobile testing due to a wide variety of factors.
- Popular mobile automation tools like MonkeyRunner, UIAutomator,
The document discusses performance testing, which is done to evaluate how a system performs under certain workloads. It aims to determine a system's speed, scalability, stability and other quality attributes. The document outlines different types of performance tests like load testing and stress testing. It explains key performance metrics such as response time, throughput and how performance testing helps improve quality and reduce risks. Overall, performance testing is important to ensure applications meet expectations before release.
Materi Membangun Aplikasi Mobile Berkualitas yang disampaikan pada acara Bimbingan Teknis Entrepreneurship Kreatif Digital (Mobile Application dan Game) 16-17 September 2016 oleh Dr. Eng. Herman Tolle yang diadakan oleh Badan Ekonomi Kreatif (Bekraf) bekerjasama dengan Universitas Brawijaya Malang
Zen Test Labs Mobile Application TestingZen Test Labs
For more info visit: www.zentestlabs.com
www.blog.zentestlabs.com
--Mobile Application Testing
--Mobile Configuration Optimization
--Mobile Test Automation
--Mobile Performance Testing
Mobile application-testing for shanethatechshanethatech
This document discusses best practices for mobile application testing. It identifies several challenges of mobile testing, including device variation, lack of testing tools, need for skilled automation specialists, and cloud computing issues. It recommends a testing strategy that utilizes emulators, mobile cloud solutions with remote devices, and some real device testing. It also recommends automating tests to reduce manual work. The document outlines various types of mobile application tests, including usability, compatibility, interface, services, performance, security, and more. It stresses the importance of addressing the challenges of mobile testing to successfully deliver high quality mobile apps.
Inflectica Technologies a web development company provides professional services of: web application development, ecommerce website design and programming, dedicated teams of web developers with high quality, affordable cost and timely delivery.
The document discusses mobile application testing. It defines mobile application testing as testing software developed for handheld devices to check functionality, usability, and consistency. Both manual and automated testing are discussed. The document then covers different types of testing that may be performed including functional, performance, security, usability, compatibility, recoverability, and installation testing. It provides examples of test scenarios for each type.
Types of mobile app testing include functional testing, performance testing, memory leakage testing, interrupt testing, usability testing, installation testing, operational testing, and security testing. Functional testing ensures the app works as intended, while performance testing checks how the app handles various mobile challenges. Memory leakage testing checks for optimized memory usage and interrupt testing confirms the app can handle interruptions. Usability, installation, operational, and security testing round out the testing types.
How RPA Help in the Transportation and Logistics Industry.pptxSynapseIndia
Revolutionize your transportation processes with our cutting-edge RPA software. Automate repetitive tasks, reduce costs, and enhance efficiency in the logistics sector with our advanced solutions.
Mitigating the Impact of State Management in Cloud Stream Processing SystemsScyllaDB
Stream processing is a crucial component of modern data infrastructure, but constructing an efficient and scalable stream processing system can be challenging. Decoupling compute and storage architecture has emerged as an effective solution to these challenges, but it can introduce high latency issues, especially when dealing with complex continuous queries that necessitate managing extra-large internal states.
In this talk, we focus on addressing the high latency issues associated with S3 storage in stream processing systems that employ a decoupled compute and storage architecture. We delve into the root causes of latency in this context and explore various techniques to minimize the impact of S3 latency on stream processing performance. Our proposed approach is to implement a tiered storage mechanism that leverages a blend of high-performance and low-cost storage tiers to reduce data movement between the compute and storage layers while maintaining efficient processing.
Throughout the talk, we will present experimental results that demonstrate the effectiveness of our approach in mitigating the impact of S3 latency on stream processing. By the end of the talk, attendees will have gained insights into how to optimize their stream processing systems for reduced latency and improved cost-efficiency.
Best Practices for Effectively Running dbt in Airflow.pdfTatiana Al-Chueyr
As a popular open-source library for analytics engineering, dbt is often used in combination with Airflow. Orchestrating and executing dbt models as DAGs ensures an additional layer of control over tasks, observability, and provides a reliable, scalable environment to run dbt models.
This webinar will cover a step-by-step guide to Cosmos, an open source package from Astronomer that helps you easily run your dbt Core projects as Airflow DAGs and Task Groups, all with just a few lines of code. We’ll walk through:
- Standard ways of running dbt (and when to utilize other methods)
- How Cosmos can be used to run and visualize your dbt projects in Airflow
- Common challenges and how to address them, including performance, dependency conflicts, and more
- How running dbt projects in Airflow helps with cost optimization
Webinar given on 9 July 2024
Scaling Connections in PostgreSQL Postgres Bangalore(PGBLR) Meetup-2 - MydbopsMydbops
This presentation, delivered at the Postgres Bangalore (PGBLR) Meetup-2 on June 29th, 2024, dives deep into connection pooling for PostgreSQL databases. Aakash M, a PostgreSQL Tech Lead at Mydbops, explores the challenges of managing numerous connections and explains how connection pooling optimizes performance and resource utilization.
Key Takeaways:
* Understand why connection pooling is essential for high-traffic applications
* Explore various connection poolers available for PostgreSQL, including pgbouncer
* Learn the configuration options and functionalities of pgbouncer
* Discover best practices for monitoring and troubleshooting connection pooling setups
* Gain insights into real-world use cases and considerations for production environments
This presentation is ideal for:
* Database administrators (DBAs)
* Developers working with PostgreSQL
* DevOps engineers
* Anyone interested in optimizing PostgreSQL performance
Contact info@mydbops.com for PostgreSQL Managed, Consulting and Remote DBA Services
Paradigm Shifts in User Modeling: A Journey from Historical Foundations to Em...Erasmo Purificato
Slide of the tutorial entitled "Paradigm Shifts in User Modeling: A Journey from Historical Foundations to Emerging Trends" held at UMAP'24: 32nd ACM Conference on User Modeling, Adaptation and Personalization (July 1, 2024 | Cagliari, Italy)
How Social Media Hackers Help You to See Your Wife's Message.pdfHackersList
In the modern digital era, social media platforms have become integral to our daily lives. These platforms, including Facebook, Instagram, WhatsApp, and Snapchat, offer countless ways to connect, share, and communicate.
RPA In Healthcare Benefits, Use Case, Trend And Challenges 2024.pptxSynapseIndia
Your comprehensive guide to RPA in healthcare for 2024. Explore the benefits, use cases, and emerging trends of robotic process automation. Understand the challenges and prepare for the future of healthcare automation
Implementations of Fused Deposition Modeling in real worldEmerging Tech
The presentation showcases the diverse real-world applications of Fused Deposition Modeling (FDM) across multiple industries:
1. **Manufacturing**: FDM is utilized in manufacturing for rapid prototyping, creating custom tools and fixtures, and producing functional end-use parts. Companies leverage its cost-effectiveness and flexibility to streamline production processes.
2. **Medical**: In the medical field, FDM is used to create patient-specific anatomical models, surgical guides, and prosthetics. Its ability to produce precise and biocompatible parts supports advancements in personalized healthcare solutions.
3. **Education**: FDM plays a crucial role in education by enabling students to learn about design and engineering through hands-on 3D printing projects. It promotes innovation and practical skill development in STEM disciplines.
4. **Science**: Researchers use FDM to prototype equipment for scientific experiments, build custom laboratory tools, and create models for visualization and testing purposes. It facilitates rapid iteration and customization in scientific endeavors.
5. **Automotive**: Automotive manufacturers employ FDM for prototyping vehicle components, tooling for assembly lines, and customized parts. It speeds up the design validation process and enhances efficiency in automotive engineering.
6. **Consumer Electronics**: FDM is utilized in consumer electronics for designing and prototyping product enclosures, casings, and internal components. It enables rapid iteration and customization to meet evolving consumer demands.
7. **Robotics**: Robotics engineers leverage FDM to prototype robot parts, create lightweight and durable components, and customize robot designs for specific applications. It supports innovation and optimization in robotic systems.
8. **Aerospace**: In aerospace, FDM is used to manufacture lightweight parts, complex geometries, and prototypes of aircraft components. It contributes to cost reduction, faster production cycles, and weight savings in aerospace engineering.
9. **Architecture**: Architects utilize FDM for creating detailed architectural models, prototypes of building components, and intricate designs. It aids in visualizing concepts, testing structural integrity, and communicating design ideas effectively.
Each industry example demonstrates how FDM enhances innovation, accelerates product development, and addresses specific challenges through advanced manufacturing capabilities.
Understanding Insider Security Threats: Types, Examples, Effects, and Mitigat...Bert Blevins
Today’s digitally connected world presents a wide range of security challenges for enterprises. Insider security threats are particularly noteworthy because they have the potential to cause significant harm. Unlike external threats, insider risks originate from within the company, making them more subtle and challenging to identify. This blog aims to provide a comprehensive understanding of insider security threats, including their types, examples, effects, and mitigation techniques.
Fluttercon 2024: Showing that you care about security - OpenSSF Scorecards fo...Chris Swan
Have you noticed the OpenSSF Scorecard badges on the official Dart and Flutter repos? It's Google's way of showing that they care about security. Practices such as pinning dependencies, branch protection, required reviews, continuous integration tests etc. are measured to provide a score and accompanying badge.
You can do the same for your projects, and this presentation will show you how, with an emphasis on the unique challenges that come up when working with Dart and Flutter.
The session will provide a walkthrough of the steps involved in securing a first repository, and then what it takes to repeat that process across an organization with multiple repos. It will also look at the ongoing maintenance involved once scorecards have been implemented, and how aspects of that maintenance can be better automated to minimize toil.
YOUR RELIABLE WEB DESIGN & DEVELOPMENT TEAM — FOR LASTING SUCCESS
WPRiders is a web development company specialized in WordPress and WooCommerce websites and plugins for customers around the world. The company is headquartered in Bucharest, Romania, but our team members are located all over the world. Our customers are primarily from the US and Western Europe, but we have clients from Australia, Canada and other areas as well.
Some facts about WPRiders and why we are one of the best firms around:
More than 700 five-star reviews! You can check them here.
1500 WordPress projects delivered.
We respond 80% faster than other firms! Data provided by Freshdesk.
We’ve been in business since 2015.
We are located in 7 countries and have 22 team members.
With so many projects delivered, our team knows what works and what doesn’t when it comes to WordPress and WooCommerce.
Our team members are:
- highly experienced developers (employees & contractors with 5 -10+ years of experience),
- great designers with an eye for UX/UI with 10+ years of experience
- project managers with development background who speak both tech and non-tech
- QA specialists
- Conversion Rate Optimisation - CRO experts
They are all working together to provide you with the best possible service. We are passionate about WordPress, and we love creating custom solutions that help our clients achieve their goals.
At WPRiders, we are committed to building long-term relationships with our clients. We believe in accountability, in doing the right thing, as well as in transparency and open communication. You can read more about WPRiders on the About us page.
Kief Morris rethinks the infrastructure code delivery lifecycle, advocating for a shift towards composable infrastructure systems. We should shift to designing around deployable components rather than code modules, use more useful levels of abstraction, and drive design and deployment from applications rather than bottom-up, monolithic architecture and delivery.
UiPath Community Day Kraków: Devs4Devs ConferenceUiPathCommunity
We are honored to launch and host this event for our UiPath Polish Community, with the help of our partners - Proservartner!
We certainly hope we have managed to spike your interest in the subjects to be presented and the incredible networking opportunities at hand, too!
Check out our proposed agenda below 👇👇
08:30 ☕ Welcome coffee (30')
09:00 Opening note/ Intro to UiPath Community (10')
Cristina Vidu, Global Manager, Marketing Community @UiPath
Dawid Kot, Digital Transformation Lead @Proservartner
09:10 Cloud migration - Proservartner & DOVISTA case study (30')
Marcin Drozdowski, Automation CoE Manager @DOVISTA
Pawel Kamiński, RPA developer @DOVISTA
Mikolaj Zielinski, UiPath MVP, Senior Solutions Engineer @Proservartner
09:40 From bottlenecks to breakthroughs: Citizen Development in action (25')
Pawel Poplawski, Director, Improvement and Automation @McCormick & Company
Michał Cieślak, Senior Manager, Automation Programs @McCormick & Company
10:05 Next-level bots: API integration in UiPath Studio (30')
Mikolaj Zielinski, UiPath MVP, Senior Solutions Engineer @Proservartner
10:35 ☕ Coffee Break (15')
10:50 Document Understanding with my RPA Companion (45')
Ewa Gruszka, Enterprise Sales Specialist, AI & ML @UiPath
11:35 Power up your Robots: GenAI and GPT in REFramework (45')
Krzysztof Karaszewski, Global RPA Product Manager
12:20 🍕 Lunch Break (1hr)
13:20 From Concept to Quality: UiPath Test Suite for AI-powered Knowledge Bots (30')
Kamil Miśko, UiPath MVP, Senior RPA Developer @Zurich Insurance
13:50 Communications Mining - focus on AI capabilities (30')
Thomasz Wierzbicki, Business Analyst @Office Samurai
14:20 Polish MVP panel: Insights on MVP award achievements and career profiling
4. Difference between iOS & Android
•
Messaging:
Apple iOS:
Android:
•
SMS,MMS,eMail
SMS,MMS,eMail and C2DM
Technology Access:
Apple iOS:
3G,3.5G,Wi-Fi,Bluetooth(HSDPA,HSUPA, UTMS)
Android: 2G,3G,3.5G and 4G(GSM,EDGE,CDMA,EV-DO,UMTS,Bluetooth,NFC,WiFi,LTE and WiMAX)
•
Compatible Devices:
Apple iOS:
Android:
•
iPad,iPod Touch, iPhones
Any Devices
Web Browser:
Apple iOS:Android:
Safari
Chrome’s V8 JavaScript engine
5. Difference between iOS & Android
•
Connectivity:
Apple iOS:
Android:
•
Wi-Fi, Bluetooth
Wi-Fi, Bluetooth and NFC
Some Android OS Features:
3D Google Map
Chrome to phone
3rd Party Branded OS
Adobe Flash Support
Automatic App Update
•
Some Apple iOS Features:
Airprint, AirPlay
Find my iPhone
Messages with text tone
Keyboard and Directory enhancement
6. Introduction
•
Mobile devices have witnessed a phenomenal growth in the past
few years and there are more mobile phones in the world than
televisions and PCs combined
•
Market of mobile applications is growing every day and even
going to become more demanding as technologies are rapidly
developing
•
In Mobile-Internet era people use smart phones to connect to
internet for work, networking, gaming, shopping and other
everyday activities, testing software applications across mobile
platforms becomes indispensible
7. Why to perform Testing???
•
Testing is expensive and time consuming but it is needed
to ensure that your consumers have a positive
experience when they use your mobile
applications
•
Fail to do a good job of testing and your customer will
leave forever
8. Goals of your Testing
•
Primary goal of your testing efforts is not to find errors
•
Goal in testing should be to understand the quality of your
offerings i.e.
11. Biggest Mobile testing Challange
•There are number of client devices that could be used on your mobile site, and all of
them must be considered when testing your mobile application
• Number of devices can be reduced to an extent, but each time you reduce the
number of device types that you test against, you are taking a chance that your
application might not work on a device, locking out a number of potential customers
• To handle the device challenge, you have two options: You can test using real
devices, or you can test using emulated devices
12. Critical Factors of Mobile Testing
The critical factors that determine the success of a mobile
testing program are:
•Use of emulators and actual devices
•Use of test automation
14. Real Device
Advantage:
•
Real devices have the advantage of having all of the limitations and
quirks present in the actual client hardware
•
Hardware Exceptions handling is possible e.g. low battery, power-offs,
insufficient memory, etc
Disadvantage:
•
Testing with real devices is incredibly expensive
•
Real handsets are not designed with testing in mind so limited
processing power and storage of the handsets does not allow on-board
diagnostic software to be loaded
15. Emulator
Advantage:
•
Emulated devices are easier to manage one can switch device types by simply
loading a new device profile
•
Emulators run on more powerful PCs/servers and designed with testing in mind
•
Emulated devices are cost effective
Disadvantage:
•
Emulated devices lack the quirks and faults that only the real device can
provide
•
Hardware Exceptions handling is not possible e.g. low battery, power-offs,
insufficient memory, etc.
16. Issues with Android Emulator
•
Android is fast simulator but smaller screen of the phone makes things
a little impossible to test the entire application
•
We cannot zoom in once we have the modal window, and in the original
zoomed out size we can hardly see anything for testing a specific
feature
17. Issues with iPhone Simulator
They are extremely slow and Problems occur while doing testing
on Mobile Applications
18. Difference between Simulator & Emulator
•
A simulator is a piece of software that duplicates as precisely as
possible the processor to "run" code to see if it is
correct
•
An emulator generally is a piece of hardware which duplicates the
features and functions of a real system; it is self-contained, and is able
to be hooked to some kind of development environment
21. Unit Testing
•
Primary goal of unit testing is to take the smallest piece of testable
software in the application, isolate it from the remainder of the code, and
determine whether it behaves exactly as you expect
•
Each unit is tested separately before integrating them into modules to
test the interfaces between modules
22. Integration Testing
•
Integration testing is the phase in software testing in which
individual software modules are combined and tested as a group
•
It occurs after unit testing
23. Functional Testing
•
Functional testing is a type of Black box testing in which mobile
applications are tested to ensure that it is working as per the
requirements
•
Functions are tested by feeding the input and examining the output
24. Performance Testing
•
Performance testing is performed to determine how a system performs in
terms of responsiveness and stability and it uncovers what needs to be
improved before the product goes to market
•
Check the performance and behavior of the application under certain conditions
such as low battery, bad network coverage, low available memory, simultaneous
access to application’s server by several users and other conditions
•
As application is installed on Mobile Phones of different memory, processor and
screen size so it should perform at its best despite of these variants
•
Evaluates the response time (speed) of Application to execute its required
functions in comparison with different Mobile devices
•
Testing is performed until the Application under test achieves the expected levels
of performance
26. Performance Testing: Check List
•
System tests (booting the phone, or resuming from standby)
•
User interface tests (rotating the screen, displaying a menu)
•
Media (starting a video)
•
Phone (calling a contact)
27. Compatibility Testing
•
Compatibility testing is conducted on the application to
evaluate the application's compatibility with the environment
Operating systems (MVS, UNIX, Windows, etc)
Browser compatibility (Firefox, Netscape, Internet Explorer,
Safari, etc)
•
Mobile devices have different size, resolution, screen, version
and hardware so application should be tested across all devices
to ensure that the application works as desired
28. Compatibility Testing: Check List
Following are some basic scenarios which should be considered while testing mobile
application:
•
UI of the app is as per the screen size of the device, no text/control should be
cutting off
•
Text should be readable
•
Suspend/Resume (Call/SMS/Alarm) when app is running
•
If app has timer/sound then Suspend/Resume timer/sound
•
Behavior of app on Flip/Slider close
•
Behavior of app when memory of the device is almost full
•
Behavior of when network is not available
•
Behavior of app if app is running for longer period of time
•
Behavior of app when keys are pressed randomly
29. Load Testing
•
Load testing is done to check stability of the application when desired
concurrent number of users accesses the mobile application at a given time
•
Objective is to test whether the mobile application qualifies and sustains the
required number of users with maximum load for minimum to maximum period of
time
•
It helps to identify the maximum operating capacity of an application as well as
any bottlenecks and determine which element is causing degradation
30. Stress Testing
•
Stress testing is used to determine the stability of a given system when
load placed on the system is raised beyond normal operational capacity
often to be a breaking point, in order to observe the results
•
Process of feeding largest tasks it can operate with, and constantly
increasing the load on the system via automated tools to simulate real
time scenario with virtual users
31. Regression Testing
•
Regression testing seeks to uncover new software bugs in existing areas of a
system after changes have been made to them
•
Intent of regression testing is to ensure that a change, such as a bug fix, did not
introduce new faults
•
Determine whether a change in one part of the software affects other parts of the
software
•
Common methods of regression testing include rerunning previously run tests and
checking whether program behavior has changed and whether previously fixed
faults have re-emerged
33. Security Testing: Check List
• Brute Force:
A Brute Force attack is an automated process of trial and error used to guess a
person’s username, password or credit -card number
•Insufficient Authentication:
Insufficient Authentication occurs when an application permits an attacker to access
sensitive content or functionality without having to properly authentication
•
Weak Password Recovery Validation:
Weak Password Recovery Validation is when an application permits an attacker to
illegally obtain, change or recover another user’s password
• Insufficient Session Expiration:
Insufficient Session Expiration is when an application permits an attacker to reuse old
session credentials or session IDs for authorization
34. iPhone & Android ApplicationTesting: Check List
• Brute Force:
A Brute Force attack is an automated process of trial and error used to guess a
person’s username, password or credit -card number
•Insufficient Authentication:
Insufficient Authentication occurs when an application permits an attacker to access
sensitive content or functionality without having to properly authentication
•
Weak Password Recovery Validation:
Weak Password Recovery Validation is when an application permits an attacker to
illegally obtain, change or recover another user’s password
• Insufficient Session Expiration:
Insufficient Session Expiration is when an application permits an attacker to reuse old
session credentials or session IDs for authorization
35. iPhone & Android ApplicationTesting: Check List
•
Page scrolling
•
Navigation between screens
•
Data testing
•
Network Testing: (if the application is Network based)
•
Verify the behavior of application when there is Network problem and user is
performing operations for data call
User should get proper error message like “Network error. Please try after
sometime”
Application Side Effects:
•
Installed application should not cause other applications of device to hamper
36. iPhone & Android ApplicationTesting: Check List
•
Check Application start/stop behavior
•
Check if No disruption to voice calls: With the application installed and running
use a second phone to call the test device
•
Check if No disruption to text messages: With the application installed and
running, send a text message to the test device
•
Check for Multitasking: No disruption to key device applications
•
Check for social networking options such as sharing ,posting and links etc
•
Memory testing: check the memory by filling and emptying it ,then compare the
application results
•
Check if any payment gateway occurs like Paypal, American Express etc
37. Tips for Android Usability Testing
•
It is preferred to have a quick and easy app with less functionality than a slow and
difficult application with many features
•
An app that is easy-to-use and intuitive, and similar to industry-accepted interfaces
will tend to do well
Icons & Buttons
•
Buttons should have the right size and be suitable to big fingers.
•
Buttons in the same place of the screen to avoid confusion.
•
Natural and consistent icons.
•
Buttons that have the same function should have the same color
38. Tips for Android Usability Testing
Touch
•Tapping should zoom-in and zoom-out
•There must be a way to go back or undo an action, as touching the wrong item is done quickly
•Minimize keyboard input
Menu
•Contextual menus should not be overloaded because it has to be used quickly
Text
•Keep text simple and clear
•Short sentences and paragraphs are readable
•The font size should be big enough, not too big and not too small
Messages
•When the app starts downloading a lot of data, the user should be warned
•Test the closing of the app from different states and check if it re-opens in the same state