Wednesday, December 16, 2009

New Year Resolution!

My new year resolution is:

I will set a new year resolution each year :)







|-- Quality lies in the eyes of customer --|

Friday, December 4, 2009

Rendering Engines

Trident
Trident is Internet Explorer's rendering engine. Its the top rendering engine in the industry.

Gecko
Gecko is used by Firefox browser (i.e. Mozilla Corporation) as a layout engine for websites. Its the second most-popular rendering engine on the world wide web.

WebKit
Its the name of Safari & Chrome's rendering engine and has now been further developed by individuals from the KDE project, Apple Inc., Nokia, Google, Torch Mobile and others.

Presto
Presto is specific for Opera web browser. Presto is available only as a part of Opera browser or related products.


|-- Quality lies in the eyes of customer --|

Wednesday, November 11, 2009

A Usability Issue

You might have noticed while surfing some websites; there pops up a security warning from browser stating:

This page contains both secure and non-secure items; do you want to display the non-secure items?

Though internet savvy know the meaning of this warning well enough but this can turn into an annoying gesture for naïve internet users and I have experienced it with some of our customers.

The reason behind this warning message is improperly usage of contents at the page.
Whenever designers/developers use a graphic from non-secure site (i.e. a site that doesn't have SSL enabled) on a secure web page (i.e. a page that is build up using SSL enabled) this warning pops up so its a good practice to copy all your graphics/contents to a secure site before using them on secure pages.

This warning can be disabled in IE by going through Tools > Internet Options > Security > Custom Level > Miscellaneous > Display mixed content and change it to 'Enable' instead of 'Prompt'.

Tuesday, November 10, 2009

Oh No - Do I look like that old ??

The other day I created my account at a job recruitment website and got these details about myself from them :)
They treated me as a V.O.P. (Very Old Person) instead of V.I.P.

|-- Quality lies in the eyes of customer --|

Friday, November 6, 2009

Special Characters Introduce Special Bugs

Yesterday I was testing an application that demands its users to click on an activation link after creating a user ID and password to become a registered member of the website. All was going pretty well but suddenly it refused to activate a new member and displayed an error message of 'Activation link is invalid'.

I went through the link which consisted of an string at the end of URL that randomly generated for each user. This string sometimes made up of special characters too. After 15 minutes of brainstorming I got to know that (+) and (%) special characters were actually messing the process up. Whenever this randomize string contains these 2 characters, application was reluctant to activate the user successfully because:
  • (+) sign used to concatenate expressions in programming languages.
  • (%) sign used as a wildcard character in SQL and moreover if its immediately followed by a 2-digit hexadecimal character it denotes an octet specifying a character that might otherwise not be allowed in URLs.
And in my case randomize string was 'b%2C6np' and '%2C' is percent-encoding of comma (,) punctuation mark.
No doubt, it taught me a good lesson to learn.

|-- Quality lies in the eyes of customer --|

Thursday, October 8, 2009

Am I a Veterinarian ???

Sometimes I feel I am a Veterinarian. I get preoccupied by this feeling whenever i get stuck up questioning a software and do not get luck in inspecting the cause and reproducing a behavior.

My software looks like a dumb, ineffable cow which cannot reply to my queries back, which cannot tell what troubles is it going through and whatever it says I am unable to understand because it does not speaks my language. The only response I get from the cow is its blank eye blinks and a halting and unresponsive gaze while I try to ask about its maladies.

