Thursday, January 16, 2014

Max supported OS for apple devices

1) iPhone
- iPhone 1 - 3.1.3
- iPhone 3G - 4.2.1
- iPhone 3GS - 6.1.3
- iPhone 4 - 7.0
- iPhone 4s - 7.0
- iPhone 5 - 7.0

2) iPod
- iPod 1G - 3.1.3
- iPod 2G - 4.2.1
- iPod 3G - 5.1.1
- iPod 4G - 6.1.3
- iPod 5G - 7.0

3) iPad
- iPad 1 - 5.1.1
- iPad 2 - 7.0
- iPad 3 - 7.0
- iPad 4 - 7.0
- iPad mini - 7.0

How do you convince a developer to fix a defect!

I know this would be a question every quality tester would have in their mind. I had the same question in my mind when i started my career. I believe these points below would be helpful to you (may be).

1) Firstly you need to follow the process. If your company has a defect tracking tool, make maximum use of it. Log every single defect(even very low defect) in tracker so as to maintain a report of the defects found. Do not have any verbal communication because most of the developers will just forget about the defect or pretend to forget.
2) Make sure you have written the steps properly. When u log a defect in tracker, do read the steps twice and try analysing if the other person could understand the steps. Most developer will drop fixing few defects if they cannot analyse the steps.
3) When it comes to severity make sure it is properly marked. Some developers don't even look into low defects. If you feel that the defect needs to be fixed by next build mark it as medium.
4) This point may not be applicable to some but I feel this is the most important thing, being more friendly with your developer could lead him/her not fixing the defects. Working with developer who is a stranger is more useful than a developer who is a friend. Developer who is a friend would normally force you to forget about certain defects. So I feel bringing personal relationship to work is a strict NO NO. Have a strict work life. If you have a good friend as a developer in your project, make it clear to him that work is work, work cannot get compromised.
5) Have a chat with the developer and inform him the severity of the defect and why it needs to be fixed. But when you approach a developer make sure he/she is not in a bad mood. Always be modest by asking "Are you busy? Can I have a 10 mins chat with you about the defects"
We normally tend to forget that even developers would be busy (or they pretend to be busy) and we just start blabbering about the defect. Just imagine if someone comes up to you and informs you about how bad you look or how ugly you are, Bad isn't it :) So when you start with conversation make sure you tell these words "Can you check if this feature is working properly, I believe this sequence will crash the application. Please have a look, I will regenerate in front of you" Looks simple but very hard to execute. We normally tend to blame or put some allegation on developer as soon as we approach them
6) If your defect status is still New, make a note of those defects and call for a meeting with higher official or supervisor. Meetings and discussion solves most of the problem as developers are forced to listen to their supervisors. But when you conduct meeting make sure you have a super valid points noted down to put forward in a meeting. Normally when I feel I am losing my hold on meeting I convey this dialog " I know most of the users wouldn't perform this sequence, but 1 in 100's will surely do. You see I believe that every user is important.( Last sentence is purely fictional :P)
7) Some defects would be very hard to regenerate, Our normal tendency is to run to a developer and inform about the random crash or behavior. But as usual some developers will not give a damn to this as there is no sequence for the defect.
So i would recommend you to not rush to developer immediately. Firstly if its crashing quickly save the crash log, or if you find a glitch take a screenshot as a proof. Now try regenerating it by remembering the last 10 steps. For this you need to be 100% active while testing. If you are not able to find the sequence nth time don't lose hope. Note it down in a sticky and continue testing other features rather than sticking to 1 single defect.  Finally if you cannot find it just go to developer and follow kindness behavior mentioned in point no 5 and provide maximum information about the defect and log it in tracker.
8) If its still not fixed, just send a mail to developer with cc to producers, supervisors and team member just to be in a safer side, i.e if the same defect is reported by the user, you can just forward the mail back again :P Witty isn't it :)

"A best tester is not the one who logs maximum number of defect. The best tester is one who get most of the bugs fixed"

"Every bug is reproducible, if it has occurred once"

- Bharath Shenoy

P.S

