Welcome to Scribd, the world's digital library. Read, publish, and share books and documents. See more
Standard view
Full view
of .
Look up keyword
Like this
0 of .
Results for:
No results containing your search query
P. 1
Cognizant Mobile Testing

Cognizant Mobile Testing

Ratings: (0)|Views: 28|Likes:
Published by priyanka

More info:

Published by: priyanka on Nov 21, 2012
Copyright:Attribution Non-commercial


Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less





Cognizant White Paper
white paper
Don't Leave Quality Behind in Mobile App Testing
Most of the other hardware components that go into aPC or Mac, such as the disk drives, graphics processorand network adapters are usually thoroughly tested forMobile devices are poised to challenge PCs as thecompatibility with those operating systems and pose aapplication platform of choice, with 412 million mobilerelatively minor risk of problems. Their display formatsinternet devices expected to ship in 2012 compated to 139also fall within a relatively narrow range of choices, andmillion PCs. Businesses in the United States alone arethe input devices (mostly keyboards and mice) are well-expected to spend $11.6 billion on mobile applicationsknown and familiar.that year, with 30 million young Americans signed up formobile social media applications by that time.But mobile voice and data service carriers differentiatethemselves by offering a dizzying range of handsets, eachTo tap this growing market, developers are creatingwith unique configurations and form factors that can haveapplications that enable everything from mobile checkunpredictable effects on the performance, security anddeposits to location-based advertising. But theusability of applications. Various handsets are built aroundcommercial success of these applications depends ona wide variety of processors, running at various speedstheir working smoothly and securely on a wide variety ofwith widely varying amounts of memory, as well as screenshandheld devices and wireless networks. Performingof different sizes operating at different resolutions and insuch testing quickly and cost-effectively greatly expandsdifferent orientations (landscape, portrait or both.)the market for such applications. But the complexity ofthe mobile hardware and software environment makesToday's mobile handsets also contain a greater, and a moresuch testing vastly more complicated than forrapidly-changing, variety of hardware than the typical PC.applications designed for PCs.These components may include Wi-Fi and Bluetoothnetwork capabilities (along with, of course, cellularThis white paper describes the unique complexitiesconnectivity), an FM radio, a camera and in more and morefacing mobile application testers. It then suggestscases a GPS receiver and even an accelerometer, whichspecific methodologies and tools that, based onsenses the movement of the device to reorient the displayCognizant's experience testing mobile applications forfrom portrait to landscape. Many handheld devices rely onglobal customers, balance the need for a quality usermultiple digital signal processors (one to handle voiceexperience with the business requirement to delivercommunications, the other to process the audio, video andapplications to the market in the shortest possible time.images associated with applications), as well as multipleinput devices, such as a touch-screen and a keypad. Eachcombination of components interacts in different wayswith each other, and with the operating system, to createIn the PC world, testers have essentially only one centralpotential compatibility and performance issues that mustprocessing unit platform (x86-compatiblebe addressed in testing.microprocessors) on which they must test applications.
Challenge One: Hardware Complexity
In addition to these hardware-based concerns, the tester user moves among cells or coverage areas. Differentmust cope with the complexity of the software carriers use different methods to tunnel their own trafficenvironment. To assure an application will work on most into the TCP IP protocol used by the Web, changing howcustomers' PCs, a tester need only test it on the most applications receive, transmit and receive data. They alsopopular current versions of the Windows, Apple use different Web proxies to determine which Web sites theirMacintosh and Linux operating systems. To assure users can access, and how those sites will be displayed onperformance on the same range of mobile devices, a their devices. All of these differences can affect the stability,tester must address all current versions of the iPhone, performance or security of a mobile application, and mustWindows Mobile, Symbian, Android, iPhone and RIM be tested to assure the end-user experience.Blackberry OSes, as well as the Maemo OS developed byJust as mobile operating systems are constantlyNokia.changing, so are the networks, protocols and other keyThe handheld OS market is not only more splintered than elements of the infrastructures used by the networkthat for PCs, but is also changing much more quickly. For providers. Carriers worldwide are upgrading theirexample, as little as five years ago Palm was one of the networks from 2G to 3G, and even to 4G with LTE (Longdominant operating systems for mobile devices, but its Term Evolution) networks.
white paper2
Mobile voice and data servicecarriers differentiate themselves by offering a dizzying range ofhandsets, each with unique configurations and form factorsthat can have unpredictable effects on the performance,security and usability of applications.
influence is rapidly fading in favor of, for example, theiPhone OS. Such changes require that testers maintainknowledge of the test tools required for an ever-changing cast of operating systems.Finally, in order to be certified by carriers or handsetmanufacturers (and thus gain access to wider markets)applications may have to be tested for compliance withindustry or carrier-specific standards. Each of theseadded test requirements increases the complexity, costSuch complexity continues throughout the entire mobileand time required to assure proper mobile applicationsoftware stack. Various devices might utilize runtimeperformance.environments ranging from J2ME to the .NET CompactFramework or BREW. Developers can also choose among The picture is not all bleak, though. Testing thatdifferent rendering standards, such as HTML, WML, WAP meets these challenges helps speed an application to1.2, WAP2.0, cHTML and xHTML. Testers must also build market by reducing time-consuming rework at laterand execute scripts checking the interaction among the stages of the development process. Studies show thatvarious applications on the handset, as well as between finding and fixing defects after an application goesthe application and components such as the camera, into production can cost as much as 200 times moremicrophone, charger, Bluetooth, Wi-Fi and cellular than it would have during testing. Proper testing alsoradios. helps increase the range of devices, carriers andoperating systems the application will run on,Finally, applications must be tested for theirincreasing its revenue and profit potential. Cognizantcompatibility with any of the networks on which anyTesting Services, the world's largest dedicatedgiven device might run. The networks operated bytesting service provider, has worked with leadingdifferent carriers provide various levels of bandwidth,mobile application developers and carriers insometimes even within the same session as thevertical markets ranging from communications to
financial services, travel, life sciences and mediaservices to assure the highest levels of usability,performance and security. Based on this experience, itrecommends that testers use emulators whereappropriate, perform as much testing as early aspossible in the development cycle, and adapt their testscripts to reflect the unique requirements of the mobileenvironment.Ideally, all mobile application testing would be doneon the target mobile device so that every possibleinteraction among its hardware and softwareelements, as well as with the carrier's network, couldbe tested in the most accurate and reliableenvironment.However, acquiring every possible target device andperforming manual testing on it is too complex, costlyand time-consuming tobe feasible during everystage of testing. Deviceemulators – softwarethat simulates theperformance andbehavior of the physicaldevice – are far easier toobtain and lessexpensive than samplesof the physical devices. While they can be less accuratetest platforms than the actual hardware, they can be acost-effective complement to testing on the physicaldevice when used appropriately.Cognizant Testing Services recommends using suchemulators during the initial phases of development andtesting, to validate the function of various units of sourcecode as they are completed.
Emulators: Use With Care
or .sis (platform specific) file, installing the applicationon the emulated device and testing the application.Web servers and Web pages meant to be accessed frommobile Web browsers can be tested using Firefoxbrowser plug-ins, by loading information about thehandset such as user agent details, headers andhandset/vendor ID into an .xml file. Using XHTML andWML add-ons to the browser, testers can verify if the Webpages display correctly on the device browsers. Many organizations building mobile application arehighly attuned to the latest changes in mobiletechnology, how those changes determine whichfeatures are important to users and to the need to getapplications to market quickly. However, they are oftennot as aware of the need for proper development andtest processes. This means that undetectedperformance, stability or security issues can cripple theirapplications, no matter how appealing they may be toconsumers.In such organizations, the test group reports to thedevelopment group, robbing it of the independence itneeds to insist on the proper amount and type of testing.Cognizant recommends such organizations create anindependent test unit, or use a third-party testingorganization that can deliver an unbiased assessment ofthe application.Because of the emphasis on time-to-market, manymobile applications are developed using RAD (rapidapplication development) in which multiple versions ofthe software are quickly developed, assessed by endusers, and tweaked accordingly. This rapid-fire cycle ofcoding and re-coding makes it almost impossible toassess how each change affects the application'sperformance, stability or security.Early testing of these small subsets of code makes itpossible to find and correct problems early in theFor this reason, Cognizant recommends using, whereverdevelopment cycle and thus reduce the time and cost ofpossible, a “V” or modified V-form methodology in whichrewriting code. Cognizant recommends testing on thetesting is done as each unit of code is developed, therebymore accurate, but more expensive, physical devices forresolving problems at the unit level before those unitsuser acceptance testing of the complete application, andare combined into larger application modules andfor testing features that interact directly with theevaluated by users.hardware and the carrier's network, since these arewhere otherwise hidden problems are most likely to beCognizant Testing Services recommends use of the V-found.model for all core application components such as thephonebook, messaging and Bluetooth stacks and theEmulators for a wide range of popular handsets aremedia player, and using a V-model for mobile businessavailable on the Web, ranging from low-cost freeware toapplications to reflect the more iterative developmentmore expensive commercial applications that offermodel used for them. RAD should be used only forhigher levels of formal support. Emulators can be used toprototypes, since adequate testing is virtually impossibletest Web applications using the software developmentusing this model.kit for a browser, or by packaging the application as a .jar
Test Processes
white paper3
Studies show that finding andfixing defects after anapplication goes intoproduction can cost as muchas 200 times more than itwould have during testing.

You're Reading a Free Preview

/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->