I am going through this same situation now a days too with one of my cow (read as testing software). Wish me luck :(

Image Courtesy: The Straight Times 2009


|-- Quality lies in the eyes of customer --|

Friday, September 11, 2009

PayPal Authorize Pakistan Now! Campaign

The other day i signed a cause petition at facebook to initiate PayPal services in Pakistan too as all other neighboring countries. Here's the response i got from the cause creator; I found it worth sharing here at my blog:

/----------------*-----------------/
Dear Member,

Our PayPal.com for Pakistan demanding community has grown to over 4100 members all ready, the largest group to request Ebay.com to authorize PayPal.com services in Pakistan after UAE, China and India!

It's time to take this campaign to result oriented levels! If all of you Pakistanis (4,198 members) send over four thousand emails to PayPal, they will definitely reconsider their options for Pakistan!

Write an email with the title: "PayPal.com Authorize Pakistan Now!" to the following email address of the Owner and CEO of Ebay.com and PayPal.com:

jdonahoe@ebay.com
john.donahoe@ebay.com
sthompson@paypal.com

Again, if over 4000 members blog about this - spread the word – on your blogs and websites – the more activists and lobbyist effort we can garner! This is about us, this is for Pakistan!

You can also refer to this article on this campaign for ideas on what to write in your emails.
And refer them to this cause page.

Let's do it dear Pakistanis! If we have come this far, we can go even further together! Let's get PayPal.com to reconsider Pakistan today!
Fouad Bajwa
Cause Creator


|-- Quality lies in the eyes of customer --|

Tuesday, August 25, 2009

Facebook Overlook

The other day I had to change my job duration at facebook; Its duration was initially stated as May, 2007 To Present.
As I have quitted this job now therefore needed to change it as May, 2007 to May, 2009 but look at what facebook communicated with my friends regarding this change:



It was really annoying for me because my ex-colleagues thought (hence asked) as if I were not on good terms with my previous employer and thus removed the record from my work information.

Bad, bad way of communication!

Is it a testing overlook, a usability issue or just facebook don't think its something to ponder upon?


|-- Quality lies in the eyes of customer --|

Thursday, August 20, 2009

Testing As a Career

Here's the communication I had (with some alterations) some months back with a newbie to testing, he asked me to help starting his career in testing field at STC. I am sharing it here with a belief that it might help my local testing community however these are just common steps one should take to start.

/----------------*-----------------/

I strongly discourage people getting into testing field with reasons like not getting another job or its the most simplest job on earth... but I believe you aren't from one of them [wish I am not wrong :)]
One more thing... I am not amongst professional trainers; the category in which bucks are charged for sharing every single moment [may be someday i will be:)] but just wanted to help our local testing community in any way I could...!

Anyways, lets scratch the things...

1- Mr. Ahmed Mubbashir at STC gave a very good startup tip for you to start reading some good testing professionals blogs, you can have a very good real time scenarios insight by going through that blogs.

2- Testing is not like Mathematics which you need to learn any kind a formulae for.. its a part of everyone's nature i guess; you complain about anything that bugs you (Inspired by James Bach's definition of Bug).
Just jump into it... browse different websites.. Examine their working.. Try uTest for freelance testing... you can also get register with Kasepersky for the very reason.

3- Try learn some basics about testing/QA to get a background knowledge of what testing is all about. Google, wikipedia are best sources believe me. I am jotting some testing terms down here, search 'em n learn 'em; though i am not from 'a tester must learn all testing terminologies by heart' school of thoughts but one needs to understand the terms to speak in favour or against of it.
  • Black box testing
  • White box testing
  • Grey box testing
  • Unit/Integration testing
  • Performance/Load/Stress Testing
  • Usability Testing
  • Acceptance testing
  • Security testing
  • Regression Testing
  • Software Development Life Cycle
4- Practice, practice n practice hard. As you are not currently working as a testing professional in any organization that's why you have to practice testing at your own.. take any windows application installed at your system n just dwell into it.. try every explorative/destructive action you can make on it. Reckon yourself as an end user of an application.. don't think how an intelligent user will behave while using an application... just be a child - a somewhat sensible child who can remember things and able to drive results from them.

5- Here are some mentors' blogs links that are worth reading:
6- Get to know about what could be an error here (i.e. usability testing).

7- If ever you get yourself out of ideas about how to start test or you stuck-up while testing something; visit this.

8- You asked about some automated tools in your email; i myself worked on Quality Test Professional and Loadrunner... I can somehow guide you using these tools but i strongly believe in manual testing rather than to work like a feeling less n senseless robotic arm. Well you can also Google these terms to get such a wonderful tutorials though I believe you have had.