Following are the dialogs which you can use on a developer to fix defects ( make it filmy :P )
- I just conveyed this defect to the manager and he has asked you to fix this defect. (A big Lie)
- I read in one of the technical blog that an application got bad review just for not integrating this feature.
- I was telling everyone that you are a good developer and you fix all the defects.
- Don't you want your application to be a 100 % bug free. We can boast about this with other teams.
- I was telling my fellow tester that you cannot fix this defect.
- My previous developer used to fix all the defects which I reported, good na :) :)

Adios

Thursday, January 9, 2014

Basic use of DDMS tool

Dalvik Debug Monitor Server abbreviates to DDMS. DDMS is an android tool which works with both emulator and devices. I was introduced to DDMS tool by my senior colleague 2 years back as i was really surprised that until and unless you root the device you cannot take screenshots. Sounds real difficult for iOS tester. But being an apple fan boy i find testing android applications are more fun and challenging than any other platforms as it teaches you about a new tool every quarter month.

Why do you use DDMS tool ?
- An android tester would use this tool to take screenshot from device and to check log.

How do you take screenshot ?
- Connect your device to system. Select debug mode in phone USB settings. Now click on the device in the device selection panel and then hit CMD+S from keyboard to take screenshot.

How do you check with log?
- If your application crashes then in log section you can see a red color lines which normally signifies that it is a crash or a force quit message.

What else can you do with DDMS tool?
- You can check with real memory and memory heaps using the tool. But in order to check with memory heap, you need to ask your developer to provide a debug build. I will come up with a post on how to check with memory in future.

Thursday, January 2, 2014

What should you do when a build is given for testing?

Note: Listed below are the procedure which I follow, I am not implying that it is the best practice

- Maintain a folder to copy the build. Always make folders like Project name_platform
ex: Codename_iOS or Codename_Android

- Check with build notes.

- Check if any new features are implemented.

- Run smoke test plan

- Start testing with new features which are implemented.

- Check with defects fixed in defect tracking tool. Regress those defects (This step is invalid for the first build given for testing)

- Run test suite plan if it is a milestone quality build.

- Start with system testing

- Note down all the defects in a text document. Save the document inside codename folder

- Create a folder named Screenshot inside the codename folder. Copy all the screenshots in the folder.

- Change the name of screenshot taken and save it in jpg format if required.

- Start logging the defects in tracker.

- After the defect is logged mark the defect written in text document to bold just to make sure all the defects are logged.

- Send mail to developer regarding the important defects which are required to be fixed by next build
- Leave for the day :)

Thursday, November 28, 2013

Why? Why? Why?

We are not enemies, we are team. This is what is said last week to a developer. I certainly find it ridiculous about the whole development team who think testers are like MOGAMBO of project team. We dont publicly shout KUSH HUVA when we find a defect. Do we ? :P
Why are we treated as enemies? The question may arise to every single quality control engineer or a tester. Even i had the same questions, i had written a paragraph below few years back which shows about how furious i was about process. Continue reading

I always try to keep calm while working, no matter what the situation is! but i eat red chilies too which makes me lose temper. I hate it when a developers tone reaches a level which makes me go red and feel like giving a punch on a face and calm my blood.
Developers think we put pressure on them by logging defects in tracker. Aren't we just doing our job of finding flaws. Developers also crib about the work they have when compared to us, but don't they understand the amount of time we spend on testing the same application. I truly believe a testing team has more responsibility than a development team. I hate it when a tester is not even taken to account when a project is started. Why are we treated like untouchables? Why are we not credited when the project is a huge success? Why are we blamed only when customers find bugs and not appreciated when a near to 100 percent bug free product is released to market? why? why? why? Is not testing equally important as development?

I feel like laughing when i read this :P Man! i was a real noob few years back. I still feel i dont keep calm! but now i dont give a damn to rude development team. So do keep calm you testers :)
Try follow the following principles

1) Dont give a damn on what a developer say! Just say Ok and continue what you are doing.
2) No verbal talks, talking should happen in Tracker tool.
3) If you have any queries, talk through mails. A 'BIG' No No to verbal talks.
4) When you find yourself loosing temper, just tell yourself how bigger person you are when you compare to irresponsible developer who is blaming you.