Process of checking the functionality of the application against requirement specification. It's a Part of Software Development Life Cycle. SDLC is as follows...
![]() |
The following is a list of the different types of testing that can be considered
Both are interrelated up to a certain extent but not really the same.
Mobile Application Testing is the testing of the applications like comics, game which we are targeting for any handset. & Mobile Testing is the Testing of the Mobile handsets for its features.
Mobile Application Testing: Mobile Application Testing is the testing of mobile applications, Games which we are making as a third party for the targeted mobile handset.
* Here the focus is on overall functionality of the application or game you are making.
* Response of application on incoming call, sms, and weak network.
* Testing of User Interface of application & Behavior of application under stress.
Mobile (Device) Testing: Mobile Testing is testing of Mobile Handsets or devices to assure the quality of mobile devices, The testing will be conducted on both hardware and software. And from the view of different procedures, Factory Testing and Certificate Testing.
* It included Mobile software compatibility Testing.
* Here we test whether all the core feature and basic things in the mobile (for which a mobile device is built in) like SMS ,Voice calls, connectivity(Bluetooth).
Re-Testing: Testing functionality again or testing functionality repetitively is called re-testing. Re-testing comes in the following 2 scenarios.
Functional Testing is the type of testing done against the business requirements of application. It is a black box type of testing. In the types of functional testing following testing types should be cover:
Integration testing is the phase in software testing in which individual software modules are combined and tested as a group.
Thousands of devices come into market on a regular basis. So, it is impossible for a QA to check the app functionality on each and every device available on market. For this, they make use of simulators. Simulators are nothing more than a virtual platform or an imitation of the real world process/device. Testing to a level of almost 70-75% accuracy can be done using these simulators. Factors like network modes, involvement of interruptions like incoming calls, alerts, messages, etc. can all be tested using the different simulators. But not all these facilities are available in the simulators, hence it is very important that we test our application on the actual device. These actual devices have different versions of operating systems (OS). And they get updated almost every month. So, to make the app more accurate, the QA should do a thorough testing using a simulator and again test it on one or more actual devices with different OS versions.
The explosion of mobile applications presents an entirely new set of security. Indeed, software can meet every requirement and perform every specified action flawlessly yet still be exploited by a malicious user. This is because security bugs are different from traditional bugs. Security testing for mobile apps:
The goal of usability testing, is to make sure that a user can complete the tasks they are expected to complete. A good user experience can be thwarted by a number issue, including:
There can be a lot of scenarios for mobile client applications.
Smoke testing can be done on a Mobile once the latest build has been released to the testing team. Smoke test or build verification is nothing but just the basic functionality check for all the applications, test scope parameters that are involved in mobile application testing, testing very basic and important features of the mobile and also testing the showstopper issues at a higher priority level.
Below are given a few scenarios to test the mobile battery backup:
Test plan document is prepared by the tester, it contains the contents like introduction, objectives, test strategy, scope, test items, program modules user procedures, features to be tested, features not to tested, approach, pass or fail criteria, testing process, test deliverables, testing tasks, responsibilities, resources, schedule, environmental requirements, risks, change management procedures, plan approvals, etc. All these things help a tester to understand the testing he should do & what he should follow for testing that particular project.
Defect report consists of:
Depends on the severity the priority will be decided depends on the functionality of the test case.
USER INTERFACE TESTING
Mobile application testing is not just about writing test cases and executing them. Below are some pointers that can help to test mobile applications in the most effective manner.Explore and learn about mobile phones and their attributes. Also gather domain knowledge.
Understand when, how and where the application will be used and then create test cases.Study the mobile phones on which the applications will run and write appropriate test cases.Use real devices / simulators as often as possible to execute the test cases.
Smoke testing can be done on a Mobile once the latest build has been released to the testing team. Smoke test or build verification is nothing but just the basic functionality check for all the applications, test scope parameters that are involved in mobile application testing, testing very basic and important features of the mobile and also testing the showstopper issues at a higher priority level.
The test case is a document which contains all the scenarios for all the function to be tested as per the customer requirement.
Test case execution:We need to write test cases for all the types of testing and needs to be executed.
1.New/Open ---> 2.Assigned ---> 3.Fixed ---> 4.Retest ---> 5.Closed ---> 6.No (Repeat from2~5)
Defect Report: we can report the bugs to the customer manually creating the document or we can also create bug report by using bug trackings tool like "Redmine" / "buzilla"
Tool contains:
User Acceptance Testing (UAT) is a process to obtain confirmation that a system meets mutually agreed-upon requirements.
This may include factory acceptance testing, i.e. the testing done by factory users before the product or system is moved to its destination site, after which site acceptance testing may be performed by the users at the site.
Also known as operational readiness testing, this refers to the checking done to a system to ensure that processes and procedures are in place to allow the system to be used and maintained. This may include checks done to back-up facilities, procedures for disaster recovery, training for end users, maintenance procedures, and security procedures.
Alpha testing takes place at developers' sites, and involves testing of the operational system by internal staff, before it is released to external customers. Beta testing takes place at customers' sites, and involves testing by a group of customers who use the system at their own locations and provide feedback, before the system is released to other customers. The latter is often called "field testing".
It helps prevent defects from being introduced into the code.
Risk-based testing is the term used for an approach to creating a test strategy that is based on prioritizing tests by risk. The basis of the approach is a detailed risk analysis and prioritizing of risks by risk level. Tests to address each risk are then specified, starting with the highest risk first.
Dial *#0000# to Check device software version.
In case you want to restore your Android based smart phone to the factory default settings, it is possible to perform a Factory data reset from within the Android operating system.
Supported Versions of Android:2.1, 2.2, 2.3, 3.0 and 4.0
Supported Resolutions of Android:
When screens are considered, two factors are taken into account when it comes to measurements:
- Android OS (Google Inc.): The Android mobile operating system is Google's open and free software stack that includes an operating system, middleware and also key applications for use on mobile devices, including smartphones. Updates for the open source Android mobile operating system have been developed under "dessert-inspired" codenames Cupcake, Donut, Eclair, Gingerbread, Honeycomb, Ice Cream Sandwich.
- BlackBerry OS (Research In Motion): The BlackBerry OS is a proprietary mobile operating system developed by Research In Motion for use on the company's popular BlackBerry handheld devices. The BlackBerry platform is popular with corporate users as it offers synchronization with Microsoft Exchange, Lotus Domino, email and other business software, when used with the BlackBerry Enterprise Server.
- iPhone OS / iOS (Apple): Apple's iPhone OS was originally developed for use on its iPhone devices. Now, the mobile operating system is referred to as iOS and is supported on a number of Apple devices including the iPhone, iPad, iPad 2 and iPod Touch. Apple iOS is derived from Apple's Mac OS X operating system.
- Windows Mobile (Windows Phone ): Windows Mobile is Microsoft's mobile operating system used in smartphones and mobile devices - with or without touch screens.
- Bada (Samsung Electronics): Bada is a proprietary Samsung mobile OS that was first launched in 2010. The Samsung Wave was the first smartphone to use this mobile OS. Bada provides mobile features such as multipoint-touch, 3D graphics and of course, application downloads and installation.
- Symbian OS (Nokia): Symbian is a mobile operating system (OS) targeted at mobile phones that offers a high-level of integration with communication and personal information management (PIM) functionality. Symbian OS combines middleware with wireless communications through an integrated mailbox and the integration of Java and PIM functionality (agenda and contacts). Nokia has made the Symbian platform available under an alternative, open and direct model, to work with some OEMs and the small community of platform development collaborators. Nokia does not maintain Symbian as an open source development project.
- MeeGo OS (Nokia and Intel): A joint open source mobile operating system which is the result of merging two products based on open source technologies: Maemo (Nokia) and Moblin (Intel). MeeGo is a mobile OS designed to work on a number of devices including smartphones, netbooks, tablets, in-vehicle information systems and various devices using Intel Atom and ARMv7 architectures.
MSISDN is a Mobile Station International ISDN Number. MSISDN is a number uniquely identifying a subscription in a GSM or UMTS mobile network. It's a phone number of the SIM card.
INTERNATIONAL MOBILE SUBSCRIBER IDENTITY (IMSI) The IMSI is a unique identifying code allocated to each subscriber allowing correct identification over the radio path and through the GSM and WCDMA network. It is used for all identification signaling in the PLMN and all network related subscriber information is connected to it. The IMSI is stored in the Subscriber Identity Module (SIM, USIM),
MSIN = Mobile Subscriber Identification Number According to the GSM and WCDMA specifications, IMSI can have a maximum length of 15 digits.
Go to the dial screen on your phone. On the keypad, enter *#06# and dial. The response gives IMEI of the device.
In mobile devices, the PIN acts like a password preventing other people from gaining unauthorized access to your device. This is a numeric code which must be entered each time the device is started (unless the PIN security feature is turned off). In GSM mobile phones, the PIN is normally associated with the SIM card (not the phone) and must be entered each time the phone is switched on. If a wrong PIN is entered three times in a row the handset is locked until you enter another code, called a PUK code. Both the PIN and the PUK codes are supplied by the operator, but only the PIN code can be changed by the user.
When we talk into a mobile telephone it converts the sound of voice to radiofrequency energy (radio waves). The radio waves are transmitted through the air to a nearby base station. The base station then sends the call through the telephone network until it reaches the person we are calling. When we receive a call on mobile phone the message travels through the telephone network until it reaches a base station near to us. The base station sends out radio waves, which are detected by telephone and converted back to speech. Depending on the equipment and the operator, the frequency that each operator utilizes is 900MHz, 1800MHz or 2100MHz. The mobile phone network operates on the basis of a series of cells. Each cell requires a radio base station to enable it to function.
Devices and their attributes can be identified in many ways.
A user-agent is defined as the client application i.e. The HTTP header field contains information about the user agent originating the web request. User Agent is mandatory while downloading appropriate contents onto mobile.
Just like the UA string, the UA profile is available in the HTTP headers. The UA profile is an RDF document that contains detailed information, which can be used by content providers to produce the appropriate format for a specific device. The UA profile provides information about device,
These are the two different means of mobile communication being presently used worldwide. The basic difference lies in the Multiplexing method used in the aerial communication i.e. from Mobile Tower to your mobile and vice versa.
Enhanced Data GSM Environment (EDGE) is a new, faster version of GSM. EDGE is designed to support transfer rates up to 384Kbps and enable the delivery of video and other high-bandwidth applications. EDGE is the result of a joint effort between TDMA operators, vendors and carriers and the GSM Alliance.
Developed by Nortel Networks, Universal Mobile Telecommunications Service (UMTS) is a standard that will provide cellular users a consistent set of technologies no matter where they are located worldwide. UMTS utilizes W-CDMA technology.
Third generation (3G) wireless networks offers faster data transfer rates, enabling new wireless applications such as streaming media. The first generation of wireless (1G) was analog cellular. The second generation (2G) is digital cellular, featuring integrated voice and data communications. So-called 2.5G networks offer incremental speed increases.
Over The Air (OTA) refers to any wireless networking technology. OTA is the method of making data transfers or transactions wirelessly using the cellular network instead of a cable or other local connection. Most commonly, this term refers to downloading or uploading content or software (such as downloading ringtones, uploading images, etc.).
APN (Access Point Name) identifies the data access services associated with the account. APN is the exit point from the GPRS network into either the public Internet or a private customer gateway. The APN must match the user authorization settings.
A method of transferring data by breaking it up into small chunks called packets. With packet-switched data, each user only consumes network resources when they are actually transferring data. There are many different types of packet data for mobile phones, with different maximum speeds. The packets carry the data in the protocols that the Internet uses, Transmission Control Protocol/Internet Protocol (TCP/IP). Each packet contains part of the body of your message. A typical packet contains perhaps 1,000 or 1,500 bytes.
Go to Menu -> Settings -> Connectivity -> Network Settings -> Packet Data, And set packet data connection 'when available' and make sure access point settings.
- Screens of various types: Different Mobile devices in market with all sort of shapes and sizes and all flashy looks make it difficult to exactly check the device compatibility of application.
- Keyboard versus stylus use: As we are talking here of Mobile Devices it just not consist of Mobile Phone while a big range of Mobile Devices is consisting of Personal Digital Assistance (PDA) as well as other smart devices .As PDA doesn't consist of Keypad the things been done by using the touch screen functionality, so many a times designing and testing the applications for various such environment needed concern for such Keypad and stylus issues. - Operating systems for mobile devices (Windows CE / Palm OS): Different operating system been loaded at different Mobile Client .The application should be well based at all the operating system and the uniformity and consistency of the application should not be lost out of running on different operating system. - Proper internationalization: Normally we are not sure where the end user using our application is located, so it should be make a point with the Test Engineer that application doesn't loose the motive out of running or accessing in other languages channel. The application should be in conformance with Unicode standards. Example it should display Chinese, Japanese and other characters properly. - File formats: Mobile is just not specific to WML or CHTML, while nowadays it supports a lot more scripting language like XHTML and image formats like gif, jpeg other then wbmp and also j2me applications. So while testing the application we should make it a point to find out the support as per the device specification for all such file formats. - File size: Different Mobile Devices comes up with different memory sizes and also their download capability varies according to that. We should make a point in our application that the downloadable image or game or any other thing should tune up with the Memory capabilities of respective device. - Line and word-wrapping Features: Many a times using Label and Text Control we missed to take in account of screen size and display properties, although Pagination is a solution for this still we should take care of display specific issues in our application. - Security issues: Mobile is just not a way of information sharing while e-commerce has a gateway to Mobile Phones. We have to look for the security issues when we are going to build transaction sites and other such applications. It should have proper planned session and cookie support as well WTLS and other security layer support for handling such transactions.Value added services refer top extra services like toll free number, getting messages for new offers in recharging sim card, getting messages for downloading new ringtones, caller tunes, videos, songs, wallpaper etc.
Cache will make the device Browser to run faster & it clears the earlier information stored
Websites use cookies to offer a personalized experience to users and to gather information about website use. Many websites also use cookies to store information that provides a consistent experience between sections of the site, such as a shopping cart or customized pages. With a trusted website, cookies can enrich your experience by allowing the site to learn your preferences or allowing you to skip having to sign in every time you go to the website. However, some cookies, such as those saved by banner ads, might put your privacy at risk by tracking sites you visit.
Wireless Application Protocol (WAP) is a protocol for transmitting data between servers and clients (usually small wireless devices like mobile phones). WAP is analogous to HTTP in the World Wide Web. Many mobile phones include WAP browser software to allow users access to Internet WAP sites.
Mobile Web : No installation required
How does the site render in different browsers
MIDP (Mobile Information Device Profile) is a set of Java APIs (Application Programming Interfaces) which, together with the CLDC (Connected Limited Device Configuration) and provides a complete Java application runtime environment targeted at mobile information devices--including cellular phones. The applications for MIDP Java devices must be written in MIDP Java.
JAD is a file extension for Java Application Descriptor file.JAD files describe the contents of a MIDlet, a type of Java application commonly used for games and applications for Java ME for mobile platforms. JAD files are used to identify retrieve and install MIDlets
Ensure that the application responds in an agreed manner to the interruptions. Some of the most common interruptions that can happen in a Smartphone are listed below:
Just to make things clear, imagine the testing a time-bound game in which makes clear a puzzle in a two-minute window. Now, if an incoming call comes on to the device while playing the game, the device should automatically go into pause mode and allow the user to continue from where he had left off when taking the call.
The image in the middle gives us a clear idea of how Smartphone users are addicted to using WIFI on their devices to connect to Internet. The high cost of data plans is a major concern for Smartphone users When accessing applications using the device's connection. Hence, the majority of users prefer to use the applications over WIFI. Therefore, it is very important that our applications are made compatible with use over WIFI connections. Hence, tests should also be designed to ensure that the Applications work perfectly on WIFI. WIFI connectivity issues should also be addressed by the application. That is, if the WIFI connection is lost while the user is working on the application, they should be immediately alerted that their connection is lost and this should avert the application crashing.
There are many techniques to download a content e.g. downloading, progressive downloading, streaming etc.
Functional testing: Testing each & every component of the application as per our customer requirement.
Adhoc Testing: If you test software without following any procedures and documentation then it is called adhoc-testing. It is also called informal testing.
Risk Based Testing (or) Priority Based Testing: Identifying the critical functionality in the system and testing it first
Non-Functional System Testing: Validating various non functional aspects of the system such as user interfaces, user friendliness, security, compatibility, load, stress and performance etc is called non-functional system testing
Non Functional Testing Testing the design Requirements, design and technical specifications can be tested in their own right. The purpose of evaluating a specification is threefold:
UI / GUI Testing: Validating if all user interfaces are professionally designed or not is called UI Testing. Check List for UI Testing:
Usability Testing: Checking how easily the end user is able to understand and operate the application Security Testing: Validating whether all security conditions are properly implemented in the software or not
Ensure that the application responds in an agreed manner to the interruptions. Some of the most common interruptions that can happen in a Smartphone are listed below:
Just to make things clear, imagine the testing a time-bound game in which makes clear a puzzle in a two-minute window. Now, if an incoming call comes on to the device while playing the game, the device should automatically go into pause mode and allow the user to continue from where he had left off when taking the call.
Field testing is performed to ensure the device is built to standardized specifications by validating the device hardware and software. A few of the things this involves are checking basic features like Call performance (monitor point and monitor route testing), interoperability testing and re-testing in different fields.
Simulator is used to test the downloading process using various user agents to check whether a device is recognized and specific content/build is sent through OTA.
The mobile devices used by consumers create the most obvious challenge to mobile Web testing. There are potentially tens of thousands of different client devices that could be used to access the mobile app or website, and they must therefore all be considered when testing your mobile applications. Testing can be done exclusively with emulated devices, or a combination of each device group.
# | Error code or Message | Cause | Fixing Error |
---|---|---|---|
1 | "901" or "Insufficient Memory" | Lower memory | 1.Remove some application from memory.
2.Remove your phone's battery for a minute or two then replacing it and restarting for a clean boot. |
2 | "905", "attributes mismatch" or "908" or "Incompatible Configuration or Profile" |
Usually means that your are trying to install a MIDP2 version on a phone that only supports MIDP1 | Check MIDP Version |
3 | "904", "JAR size mismatch", or "905", "Attribute mismatch", or "Content size mismatch", or "906" and "Invalid Descriptor Attribute Format" |
All indicate that the phone thinks there is something wrong with the Java Application Description (JAD) file | Check JAD file |
4 | "903" , "network timeout", or "907" or "server error" |
These errors indicate network problems which are often temporary | Try again later |
5 | 909", "Application Authentication failure" , or 910" or "Application authorization failure" or "Application authorization failure" |
Certificate issue | Use the unsigned versions, otherwise try the other signed versions first with the unsigned as a last resort. |
6 | Expired Certificate | Set the phone date back by 7-8months.. | |
7 | Unable to install. Constrained by the certificate. | Message pops up when you attempt to install developer certificate in the unsupported device. | The developer certificate from Symbian Signed can only be used in a limited number of devices. Remember that you have to send your IMEIs to Symbian Signed when requesting certificate. Note: You cannot use the certificate in other devices that is not in your IMEIs list. |
8 | Unable to install a protected application from an untrusted supplier. | If you use protected UID (0x20000000 - 0x2FFFFFFF) or legacy UID (0x10000000 - 0x1FFFFFFF) | If you use self-signed certificate, make sure that your application uses unprotected UID, i.e. 0xA0000000 - 0xAFFFFFFF |
9 | Required application access not granted. | Check that your certificate can be used to sign all capabilities needed by your software For example, if you use self-signed certificate, you can only sign basic set capabilities, i.e. Network Services, ReadUserData, WriteUserData, Local Services and User Environment. If your application requires one of the extended capabilities, for example Sw Event, you cannot sign it with self-signed certificate. In this case, apply for developer certificates from Symbian Signed. |
Google Android is open source software. In theory this means that the Google Android software platform will have a competitive advantage over other operating systems like Symbian, Microsoft mobile or Blackberry. There are a host of advantages that Google's Android will derive from being an open source software. Some of the advantages include:
We now provide our clients with on-line access to track the progress of testing. Clients will be provided with login details at the beginning of the testing. From within our tracking system, you are able to:
- Upload the item to tested (or provide a download link etc.)
- Contact the testers assigned to the project at any time
- Receive notification of any updates regarding the testing
- View/Download test reports.
In experience-based techniques, people's knowledge, skills and background are a prime contributor to the test conditions and test cases. The experience of both technical and business people is important, as they bring different perspectives to the test analysis and design process. Due to previous experience with similar systems, they may have insights into what could go wrong, which is very useful for testing.
Scripted end-to-end testing which duplicates specific workflows which are expected to be utilized by the end-user
The process of evaluating software at the end of the software development process to ensure compliance with software requirements. The techniques for validation is testing, inspection and reviewing.
The process of determining whether of not the products of a given phase of the software development cycle meet the implementation steps and can be traced to the incoming objectives established during the previous phase. The techniques for verification are testing, inspection and reviewing.
* Contact us to know how we can help with your testing needs