Friday, September 13, 2013

Reporting bugs

This post is on request from one of my fellow colleague come friend, a programmer. And when a programmer is asking a tester to write about bug report than you know it is important. Writing good bug reports is vital let me elaborate you why.

"The true measure of a great tester is that they find bugs, analyze them thoroughly, report them skillfully and end up creating a development team that understands the gaps in their own skill and knowledge." - Dr. James Whittaker(Software Architect @ Microsoft)

Thus a nicely reported bug presents the tester found the bug, analyze it throughly, understand it properly and ready for the debate why it is a bug and why it should be fixed. For your seniors or people in management it represents your ability to think, approach, representation and skills as a tester.

When reporting you can not forget following parameters,

  • Summary(Should be nice, clean, simple and self descriptive)
  • Description(Steps to reproduce with notes if required for each steps)
  • Environment details(Operating system, browser with version, application built number etc.)
  • Screenshot(One or more screen shots including indication)

Remember each and every parameters I stated above have its own importance in report. I am considering that first three points need no description of its importance. But I want to add something about the last one, Screenshots. It is more important than you think of it is. Does not matter application developers sitting with you in the same room or in other country. They will refer to the image more than words written in description. Research shows that a human understands 60% more with images rather than descriptive texts.

Feel free to leave a comment. Share your feelings about this post, was it helpful? does it contain ambiguous data? or anything. You are always welcome :)

Sunday, September 8, 2013

Selenium simplified tutorial

If you are interested in Selenium Webdriver. Looking for tutorial with good and trusted contents than I have a very special solution for you.

Alan Richardson a very well known tester wrote down a magnificent book called Selenium Simplified. The writer provide a very useful and free course in Udemy and paid course for a more details on Java. Check following links,


I hope this guideline is helpful for you, feel free to post your comment.

Wednesday, October 31, 2012

Selenium Test Report

How to see your written scripts of automated Selenium test case results as a report?

You can see a very rich result report by following below instructions. I am assuming you are running Selenium RC(Java) with Eclipse and in Windows. I am also assuming everything is configured thus your environment is ready to roll.

- When running the selenium server write down this code in the terminal
java -jar selenium-server.jar -htmlSuite "<insert_browser_name_here>""<insert_root_domain_here>" "<insert_full_path_to_suite_here>""<insert_a_full_path_to_store_reports_here>"

- For example,
java -jar selenium-server.jar -htmlSuite "*googlechrome""http://www.google.com""c:\ide_scripts\suite.htm""c:\ide_scripts\results.htm"

- After running test cases in the suite you should be able to see following figures(depending on your test cases and results of your suite),



Thursday, May 17, 2012

We Agile Testers

There are many types of testings Unit testing, Module testing, System testing, Integration testing, bla bla bla ... ... ... We testers all know what these means and definition, we are always eager to answer what kind of testing means what and we are ready with out armors to fight a war of debates to prove it. A special thanks to ISTQB :) But what happens people found bugs right after the beta release of our tested products? Our manager asking us weird questions, teammates questioning why we missed that, colleagues are blaming and joking, what happens then?

We ask ourselves question, what did I miss? going to our checklists.
- Test cases (Checked)
- Sprint backlogs (Checked)
- Resolved issues (Checked)
- Reopen issues (Checked)
- Unit testing (Checked)
- Module testing (Checked)
- System testing (Checked)
- Integration testing (Checked)
- Load testing (Checked)
- Security testing (Checked)
- Portability testing (Checked) 
...
...
...
and the checklist goes on and if all are checked then we are finding more and more that we have done. Then how do we miss?

We agile testers, are so much concern to test the task or the user story, we often forget to the link between each user stories, how they interact with each other. I am not talking about different units or modules, I am talking about different logic, user stories how they interact, is this what our requirement is or something else?
We agile testers, live in small fragments called sprints and we often forget the whole picture, we often to use our common sense. I am not telling that we cant do that its because of the pressures, we often forgot.

So, what is this post about? its about focusing the whole picture, its about thinking end to end, its about living in the context not in sprints, its not about checking what we have done its about checking what we miss, its not about defects of developers work its about defects in our work, its about us agile testers :)

Saturday, May 12, 2012

A simple test case management document

Recently many of my fellow colleagues and friends ask me for a simple test case management document and I gave them. So I thought of this post, lets share it here so if anybody need any information about basic test case management document so they can find here.

Before starting it I want you all to know that this is a very simple syntax, considering only those fields whose are necessary and avoiding others. Though this syntax can vary organization to organization but although it will give you an idea.

A spread sheet can be used to manage your test scenarios/ cases. A test scenario will always have one or more test cases. Its a good practice to break scenarios as small as possible while maintaining a test document.