9- Testing is all about you.. your perception of things and your passion to become a positive vandal. Make reading, practicing and suspecting every single thing you see your habit from now whether it’s an ATM machine, your rooms' furniture setting or any food you are eating right now.

Good luck with the hunt!


|-- Quality lies in the eyes of customer --|

Friday, August 14, 2009

To Blog or Not To Blog?

-- My first post is dedicated to Pakistan's Independence Day(14th August) --

And finally I am here to blog...

The credit goes to Kashif Ali Habib who urged me consistently for starting my own blog, sharing my concerns on some specific channel/mode. Infact I was never against starting this great opportunity to express yourself but was (and somehow I still am) pre-occupied with thoughts like I wont be able to do justice with my blog. Starting a blog is not actually hitting the jack pot but updating it with useful knowledge is actually reaching the mile stone.

Anyhow, I aim to share useful + precise (i.e. not essay like) information here and I truly hope my friends help me getting it together.

|-- Quality lies in the eyes of customer --|

Thursday, August 13, 2009

Bug Rejected – It's Unable to Reproduce!

One of the most hazardous hurdles for a software tester is ‘hard to reproduce bugs’ which truly scrapes up as a nightmare until resolved (At least to me it really is.)

These bugs gave a very tough time during initial stage of my career. I still remember the times when I managed hard to find a severe bug and when tried to proudly show it to my manager or developer, it suddenly got disappear. I used to try every possible way to reproduce it again but most of the times I came up with an embarrassing note (i.e. O God, where the bug gone?) and bashing my head with keyboard in front of developers/manager’s devilish smiles. Though it happens once in a blue moon now too but now I have learnt how to cope with these devilish gestures.

But eventually I realized it’s me who is missing the most important step of s/w testing and thus providing a chance to developers for their gem stones to remain undiscovered. I got to know the importance of ‘Test Reporting’ then. A tester’s efforts can never be termed as complete until unless she is not well equipped with pre and post notes of her test case.

I tried myself hard for being detailed-oriented. It’s my routine now to jot down all important information on my notepad before starting test an application. I follow this technique in every type of testing I do; whether its exploratory testing where you have full authority to play with the build or regression testing where you are already over burdened with testing both old and new features at the same time.

For instance, I try note following information as my Pre-Notes/Steps while testing a web application:

1. Type of browser (IE, Firefox, Chrome, Opera etc.)

2. Version of browser

3. Any extra browser add-ons installed (I often noticed ‘IE Developer toolbar’ messing up with ASP classic applications and generating an IE Explorer error)

4. Java script ON/OFF ( I had to test an invoice print report which had a bar code and it took me time to investigate why this bar code is displaying correctly at developer’s machine but not on my machine. It was a Sun JAVA applet that needed to be installed at my browser to display bar coded labels.)

5. Load images automatically ON/OFF (Must look into this utility before start testing because if you unchecked this utility there could be possibility that your image buttons will display their ALT text and the ALT text sometimes isn’t hyperlinked to correct path at all.)

6. Cookies ON/OFF ( now a days 80% web development is done using cookies capture, be sure about the option you have set for it before start testing)

7. No. of steps you ran through and the exact order in which you carried them out.

8. A short detail of files/folders/a third party utility used with the application being tested (if any).

Etcetera

And information below as my Post-Notes/Steps:

1. Try reproducing the bug again with your written steps and clues to make sure whether you hit the real blind spot?

2. Precised error description and/or error cause (if known).

3. Application version in which you reproduced the bug.

Though it seems time consuming and lengthy but guess what… It really works!

Whenever I try to reproduce any hard to reproduce bug; that childhood story of an ant always sparks in my mind. It was a part of my 6th standard course book and was entitled as ‘Try Again’. The moral of the story was an ant never gives up while constantly falling down the wall and tries to get up the wall each time with a new hope.

I bet there are a lot more things that need to be noted as Pre/Post notes and to know these all I am looking forward to your comments.


|-- Quality lies in the eyes of customer --|