Mobile application and mobile web are becoming more and more popular. As any other emerging domain, mobile application and mobile web testing have their own challenges such as:
* Variety of mobile phone and networks in the market
* Variety of Operating System in Mobile phones
* Browsers used in the mobile
* Complexity of functions (small device, too many functions)
* Data connectivity issues (to be tested too)
* Lack of standard tools
Mobile applications are mainly developed on mobile phone simulators. This simplifies the problem of module testing to any other module testing. System level testing, when the software is tested on a real mobile phone, gives all of the complications in management of the test cases as well as the test coverage (sufficient testing) aspect. One normal practice followed is to keep a matrix of mobile phone models, OS and browser versions (for browser dependent ones) and pick up the right combination for maximum coverage of testing.
Test automation to some extent is possible using conventional test automation tools with extension scripts. Based on a small statistics, defects escaped into the customer hands are nearly double that of a conventional software application project. However, mobile users seems to be more tolerant for such defects in the current industry scenario.
Variety of Operating System in Mobile phones
If you need to know more details about ANDROID SDK, please click here.
Mobile Operating Systems (Mobile OS)
Like a computer operating system, a mobile operating system is the software platform on top of which other programs run. When you purchase a mobile device, the manufacturer will have chosen the operating system for that specific device. The operating system is responsible for determining the functions and features available on your device, such as thumb wheel, keyboards, WAP, synchronization with applications, e-mail, text messaging and more. The mobile operating system will also determine which third-party applications can be used on your device. Some of the more common and well-known Mobile operating systems other than Black berry and iPhone are listed below:
* Symbian OS - Symbian OS has become a standard operating system for smart phones, and is licensed by more than 85 percent of the world's handset manufacturers. The Symbian OS is designed for the specific requirements of 2.5G and 3G mobile phones.
* Windows Mobile - The Windows Mobile platform is available on a variety of devices from a variety of wireless operators. You will find Windows Mobile software on Dell, HP, Motorola, Palm and i-mate products. Windows Mobile powered devices are available on GSM or CDMA networks.
* Palm OS - Since the introduction of the first Palm Pilot in 1996, the Palm OS platform has provided mobile devices with essential business tools, as well as capability to access the Internet or a central corporate database via a wireless connection.
* Mobile Linux - The first company to launch phones with Linux as its OS was Motorola in 2003. Linux is seen as a suitable option for higher-end phones with powerful processors and larger amounts of memory.
* MXI - MXI is a universal mobile operating system that allows existing full-fledged desktop and mobile applications written for Windows, Linux, Java, Palm be enabled immediately on mobile devices without any redevelopment. MXI allows for interoperability between various platforms, networks, software and hardware components.
Mobile Web Browsers List
Below is a list of popular and some uncommon micro browsers - web browsers for cell phones and other such mobile devices. Many mobile web browsers like Opera Mini (the most popular at the time of writing) display a full web page on the small mobile screen instead of a scaled down version. This is achieved by first parsing it on a server that partly or completely renders the page and sends the results to the mobile device.
Probably the world's most popular mobile web browser.
The free Bolt browser gives users a fast, efficient and feature-rich way to enjoy full PC-style web pages and rich media applications on the tiny screens of their mobile devices.
Fennec is a micro-browser for mobile phones and PDAs. It is based on Firefox but has a completely different interface (and rightly so!).
Developed by a Japanese company and very popular in that country, the ibis Browser is based on both Java and C++ (for Windows Mobile phones).
IE Mobile is a micro-browser that runs on both Windows mobile and CE platforms.
Iris browser developed by Torch Mobile runs on Windows Mobile, Windows CE, Qt and Qtopia and offers a customizable interface, touch screen controls, zoom and tap functions, multiple windows and tabs and much more.
MicroB is Nokia's Mozilla based browser for Maemo that can also be extended with available plug-ins. It has AJAX support and supports XML to render RSS feeds.
Blazer is a web browser available for Palm hand-helds running Palm OS 3.1 or higher with 8MB of free memory available
Safari is a mobile browser used primarily on iPhones and the iTouch. It renders the complete web page and not a scaled down version. The user-friendliness of the iPhone coupled with Safari has helped the device get almost 65% share of mobile web usage.
Developed by a Japanese company, Netfront is a micro-browser used on mobile phones, PDAs, same consoles (Sony Play Station Portable).
WinWAP as its name suggests is a mobile web browser for devices that run Windows Mobile operating system. The browser is not free.
The Blackberry browser lets you surf full HTML content with the ability to download ring tones, video and audio files.
Challenges in Mobile Application Testing
Today’s mobile applications deliver complex functionality on different platforms that have limited resources for computing. Mobile applications can either be standalone applications or web based mobile applications.
* Screen Size - Screen size is one of the biggest limitations of mobile devices. Taking into consideration only the color mobile, the smallest screen size is 128 x 128 and the largest is 800 x 480. Smaller screens have a portrait orientation and the large screens have a landscape orientation. Between them are the phones that can change orientation i.e., they work in both landscape and portrait modes. So far 240 x 320 is the overall dominant screen size. Small screen resolution makes web pages almost illegible.
* Display Resolutions - Different mobiles have different resolutions. Low resolution can degrade the quality of multimedia displayed on the screen of mobile device.
* Processing capability - Limitations in processing speed and memory size of mobile devices is a major issue to be handled. Phones, sometimes only allow a single active process on them. Your application may fail if something like opera-mini is running in the background and you are trying to communicate out.
* Diversified platform and devices - An application may work on one phone model and not work on the very next model from the same company and these models are all sold in the market at the same time. Just because you've tested on one phone model does not mean it will work on the next. The jar size limits on these phone models can vary. Even some popular models don't really allow big downloads. Space is always at a premium so you want to constantly be on the lookout for download size of your application and flag it when it increases.
* Type of content - Content delivery bothers both mobile user and carrier as well. E.g. when page size is large, device will not be able to handle it. Page should be cropped or re sized and delivered without losing relevant information. Also page can be divided into fragments and displayed in multiple pages. Scrolling to read documents or web page will not be user friendly.
* Connectivity - Network Connectivity largely decides the data download time and also the quality of streaming media. Slow and unreliable wireless network connection with low bandwidth is a common hindrance for mobile applications. Carrier or device should be GPRS, Edge, 3G or 4G compatible.
* Data Input Methods - Mobile devices come in 2 flavors; soft keyboards/touch screens and physical keyboards. Small buttons and labels limit the user’s effectiveness and efficiency in entering data. This result in slowing down the input speeds and introduces the chances of error.
* Device screen flip capabilities - Page layout or content will change when user access page in different screen modes.
* Database issues – Memory size, In Black berry not support database with set up files.
* Usability factors – user friendliness, self explanatory features, browser compatibility, help etc
* Voice and Image Clarity (Signal breakage)
* Scalability issues
* Memory leakage
* Performance issues – load and stress testing
* Lack of standard testing tools
* Variety of mobile phone and networks in the market
* Variety of Operating System in Mobile phones
* Browsers used in the mobile
* Complexity of functions (small device, too many functions)
* Data connectivity issues (to be tested too)
* Lack of standard tools
Mobile applications are mainly developed on mobile phone simulators. This simplifies the problem of module testing to any other module testing. System level testing, when the software is tested on a real mobile phone, gives all of the complications in management of the test cases as well as the test coverage (sufficient testing) aspect. One normal practice followed is to keep a matrix of mobile phone models, OS and browser versions (for browser dependent ones) and pick up the right combination for maximum coverage of testing.
Test automation to some extent is possible using conventional test automation tools with extension scripts. Based on a small statistics, defects escaped into the customer hands are nearly double that of a conventional software application project. However, mobile users seems to be more tolerant for such defects in the current industry scenario.
Variety of Operating System in Mobile phones
If you need to know more details about ANDROID SDK, please click here.
Mobile Operating Systems (Mobile OS)
Like a computer operating system, a mobile operating system is the software platform on top of which other programs run. When you purchase a mobile device, the manufacturer will have chosen the operating system for that specific device. The operating system is responsible for determining the functions and features available on your device, such as thumb wheel, keyboards, WAP, synchronization with applications, e-mail, text messaging and more. The mobile operating system will also determine which third-party applications can be used on your device. Some of the more common and well-known Mobile operating systems other than Black berry and iPhone are listed below:
* Symbian OS - Symbian OS has become a standard operating system for smart phones, and is licensed by more than 85 percent of the world's handset manufacturers. The Symbian OS is designed for the specific requirements of 2.5G and 3G mobile phones.
* Windows Mobile - The Windows Mobile platform is available on a variety of devices from a variety of wireless operators. You will find Windows Mobile software on Dell, HP, Motorola, Palm and i-mate products. Windows Mobile powered devices are available on GSM or CDMA networks.
* Palm OS - Since the introduction of the first Palm Pilot in 1996, the Palm OS platform has provided mobile devices with essential business tools, as well as capability to access the Internet or a central corporate database via a wireless connection.
* Mobile Linux - The first company to launch phones with Linux as its OS was Motorola in 2003. Linux is seen as a suitable option for higher-end phones with powerful processors and larger amounts of memory.
* MXI - MXI is a universal mobile operating system that allows existing full-fledged desktop and mobile applications written for Windows, Linux, Java, Palm be enabled immediately on mobile devices without any redevelopment. MXI allows for interoperability between various platforms, networks, software and hardware components.
Mobile Web Browsers List
Below is a list of popular and some uncommon micro browsers - web browsers for cell phones and other such mobile devices. Many mobile web browsers like Opera Mini (the most popular at the time of writing) display a full web page on the small mobile screen instead of a scaled down version. This is achieved by first parsing it on a server that partly or completely renders the page and sends the results to the mobile device.
Probably the world's most popular mobile web browser.
The free Bolt browser gives users a fast, efficient and feature-rich way to enjoy full PC-style web pages and rich media applications on the tiny screens of their mobile devices.
Fennec is a micro-browser for mobile phones and PDAs. It is based on Firefox but has a completely different interface (and rightly so!).
Developed by a Japanese company and very popular in that country, the ibis Browser is based on both Java and C++ (for Windows Mobile phones).
IE Mobile is a micro-browser that runs on both Windows mobile and CE platforms.
Iris browser developed by Torch Mobile runs on Windows Mobile, Windows CE, Qt and Qtopia and offers a customizable interface, touch screen controls, zoom and tap functions, multiple windows and tabs and much more.
MicroB is Nokia's Mozilla based browser for Maemo that can also be extended with available plug-ins. It has AJAX support and supports XML to render RSS feeds.
Blazer is a web browser available for Palm hand-helds running Palm OS 3.1 or higher with 8MB of free memory available
Safari is a mobile browser used primarily on iPhones and the iTouch. It renders the complete web page and not a scaled down version. The user-friendliness of the iPhone coupled with Safari has helped the device get almost 65% share of mobile web usage.
Developed by a Japanese company, Netfront is a micro-browser used on mobile phones, PDAs, same consoles (Sony Play Station Portable).
WinWAP as its name suggests is a mobile web browser for devices that run Windows Mobile operating system. The browser is not free.
The Blackberry browser lets you surf full HTML content with the ability to download ring tones, video and audio files.
Challenges in Mobile Application Testing
Today’s mobile applications deliver complex functionality on different platforms that have limited resources for computing. Mobile applications can either be standalone applications or web based mobile applications.
* Screen Size - Screen size is one of the biggest limitations of mobile devices. Taking into consideration only the color mobile, the smallest screen size is 128 x 128 and the largest is 800 x 480. Smaller screens have a portrait orientation and the large screens have a landscape orientation. Between them are the phones that can change orientation i.e., they work in both landscape and portrait modes. So far 240 x 320 is the overall dominant screen size. Small screen resolution makes web pages almost illegible.
* Display Resolutions - Different mobiles have different resolutions. Low resolution can degrade the quality of multimedia displayed on the screen of mobile device.
* Processing capability - Limitations in processing speed and memory size of mobile devices is a major issue to be handled. Phones, sometimes only allow a single active process on them. Your application may fail if something like opera-mini is running in the background and you are trying to communicate out.
* Diversified platform and devices - An application may work on one phone model and not work on the very next model from the same company and these models are all sold in the market at the same time. Just because you've tested on one phone model does not mean it will work on the next. The jar size limits on these phone models can vary. Even some popular models don't really allow big downloads. Space is always at a premium so you want to constantly be on the lookout for download size of your application and flag it when it increases.
* Type of content - Content delivery bothers both mobile user and carrier as well. E.g. when page size is large, device will not be able to handle it. Page should be cropped or re sized and delivered without losing relevant information. Also page can be divided into fragments and displayed in multiple pages. Scrolling to read documents or web page will not be user friendly.
* Connectivity - Network Connectivity largely decides the data download time and also the quality of streaming media. Slow and unreliable wireless network connection with low bandwidth is a common hindrance for mobile applications. Carrier or device should be GPRS, Edge, 3G or 4G compatible.
* Data Input Methods - Mobile devices come in 2 flavors; soft keyboards/touch screens and physical keyboards. Small buttons and labels limit the user’s effectiveness and efficiency in entering data. This result in slowing down the input speeds and introduces the chances of error.
* Device screen flip capabilities - Page layout or content will change when user access page in different screen modes.
* Database issues – Memory size, In Black berry not support database with set up files.
* Usability factors – user friendliness, self explanatory features, browser compatibility, help etc
* Voice and Image Clarity (Signal breakage)
* Scalability issues
* Memory leakage
* Performance issues – load and stress testing
* Lack of standard testing tools
No comments:
Post a Comment