Each scenario will contain following columns and each row will represent one test case.
- Serial Number(To track down test cases)
- Action(Action need to perform for that particular test case)
- Data(If any data is needed to perform the action of that case)
- Expected Output(Output which is expected for the action)
- Actual Output(Output actually given by the action)
- Result(Can be only Pass or Fail, nothing else)
- Comments(If any comment needed to add for the case)
- Defect(If the result is fail then you should give the link of the reported defect of your issue tracker)

Example:

Test Scenario: Log in

Sunday, April 8, 2012

Asking the right question cont.

My previous post was about asking questions, this one is to whom you are asking?

- To know about the business logic more accurately, ask right questions to the Product Owner
- To know about the application behaviors, ask questions to Developers/ Programmers
- To understand what the client need, ask questions to Client/ client representatives
- To understand the budget, time and coverage, ask question to Manager
- What about the question what is tested? why application is doing the right thing? if not then why not?

Whom do you ask these questions? Your senior? Your test manager? Your mentor? or it should be YOU?
To learn and test an application honestly you need to ask questions to your self and give honest answer, don't lie to your self. You will gradually(by time) will become the BEST :)

Tuesday, April 3, 2012

Asking the right question

Testing is all about learning, how can you learn without asking question? But asking so many questions, specially irrelevant one's are really dangerous ;) But avoiding asking questions is a sin for a tester. Start asking question relevant or irrelevant, as time will goes by and you will become more and more experience you will know what to ask and when to ask. Believe me you will get better and better each and everyday. So, if you are not practicing it, start today. Have courage, face and learn. Best of luck :)

Monday, January 30, 2012

Running Selenium Webdriver 2.0 in Opera

Following are the steps I used to run selenium webdriver in Opera
(Windows, Mozilla Firefox, Opera, Eclipse, Java)

Selenium IDE with Mozilla Firefox
- Open your Mozilla Firefox browser and Selenium IDE add on
- Record a simple and short test case for your testing application through Firefox and IDE
- Replay it ensure that cases runs alright as you recorded
- Export Test Case as JUnit4(Webdriver) Script from IDE

Selenium Webdriver/ Selenium 2.0
- Run Eclipse
- Create an new project
- Create a Class for the project without Main()
- Add the downloaded webdriver .jar files to your project in Java Build path-> Library
- Download and add another additional jar for Opera, selenium-server-standalone-2.18.0.jar
- Paste the JUnit4 code exported from IDE
- Hit the play button and enjoy ;)

Opera Configaration
- Opera latest versions
- Replace the code in exported JUnit code
-" driver = new FirefoxDriver(); " replace it with " driver = new OperaDriver(); "
- import com.opera.core.systems.OperaDriver;

Sunday, January 29, 2012

Running Selenium Webdriver 2.0 in IE

Following are the steps I used to run selenium webdriver in IE
(Windows, Mozilla Firefox, IE, Eclipse, Java)

Selenium IDE with Mozilla Firefox
- Open your Mozilla Firefox browser and Selenium IDE add on
- Record a simple and short test case for your testing application through Firefox and IDE
- Replay it ensure that cases runs alright as you recorded
- Export Test Case as JUnit4(Webdriver) Script from IDE

Selenium Webdriver/ Selenium 2.0
- Run Eclipse
- Create an new project
- Create a Class for the project without Main()
- Add the downloaded webdriver .jar files to your project in Java Build path-> Library
- Paste the JUnit4 code exported from IDE
- Hit the play button and enjoy ;)

IE Configaration
- IE 6 or Higher versions
- Go to IE Settings -> Internet options -> Security tab -> Enable protected mode for all type of connections
- Replace the code in exported JUnit code
-" driver = new FirefoxDriver(); " replace it with " driver = new InternetExplorerDriver(); "
- import org.openqa.selenium.ie.InternetExplorerDriver;

Wednesday, January 25, 2012

Running test scripts in Selenium 2.0

Following are the steps I used to run selenium webdriver
(Windows, Mozilla Firefox, Eclipse, Java)

Selenium IDE
- Open your Mozilla Firefox browser and Selenium IDE add on
- Record a simple and short test case for your testing application through Firefox and IDE
- Replay it ensure that cases runs alright as you recorded
- Export Test Case as JUnit4(Webdriver) Script from IDE

Selenium Webdriver/ Selenium 2.0
- Run Eclipse
- Create an new project
- Create a Class for the project without Main()
- Add the downloaded webdriver .jar files to your project in Java Build path-> Library
- Paste the JUnit4 code exported from IDE
- Hit the play button and enjoy ;)