<?xml version='1.0' encoding='UTF-8'?><rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/" xmlns:blogger="http://schemas.google.com/blogger/2008" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" version="2.0"><channel><atom:id>tag:blogger.com,1999:blog-6071440636379503358</atom:id><lastBuildDate>Tue, 21 Oct 2014 06:01:23 +0000</lastBuildDate><category>testing</category><category>Q n&#39; A</category><category>hello</category><category>methods</category><category>mobile app</category><category>mobile app testing</category><category>platform</category><category>testing world</category><title>Sub Zero Tester</title><description>...... From a  Learner of Testing</description><link>http://subzerotester.blogspot.com/</link><managingEditor>noreply@blogger.com (Himel Nag Rana)</managingEditor><generator>Blogger</generator><openSearch:totalResults>4</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><item><guid isPermaLink="false">tag:blogger.com,1999:blog-6071440636379503358.post-2168513112386633547</guid><pubDate>Tue, 19 Apr 2011 11:20:00 +0000</pubDate><atom:updated>2011-04-19T17:21:15.924+06:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">mobile app testing</category><category domain="http://www.blogger.com/atom/ns#">Q n&#39; A</category><category domain="http://www.blogger.com/atom/ns#">testing</category><title>The Curious Case of Mobile App Testing ;-)</title><description>&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;line-height: 20px;&quot;&gt;&lt;i&gt;&lt;b&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: x-large;&quot;&gt;B&lt;/span&gt;&lt;/b&gt;&lt;/i&gt;&lt;/span&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;line-height: 20px;&quot;&gt;efore starting with the main topic - we may have a quick look to a chart researched at &lt;a href=&quot;http://www.keane.com/&quot;&gt;Keane&lt;/a&gt;&amp;nbsp;and published as a white paper with the title &quot;&lt;a href=&quot;http://www.keane.com/resources%2fpdf%2fWhitePapers%2fWP_TestingMobileBusinessApps.pdf&quot;&gt;Testing Mobile Business Applications&lt;/a&gt;&lt;/span&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;line-height: 20px;&quot;&gt;&quot;. It is some sort of continuation of &lt;a href=&quot;http://subzerotester.blogspot.com/2011/04/my-introduction-to-mobile-app-testing.html&quot;&gt;my last post&lt;/a&gt; (&lt;i&gt;specially the last paragraph&lt;/i&gt;). This chart provides us with a recommendation about &amp;nbsp;testing strategy while testing mobile business applications.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;line-height: 20px;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;line-height: 20px;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;u style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;416&quot; src=&quot;http://3.bp.blogspot.com/-esVdLbBQQmk/TavvmgnH8pI/AAAAAAAAC5U/ecaMOs1EVCM/s640/keane_white_paper.png&quot; width=&quot;640&quot; /&gt;&lt;/u&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif; margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;line-height: 20px;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;line-height: 20px;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;Now moving to the original post i.e. the curious questions about mobile app testing we may have a look to the following &lt;b&gt;Q and A&lt;/b&gt;. ;-)&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;line-height: 20px;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;&lt;b&gt;&lt;i&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #e06666;&quot;&gt;1.) What is the difference between Mobile Testing and Mobile Application Testing?&lt;br /&gt;::::::&lt;/span&gt;&lt;/i&gt;&lt;/b&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;line-height: 20px;&quot;&gt;&amp;nbsp;Mobile testing refers to a complete testing of mobile phones which includes - Protocol testing, device testing and application testing. If we try to elaborate a bit more - testing the support of 4 bands of mobile phone and calling in each of the band, battery, connectivity (&lt;i&gt;such as bluetooth, wlan, etc.&lt;/i&gt;), &amp;nbsp;network frequency, cell selections, handover, encryption, software compatibility, etc. along with multimedia and applications testing are referred to Mobile Testing.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif; line-height: 20px;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;line-height: 20px;&quot;&gt;Whereas, &lt;/span&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;line-height: 20px;&quot;&gt;mobile application testing is the testing of softwares, games and others utilities built on the mobile platform by third parties or the same vendor for targeted device. Here the main concern is about the functionality of the application under different circumstances and environments.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;line-height: 20px;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;&lt;b&gt;&lt;i&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #e06666;&quot;&gt;2.) What is your approach while Testing Mobile Applications?&lt;br /&gt;::::::&lt;/span&gt;&lt;/i&gt;&lt;/b&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;line-height: 20px;&quot;&gt;&amp;nbsp;The most important thing while testing a mobile application is the approach towards the testing. To my understanding and experience the things we have to consider and prioritize while testing a mobile application can be listed as below:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif; line-height: 20px;&quot;&gt;-- &lt;/span&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif; line-height: 20px;&quot;&gt;&lt;b&gt;&lt;i&gt;Application development platform&lt;/i&gt;&lt;/b&gt;&lt;/span&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif; line-height: 20px;&quot;&gt; &lt;/span&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif; line-height: 20px;&quot;&gt;&lt;i&gt;(&lt;/i&gt;such as J2ME, Windows Mobile, Blackberry, Simbian, iOS, Android, etc&lt;/span&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif; line-height: 20px;&quot;&gt;.). The reason behind this is the fact that nature and behavior of the applications are different and classed according to the platform they are built on.&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;line-height: 20px;&quot;&gt;-- &lt;b&gt;&lt;i&gt;Device screen size, memory allocation, navigation&lt;/i&gt;&lt;/b&gt; (cause application behavior depends largely on these things when portability of application on multiple devices is a factor.)&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;line-height: 20px;&quot;&gt;-- &lt;b style=&quot;font-style: italic;&quot;&gt;Device network or carrier&lt;/b&gt;&lt;i&gt; (&lt;/i&gt;for some application which deal with data transfer - calls, data calls, frequency of network are crucial things&lt;i&gt;).&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;line-height: 20px;&quot;&gt;-- &lt;b&gt;&lt;i&gt;Application Domain&lt;/i&gt;&lt;/b&gt; (such as gaming, location based system, imaging, video, etc.).&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;line-height: 20px;&quot;&gt;-- &lt;b&gt;&lt;i&gt;Test strategies&lt;/i&gt;&lt;/b&gt; (UI tetsing, functional&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif; line-height: 20px;&quot;&gt;&amp;nbsp;tetsing&lt;/span&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif; line-height: 20px;&quot;&gt;, stress&lt;/span&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif; line-height: 20px;&quot;&gt;&amp;nbsp;tetsing&lt;/span&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif; line-height: 20px;&quot;&gt;, load&lt;/span&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif; line-height: 20px;&quot;&gt;&amp;nbsp;tetsing&lt;/span&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif; line-height: 20px;&quot;&gt;, network&lt;/span&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif; line-height: 20px;&quot;&gt;&amp;nbsp;tetsing&lt;/span&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif; line-height: 20px;&quot;&gt;, memory&lt;/span&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif; line-height: 20px;&quot;&gt;&amp;nbsp;tetsing&lt;/span&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif; line-height: 20px;&quot;&gt;, battery/charge&lt;/span&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif; line-height: 20px;&quot;&gt;&amp;nbsp;tetsing&lt;/span&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif; line-height: 20px;&quot;&gt;, simultaneous run of application or calls or data calls while application is running)&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;line-height: 20px;&quot;&gt;-- &lt;b&gt;&lt;i&gt;Maintaining common standard checklist&lt;/i&gt;&lt;/b&gt; (UI and UX stability, readability of texts, status of call/data call while app is running, app&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif; line-height: 20px;&quot;&gt;behavior while&amp;nbsp;&lt;/span&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif; line-height: 20px;&quot;&gt;flip/slider opens or closes, sms or data port blocking if app is using those ports, etc.).&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;&lt;b&gt;&lt;i&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #e06666;&quot;&gt;3.) What are the things specific to Mobile Application would you emphasis on while writing test plan for Mobile Applications?&lt;br /&gt;::::::&lt;/span&gt;&lt;/i&gt;&lt;/b&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;line-height: 20px;&quot;&gt;&amp;nbsp;The things that we must give emphasis can be listed as below:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif; line-height: 20px;&quot;&gt;&lt;b&gt;--&lt;/b&gt;&lt;/span&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif; line-height: 20px;&quot;&gt; &lt;/span&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif; line-height: 20px;&quot;&gt;&lt;b&gt;&lt;i&gt;Testing Scope&lt;/i&gt;&lt;/b&gt;&lt;/span&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif; line-height: 20px;&quot;&gt; [&lt;/span&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif; line-height: 20px;&quot;&gt;Scope is very much important because there is a large amount of test items available for mobile app testing. So defining scope like - testing with/without carriers, calls, data calls, wap, variant of operating systems, etc. is explicitly important while writing a test plan.&lt;/span&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif; line-height: 20px;&quot;&gt;]&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;line-height: 20px;&quot;&gt;&lt;b&gt;--&lt;/b&gt; &lt;b&gt;&lt;i&gt;Testing Strategy&lt;/i&gt;&lt;/b&gt; [The strategy and methodologies for unit testing, system testing, regression testing and pass/fail&amp;nbsp;check-listing&amp;nbsp;- few things like application characteristics, stability, connectivity, launching, UI and application accessing internal resources or user data.]&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif; line-height: 20px;&quot;&gt;&lt;b&gt;-- &lt;i&gt;Test Environment Setup&lt;/i&gt;&lt;/b&gt; [Environment is another bug thing for test plan for mobile app. Which parts of the app will be tested on emulator and which parts will be on real device, what will be the device versions, how many variant of the devices will be present while testing, what will be the possible carriers, what will be the test locations -- this questions is needed to be answered in the test plan explicitly.]&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;line-height: 20px;&quot;&gt;&lt;b&gt;-- &lt;i&gt;Control Procedure&lt;/i&gt;&lt;/b&gt; [How to handle the reports, documentations, change requests while testing is undergone -- should be confirmed from conversation/discussion with the PM and should be listed in the test plan.]&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif; line-height: 20px;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #e06666;&quot;&gt;&lt;b&gt;&lt;i&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;4.) What&#39;s&amp;nbsp;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: BenSen; font-style: normal; font-weight: normal;&quot;&gt;&lt;b&gt;&lt;i&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;your view on t&lt;/span&gt;&lt;/i&gt;&lt;/b&gt;&lt;/span&gt;esting of Mobile Application on Emulators?&lt;br /&gt;::::::&lt;/span&gt;&lt;/i&gt;&lt;/b&gt;&amp;nbsp;&lt;/span&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;Testing mobile applications in emulators has some limitations of its own. Testing on emulator has some serious issues for which they differs a lot from testing on real devices. We may list some of the important difficulties as follows:&lt;/span&gt;&lt;br /&gt;&lt;div&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;-- Making voice/data calls while running applications are different than the actual scenario in an emulator.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;-- From an emulator it cannot be determined if the phone is connected to carrier or not.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;-- While testing in an emulator there is no support for testing the real charging (battery) state while running the application.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;-- Considering the memory usage, in emulator it is hard to calculate or test the memory usage or CPU performance.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;-- Considering graphics elements, emulator performance can differ from real device depending on the platform where the emulator is installed.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;-- Considering the input/output scenario, the tests that depends on accessing user data or internal devices resources like memory cards or something like that -- cannot be done in emulators.&lt;/span&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #e06666;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #e06666;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #e06666;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;&lt;i&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #e06666; font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;5.) What is the difference between Mobile Operating Systems and Mobile Platforms?&lt;br /&gt;::::::&lt;/span&gt;&lt;/i&gt;&lt;/b&gt;&amp;nbsp;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;This was one of the initial questions came in my mind when I came to know about mobile platforms years back. While working with development of mobile application and while testing mobile apps I have built some idea on my own about it. Here I am listing the ideas mixed with some definitive theoretical answers:&lt;br /&gt;--   &lt;b&gt;Mobile OS&lt;/b&gt; is a system software which resides upon device hardware and it runs the device hardwares such as networking devices, graphics etc. In short it operates the mobile phone system.&lt;br /&gt;-- Where as &lt;b&gt;Mobile Platforms&lt;/b&gt; are another applications that runs on top of the OS layer yet exposes the hardware through a more focused set of interfaces and functionality. In short platforms are built on top of the mobile OS and uses the device connectivity options provided by the OS to interact with the device to execute/run applications.&lt;br /&gt;-- To &lt;b&gt;&lt;i&gt;sum up&lt;/i&gt;&lt;/b&gt; the issue, we can just say - in terms of software, the Operating System runs the hardware, the platform runs on top of the OS to host applications. &lt;/span&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif; line-height: 15px;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #e06666; font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;&lt;i&gt;&lt;b&gt;6.) What actually are the application certification programs like True Brew Testing (TBT), Symbian Signed Test Criteria, Java Verified Program?&lt;br /&gt;::::::&lt;/b&gt;&lt;/i&gt;&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;Application certification programs are test criteria which must be passed by an application before it is made available to operators for distribution. So from the definitions it is clear that the criteria are defined by the platform authorities as a standard to make the application connectivity and accessibility almost uniform to end-users. Every platform has their defined sets of criteria.&lt;br /&gt;-- &lt;b&gt;True Brew Testing (TBT)&lt;/b&gt; is the &lt;i&gt;Brew®&lt;/i&gt; platform compatibility criteria. Brew® defines some &lt;a href=&quot;https://developer.brewmp.com/go-to-market/application-testing&quot;&gt;item specification document&lt;/a&gt; and some charging for submission and passing the application to make it ready for distribution from the operators.&lt;br /&gt;-- &lt;b&gt;Symbian Signed Test Criteria&lt;/b&gt; are defined by the &lt;a href=&quot;http://developer.symbian.org/&quot;&gt;Symbian Developers Network&lt;/a&gt; and used for testing application built for Symbian OS and Symbian platform. The guideline defines a great deal of information and criteria along with cases where exemptions are given. There are a great deal of detailing about the &lt;a href=&quot;http://wiki.forum.nokia.com/index.php/Symbian_Signed_Test_Criteria_V4_Wiki_version&quot;&gt;criteria&lt;/a&gt; and even test steps. &lt;br /&gt;-- Similarly &lt;b&gt;Java Verified&lt;/b&gt; is the industry-recognized Java testing and signing program for Java ME apps which has to go through a testing, signing and verification process through the Java Verified Submissions portal. If the apps meets the testing criteria, they&#39;ll gain the Java Verified seal of approval. And this applies to all apps, irrespective of their simplicity or complexity. So the signing implies a minimum quality of the application.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #e06666; font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;&lt;i&gt;&lt;b&gt;7.) What so special in testing a Location Based Mobile Application?&lt;br /&gt;::::::&lt;/b&gt;&lt;/i&gt;&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;The little specialty of location based mobile applications are very much clear from the name itself. In general sense it requires testing the application on various location to make the application produce expected outputs for the location difference. Location-based applications often require field testing before launching the product. Setting up &quot;&lt;b&gt;the field&lt;/b&gt;&quot; almost similar to real life usage scenario may produce various testing scenarios which can often be a logistics issue. Moreover, real life field environment is not very much suitable for controlled testing and there can be so much uncontrolled, unexpected and unwanted scenarios which can easily affect the test results. Mainly these are the complexities of testing Location Based applications. &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;I hope I will write more about mobile application testing in upcoming days. Those should be platform specific write ups. Lets see.&lt;/span&gt;&lt;/div&gt;</description><link>http://subzerotester.blogspot.com/2011/04/curious-case-of-mobile-app-testing.html</link><author>noreply@blogger.com (Himel Nag Rana)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/-esVdLbBQQmk/TavvmgnH8pI/AAAAAAAAC5U/ecaMOs1EVCM/s72-c/keane_white_paper.png" height="72" width="72"/><thr:total>13</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-6071440636379503358.post-861664499915528642</guid><pubDate>Tue, 12 Apr 2011 08:38:00 +0000</pubDate><atom:updated>2011-04-12T14:38:59.583+06:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">methods</category><category domain="http://www.blogger.com/atom/ns#">mobile app</category><category domain="http://www.blogger.com/atom/ns#">platform</category><category domain="http://www.blogger.com/atom/ns#">testing</category><title>My Introduction to Mobile App Testing</title><description>&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;&lt;i&gt;&lt;b&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: x-large;&quot;&gt;M&lt;/span&gt;&lt;/b&gt;&lt;/i&gt;obile application platforms like &lt;i&gt;Android&lt;/i&gt;, &lt;i&gt;iOS&lt;/i&gt;, &lt;i&gt;Blackberry&lt;/i&gt;&lt;iframe align=&quot;right&quot; frameborder=&quot;0&quot; marginheight=&quot;0&quot; marginwidth=&quot;0&quot; scrolling=&quot;no&quot; src=&quot;http://rcm.amazon.com/e/cm?t=invertingt-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=bpl&amp;amp;asins=B003N17IJ4&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;m=amazon&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr&quot; style=&quot;align: right; height: 245px; padding-right: 10px; padding-top: 5px; width: 131px;&quot;&gt;&lt;/iframe&gt; etc. are now trendy things. The market for mobile application is growing everyday and the demand for this applications are rising as the technology is advancing.&amp;nbsp;Most of the general software testing principles apply equally well for mobile application -- in a general overview -- but in my small experience I have found some cases and curious questions where it differs! There is a huge variety in mobile application technology, platform, devices and they have their own complexity while developing. So while testing - this &quot;&lt;b&gt;extra&lt;/b&gt;&#39; complexities needs to be handled. We can spot out some specific areas of mobile application testing where extra care for testing is required.&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;&lt;b&gt;&lt;i&gt;1) Technology specific testing:&lt;/i&gt;&lt;/b&gt; All of the technologies has their own properties as well as own pros-cons. While testing mobile apps testers needs to be more careful and conscious about the technology pros-cons.&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;&lt;b&gt;&lt;i&gt;2) Platform specific testing:&lt;/i&gt;&lt;/b&gt; Each and every platform for mobile apps has its own properties. And the nature and behavior of the platforms and the apps at the top of it conveys them. Testers need to be concerned about these issues while testing.&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;&lt;b&gt;&lt;i&gt;3.) Device specific testing:&lt;/i&gt;&lt;/b&gt; My little experience on developing &lt;i&gt;J2ME&lt;/i&gt; applications tells me that even if an app runs on emulator quite smoothly - unlike desktop apps, it may not suit all the &lt;i&gt;J2ME&lt;/i&gt; supported devices -- even if the version and Api versions are all same. That enables quite a big consciousness while testing a mobile app.&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;Now if we like to create a list of things to be considered specially while testing mobile applications -- we can create a list which also covers up the basic things we do while testing a mobile app.&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;&lt;i&gt;First&lt;/i&gt;, &lt;b&gt;Functional Testing&lt;/b&gt;. As per definition - this testing will cover up testing the basic functionality of the app. In fact, the procedure starts right from the application store (like &lt;i&gt;iTunes&lt;/i&gt; for iOS, &lt;i&gt;android store&lt;/i&gt;, etc.) because the quality of the app will depend on if it comes to users with ease or downloads seamlessly. Now techniques for functional testing may vary in two ways: first is testing the app using a simulator (most of the case it is called emulators) and the second is testing the app where it will be used i.e. on device. In ideal case, both of the approach should be followed. Because, if some of the feature of the app like clicking on a button or link works on emulator but not on the device -- that should be a device specific fault. Additionally, the running environment (sdk version, api version, etc.) for the app in emulator and the device should be same or at least similar. Like in regular SQA process, this testing should be started at the very&amp;nbsp;beginning of development cause changing in app design or architecture costs a lot.&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;&lt;i&gt;Secondly&lt;/i&gt;, &lt;b&gt;Usability Testing&lt;/b&gt;. To the best of my understanding it is the single most critical testing for &lt;iframe align=&quot;right&quot; frameborder=&quot;0&quot; marginheight=&quot;0&quot; marginwidth=&quot;0&quot; scrolling=&quot;no&quot; src=&quot;http://rcm.amazon.com/e/cm?t=invertingt-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=bpl&amp;amp;asins=B002KQLUVU&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;m=amazon&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr&quot; style=&quot;align: right; height: 245px; padding-right: 10px; padding-top: 5px; width: 131px;&quot;&gt;&lt;/iframe&gt;mobile applications. Mobile devices are of a HUGE variety. Screen size, scrolling buttons, joy-stick, trackballs, touch screen inputs, folding, sliding and many more. Now for the same app, user experience and easiness differs hugely based on these things. Like in a form with 7/8 inputs can cost 4 clicks to a user of&amp;nbsp;&lt;i&gt;Nokia&amp;nbsp;2700&lt;/i&gt; phone while it is just a smooth slide to a&amp;nbsp;&lt;i&gt;Nokia&amp;nbsp;5800&lt;/i&gt; owner (Leaving alone the iPhones and androids :S). And first impression of user while using a mobile app creates the future market scope for the app. And who doesn&#39;t know that only word-of-mouth of bad experience can be&amp;nbsp;broad-casted&amp;nbsp;to the market and hence can destroy the business of the app. That is why usability testing of an app is the critical most step in testing.&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;&lt;i&gt;Thirdly&lt;/i&gt;, &lt;b&gt;Performance Testing&lt;/b&gt;. Here comes another point in related to app in addition with device specific test and that is performance of the network carrier. If the network carrier is stable enough and the device is a smooth performer on the carrier - risks of crashing the application minimizes to a great deal - specially for the apps which requires data or call transfers. Another issue is region or location. Performance of carriers may vary location to locations. If the performance of the app is poor to end-users they are meant to be diverted to other similar apps. In most of the cases, performance of the app is likely to be measured with the help of tools cause it is very hard to create a real life &quot;load scenario&#39; in front of the testers.&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;&lt;i&gt;Finally&lt;/i&gt;, &lt;b&gt;Selecting Testing Methodology&lt;/b&gt;. In our organization, mobile apps are being &lt;b&gt;&lt;i&gt;tested in-house &lt;/i&gt;&lt;/b&gt;with the development team in front of the PM with client&#39;s direct feedback. This method has both pros and cons - it is a controlled process i.e. it is not very much tough to create the diverse test environment with different types of devices with different carriers and under use-case scenarios of the dev team. But the fact is it is too much expensive (in accordance to time-money and resources). Among the other methods can be &lt;b&gt;&lt;i&gt;testing with simulators/emulators&lt;/i&gt;&lt;/b&gt; -- but as I mentioned earlier they doesn&#39;t give you the 100% real UX scenario. There can be &lt;b&gt;&lt;i&gt;community testing or beta testing&lt;/i&gt;&lt;/b&gt;, that is releasing the app within a limited community and they use it with limited features (or may be full) and report problems found. This is more effective than others but is time consuming and not all the areas can be covered (naturally) cause the users in a community is of more or less similar type. My observation here is -- the methodology should be chosen with respect to the &lt;i&gt;nature&lt;/i&gt;, &lt;i&gt;volume&lt;/i&gt;, &lt;i&gt;budget&lt;/i&gt; and of course its &lt;i&gt;device-carrier requirements&lt;/i&gt;. &lt;i&gt;A hybrid of all the methodologies can be a good solution for medium level app&lt;/i&gt;.&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;Next I am willing to write something about interesting and curious questions I faced (and my team members faced) about mobile app testing. So long bye for now.&lt;/span&gt;</description><link>http://subzerotester.blogspot.com/2011/04/my-introduction-to-mobile-app-testing.html</link><author>noreply@blogger.com (Himel Nag Rana)</author><thr:total>2</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-6071440636379503358.post-7380843748343448665</guid><pubDate>Fri, 24 Dec 2010 11:33:00 +0000</pubDate><atom:updated>2010-12-24T17:42:01.120+06:00</atom:updated><title>Testing Lesson 1 : Information, Communication and Challenges</title><description>&lt;i&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: x-large;&quot;&gt;I&lt;/span&gt;&lt;/i&gt;n my previous &lt;a href=&quot;http://subzerotester.blogspot.com/2010/11/hello-to-testing-world.html&quot;&gt;post&lt;/a&gt;, I expressed that I am a lazy &amp;nbsp;and irregular writer. This second post of the site proves it as it came after almost one month. Though I have studied a lot of things (and naturally forgot most of them :-P), I will note down gradually what seems to be important to me and what I have to remember. In this chronicle, today I will note something like -- &lt;i&gt;Information system in testing&lt;/i&gt;, &lt;i&gt;Bug significance and communication&lt;/i&gt; and &lt;i&gt;key challenges one may face&lt;/i&gt;. The last point will be a bit theoretical as my testing career is only one month long, and for the rest two points theory along with some personal observation will be there. For learning purpose, I have followed &lt;a href=&quot;http://www.testingeducation.org/BBST&quot;&gt;testingeducation.org&lt;/a&gt;, &lt;a href=&quot;http://www.google.com/&quot;&gt;Google&lt;/a&gt; and &lt;a href=&quot;http://dedicatedtester.blogspot.com/&quot;&gt;Selim vai&lt;/a&gt;&#39;s advice.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #990000; font-family: Verdana, sans-serif;&quot;&gt;Information System:&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; The major purpose of testing is to assure the quality of a product i.e. make sure a product does what it is intended to. Along with this, it is important to keep the status of the product viable to the product developer / owner / beneficiary or other stakeholders as each of the product has a business value. For this reason, information systems related to quality of a product plays the most vital role as the objective of testing.&lt;br /&gt;&lt;br /&gt;Upon the received information from QA persons --&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;The developer fixes the wrong in programming&lt;/li&gt;&lt;li&gt;The system administrator can make the system running for expected condition&lt;/li&gt;&lt;li&gt;The designer can fix the user experience bugs&lt;/li&gt;&lt;li&gt;The product owner can know the status of development, fixes needed, redesigning criteria, etc.&lt;/li&gt;&lt;/ul&gt;The above list signifies the reasons of importance of a good information system. Now we can list the major information acquiring or investigation tasks of a tester which can be as follows:&lt;br /&gt;&lt;div&gt;&lt;ol&gt;&lt;li&gt;Find important bugs (by comparing actual with expected output from a product).&lt;/li&gt;&lt;li&gt;Assess the quality-severity-importance of fixing-frequency-etc. of the found bug.&lt;/li&gt;&lt;li&gt;Stop release of premature products and suggest managers to take release decision.&lt;/li&gt;&lt;li&gt;Assess probable cost and control of product related support.&lt;/li&gt;&lt;li&gt;Find such scenarios / cases where using the product may not cause problems.&lt;/li&gt;&lt;li&gt;Mark the product as safe or standard to some predefined scale.&lt;/li&gt;&lt;li&gt;Pass the information gathered in process 1 to 6 to due authority.&lt;/li&gt;&lt;/ol&gt;The no 7 task leads us to next topic which is &quot;communication&#39;.&lt;br /&gt;&lt;ol&gt;&lt;/ol&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #660000; font-family: Verdana, sans-serif;&quot;&gt;Communication:&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; Communication in QA means to act as a information system and pass &quot;relevant&#39; information to stakeholders and make the faults (that are found during investigations) fixed. A successful communication has multiple dimensions of aspects like --&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;make the developer successfully recreate the error,&amp;nbsp;&lt;/li&gt;&lt;li&gt;make the project manager successfully reason the importance of an error,&lt;/li&gt;&lt;li&gt;make the product owner successfully understand the current development status,&lt;/li&gt;&lt;li&gt;reduce the complexity of development decision making process, etc.&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;If we consider the above points as &quot;ends&#39; the &quot;means&#39; towards communication lies in &lt;i&gt;Bug reports&lt;/i&gt;. The content of bug reports may vary from one stakeholder to another depending on the information one wants, but the basic principle for a clear bug reports may be the same. If we attempt to write them they can be as follows:&lt;br /&gt;&lt;ul&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;--The bugs in the report has to be verifiable that is it has to be a real problem and the steps to reproduce the bugs should be mentioned clearly.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;-- When a developer / Project manager looks at a report, he tends to make decision about the bugs - &lt;i&gt;to fix it&lt;/i&gt; or &lt;i&gt;not to fix it&lt;/i&gt; or &lt;i&gt;fix it later&lt;/i&gt; or &lt;i&gt;it&#39;s not a bug&lt;/i&gt;. A good bug report must clarify about the severity and cost of the bug fixing (and of course opportunity cost) so that they can make the decision.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;--&amp;nbsp;A good bug report contains reference between the problem found and the stakeholders&#39; concern about that issue.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;--&amp;nbsp;If a fault or problem found is because of the technology but not the work, a bug report has to contain the statement with proper reference.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;--&amp;nbsp;Last but not the least, the writing style and format of the report has to be motivating (so that stakeholders take that as interesting) not attacking.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Interestingly, the points of motivation stated in &lt;a href=&quot;http://www.testingeducation.org/BBST&quot;&gt;BBST&lt;/a&gt;&amp;nbsp;looks simple yet powerful. I can&#39;t really help myself from sharing them -&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;-- it looks really bad&lt;/div&gt;&lt;div&gt;-- it will affect lots of people&lt;/div&gt;&lt;div&gt;-- it can be easily recreated&lt;/div&gt;&lt;div&gt;-- product owner can sue you as it breaks the contract&lt;/div&gt;&lt;div&gt;-- it will hamper the image of the company&lt;/div&gt;&lt;div&gt;-- top management wants it to be fixed&lt;/div&gt;&lt;div&gt;-- it&#39;s interesting &lt;b&gt;;-)&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Motivating people to do something is always a challenge. In the next topic I will try to write the key challenges of testing as it is described in&amp;nbsp;&lt;a href=&quot;http://www.testingeducation.org/BBST&quot;&gt;BBST&lt;/a&gt;.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #660000; font-family: Verdana, sans-serif;&quot;&gt;Challenges:&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;(1) Complete testing&lt;/b&gt;&lt;/div&gt;&lt;i&gt;-- No testing process can be marked as a &quot;Complete Testing&#39;.&lt;/i&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;(2) Complete coverage&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;-- &quot;Completeness&#39; depends on specific population of test cases.&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;-- Even if complete coverage is done through hundreds of thousands of test cases, it never ensures complete testing.&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;-- It is based on percentage but there are still some points which deals with thoughtful judgement are not covered here.&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;&lt;i&gt;&lt;/i&gt;(3) Negligence&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;-- If the cost for &quot;preventing&#39; a bug is greater than the loss done by the bug then solving the bug is unreasonable.&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;-- If the&amp;nbsp;cost for &quot;preventing&#39; a bug is equal to or lower than the loss done by it then the Company is negligible.&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;(4) Bug Workflow&amp;nbsp;&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;-- Maintain proper&amp;nbsp;products-specific&amp;nbsp;workflow.&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;-- Design the workflow to deal with conflicts of interest between stakeholders.&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;(5) The tester&#39;s time-spent vs the developer&#39;s time-spent&amp;nbsp;trade-off.&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;-- The more time spent investing a bug, the fewer bugs are found and reported.&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;-- If one hour of tester&#39;s work saves 10&amp;nbsp;minutes&amp;nbsp;of developer&#39;s time, is it cost worthy?&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;(6) Experimenter Effects&amp;nbsp;&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;-- To report or not to report and to fix or not to fix&amp;nbsp;dilemma.&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;-- At each level of bug workflow the results of that level needs to be verified and approved.&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;(7) Motivating Stakeholders&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;-- Stated at previous topic.&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;(8) Not Report most bugs but report right bugs and get most of them fixed.&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;-- A good tester is not someone who reports most bugs but gets the most bugs fixed.&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;-- A good tester is not someone who reports most bugs but reports the right bugs.&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;text-align: center;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #660000;&quot;&gt;This write up is a novice approach towards learn testing. So many things may not be covered or many unnecessary things may have been added. I think as time goes by I will be experienced enough to find the wrongs.&lt;/span&gt;&lt;/div&gt;</description><link>http://subzerotester.blogspot.com/2010/12/testing-lesson-1-information.html</link><author>noreply@blogger.com (Himel Nag Rana)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-6071440636379503358.post-4838002912917013522</guid><pubDate>Tue, 09 Nov 2010 08:45:00 +0000</pubDate><atom:updated>2010-11-09T14:52:42.782+06:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">hello</category><category domain="http://www.blogger.com/atom/ns#">testing world</category><title>Hello to the testing world</title><description>&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: xx-large;&quot;&gt;&lt;i&gt;T&lt;/i&gt;&lt;/span&gt;his is my first day at testing department. I have been assigned here a week ago.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Though I have a career of almost 4 years in web application development (in LAMP environment), I said &#39;yes&#39; to the management offer to join the QA team --- as I was always interested to work with issues like --- security, performance, information system management, etc (I have &lt;a href=&quot;http://nagbaba.blogspot.com/search/label/information%20security%20management&quot;&gt;academic works&lt;/a&gt; in these fields too). I thought it to be a chance to change the way of my working as it is something of my interest. That, of course, does not mean that I don&#39;t have any interest in software development anymore. Rather, I think the experience will boost my personal development career (for &lt;a href=&quot;http://www.inversionz.com/&quot;&gt;Inversionz Garage&lt;/a&gt; mainly).&lt;br /&gt;&lt;br /&gt;&lt;div style=&quot;margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;&quot;&gt;&lt;br class=&quot;Apple-interchange-newline&quot; /&gt;&lt;/div&gt;&lt;div style=&quot;margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;&quot;&gt;I have named this blog as &quot;SubZeroTester&#39; because I have almost no previous experience with QA team. I have only textbook knowledge about this very section. So I can better be labeled at &quot;sub zero level&#39;!&amp;nbsp;&lt;/div&gt;&lt;div style=&quot;margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;With many questions and eagerness to learn something, I am starting the new horizon of my career. In this very blog, I will be writing my experience, findings and my way of learning -- how to QA! Mainly documentations, blogs, slides, videos and man-to-man communication will be my mean of learning. I agree I am a very much irregular writer (that can be seen from my &lt;a href=&quot;http://nagbaba.blogspot.com/&quot;&gt;other blogs&lt;/a&gt;) &amp;nbsp;-- &amp;nbsp;this write-ups will be my own guide towards tracking things I have done.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;see you there!!!!!!</description><link>http://subzerotester.blogspot.com/2010/11/hello-to-testing-world.html</link><author>noreply@blogger.com (Himel Nag Rana)</author><thr:total>0</thr:total></item></channel></rss>