Thursday, October 23, 2008
Living life as a Software Tester!
Recently I read a very interesting article on “All I Ever need to know about testing” by Lee Copeland.I was so impressed with the concept of our day to day work comparison with the software testing.I will extract only points related to software testing. As a software tester keep in mind these simple points:Share everything:If you are a experienced tester on any project then help the new developers on your project. Some testers have habit to keep the known bugs hidden till they get implement in code and then they write a big defect report on that. Don’t try to only pump your bug count, share everything with developers.Build trust:Let the developers know any bug you found in design phase. Do not log the bug repeatedly with small variations just to pump the bug count. Build trust in developer and tester relation.Don’t blame others:As a tester you should not always blame developers for the bugs. Concentrate on bug, not always on pointing that bug in front of all people. Hit the bug and its cause not the developer!Clean up your own mess:When you finish doing any test scenario then reconfigure that machine to its original configuration. The same case applies for bug report. Write a clean effective bug report. Let the developer find it easy to repro and fix it.Give credit to others for their work:Do not take others credit. If you have referred any others work, immediately give credit to that person. Do not get frustrated if you not found any bug that later has been reported by client. Do work hard, use your skill.Remember to flush Like the toilets flush all the software’s at some point. While doing performance testing remember to flush the system cache.Take a nap everyday:We need time to think, get refresh or to regenerate our energy.Some times its important to take one step back in order to get fresh insight and to find different working approach.Always work in teams, team score are always better and powerful than individuals.
Top 20 replies by Programmers to Testers when their programs don't work:-)
"That's weird..."
"It's never done that before."
"It worked yesterday."
"How is that possible?"
"It must be a hardware problem."
"What did you type in wrong to get it to crash?"
"There is something funky in your data."
"I haven't touched that module in weeks!"
"You must have the wrong version."
"It's just some unlucky coincidence."
"I can't test everything!"
"THIS can't be the source of THAT."
"It works, but it hasn't been tested."
"Somebody must have changed my code."
"Did you check for a virus on your system?"
"Even though it doesn't work, how does it feel?
"You can't use that version on your system."
"Why do you want to do it that way?"
"Where were you when the program blew up?"
"It works on my machine"
Finally they won't fix it :)
"It's never done that before."
"It worked yesterday."
"How is that possible?"
"It must be a hardware problem."
"What did you type in wrong to get it to crash?"
"There is something funky in your data."
"I haven't touched that module in weeks!"
"You must have the wrong version."
"It's just some unlucky coincidence."
"I can't test everything!"
"THIS can't be the source of THAT."
"It works, but it hasn't been tested."
"Somebody must have changed my code."
"Did you check for a virus on your system?"
"Even though it doesn't work, how does it feel?
"You can't use that version on your system."
"Why do you want to do it that way?"
"Where were you when the program blew up?"
"It works on my machine"
Finally they won't fix it :)
Topics to learn before attending testing interview
Testing is not a simple subject:Anyway i will try to list important and most real time using things:
Testing Terminology
SDLC Models
Test Life cycle(STLC)
V-Model for testing
Defect Life cycle
Test case Preparation
a. Functional Test Case Preparation
b. GUI Test Case Preparation
Test Data Preparation
Test case Review
Test Case Execution
Smoke/Sanity Testing
Retesting ,Regression Testing Process
Bug/Defect Report writing
Bug or Defect Reporting and Tracking
Test summary Report Preparation
Excel using skills
The above mentioned things are minimum that you should learn to survive in software testing profession.Please try to learn atlest above things before going to any testing interview.
Testing Terminology
SDLC Models
Test Life cycle(STLC)
V-Model for testing
Defect Life cycle
Test case Preparation
a. Functional Test Case Preparation
b. GUI Test Case Preparation
Test Data Preparation
Test case Review
Test Case Execution
Smoke/Sanity Testing
Retesting ,Regression Testing Process
Bug/Defect Report writing
Bug or Defect Reporting and Tracking
Test summary Report Preparation
Excel using skills
The above mentioned things are minimum that you should learn to survive in software testing profession.Please try to learn atlest above things before going to any testing interview.
133 Software Testing Interview Questions
I have so many questions in my mind when I think of any interview questions for Software testing / QA Engineer.These are all the questions extracted from the web and these are most asked interview questions too. Would you be able to answer all of them?If you know the answers please post your ans along with the question number.Ofcourse am giving links to some of the questions to find the correct answer.Do post your answers and help the people in finding answers.And also do mention your mail id in comment to get the answers for all the 133 Questions.Best of luck..!!
What is Software Testing?
What is the Purpose of Testing?
What types of testing do testers perform?
What is the Outcome of Testing?
What kind of testing have you done?
What is the need for testing?
What are the entry criteria for Functionality and Performance testing?
What is test metrics?
Why do you go for White box testing, when Black box testing is available?
What are the entry criteria for Automation testing?
When to start and Stop Testing?
What is Quality?
What is Baseline document, Can you say any two?
What is verification?
What is validation?
What is quality assurance?
What is quality control?
What is SDLC and TDLC?
What are the Qualities of a Tester?
When to start and Stop Testing?
What are the various levels of testing?
What are the types of testing you know and you experienced?
What exactly is Heuristic checklist approach for unit testing?
After completing testing, what would you deliver to the client?
What is a Test Bed?
What is a Data Guidelines?
Why do you go for Test Bed?
What is Severity and Priority and who will decide what?
Can Automation testing replace manual testing? If it so, how?
What is a test case?
What is a test condition?
What is the test script?
What is the test data?
What is an Inconsistent bug?
What is the difference between Re-testing and Regression testing?
What are the different types of testing techniques?
What are the different types of test case techniques?
What are the risks involved in testing?
Differentiate Test bed and Test Environment?
What ifs the difference between defect, error, bug, failure, fault?
What is the difference between quality and testing?
What is the difference between White & Black Box Testing?
What is the difference between Quality Assurance and Quality Control?
What is the difference between Testing and debugging?
What is the difference between bug and defect?
What is the difference between verification and validation?
What is the difference between functional spec. and Business requirement specification?
What is the difference between unit testing and integration testing?
What is the diff between Volume & Load?
What is diff between Volume & Stress?
What is the diff between Stress & Load Testing?
What is the Diff between Two Tier & Three tier Architecture?
What is the diff between Client Server & Web Based Testing?
What is the diff between Integration & System Testing?
What is the Diff between Code Walkthrough & Code Review?
What is the diff between walkthrough and inspection?
What is the Diff between SIT & IST?
What is the Diff between static and dynamic?
What is the diff between alpha testing and beta testing?
What are the Minimum requirements to start testing?
What is Smoke Testing & when it will be done?
What is Adhoc Testing? When it can be done?
What is cookie testing?
What is security testing?
What is database testing?
What is the relation ship between Quality & Testing?
How do you determine, what to be tested?
How do you go about testing a project?
What is the Initial Stage of testing?
What is Web Based Application Testing?
What is Client Server Application Testing?
What is Two Tier & Three tier Architecture?
What is the use of Functional Specification?
Why do we prepare test condition, test cases, test script (Before Starting Testing)?
Is it not waste of time in preparing the test condition, test case & Test Script?
How do you go about testing of Web Application?
How do you go about testing of Client Server Application?
What is meant by Static Testing?
Can the static testing be done for both Web & Client Server Application?
In the Static Testing, what all can be tested?
Can test condition, test case & test script help you in performing the static testing?
What is meant by dynamic testing?
Is the dynamic testing a functional testing?
Is the Static testing a functional testing?
What are the functional testing you perform?
What is meant by Alpha Testing?
What kind of Document you need for going for an Functional testing?
What is meant by Beta Testing?
At what stage the unit testing has to be done?
Who can perform the Unit Testing?
When will the Verification & Validation be done?
What is meant by Code Walkthrough?
What is meant Code Review?
What is the testing that a tester performs at the end of Unit Testing?
What are the things, you prefer & Prepare before starting Testing?
What is Integration Testing?
What is Incremental Integration Testing?
What is meant by System Testing?
What is meant by SIT?
When do you go for Integration Testing?
Can the System testing be done at any stage?
What are stubs & drivers?
What is the Concept of Up-Down & Down-Up in Testing in integration testing?
What is the final Stage of Integration Testing?
Where in the SDLC, the Testing Starts?
What is the Outcome of Integration Testing?
What is meant by GUI Testing?
What is meant by Back-End Testing?
What are the features, you take care in Prototype testing?
What is Mutation testing & when can it be done?
What is Compatibility Testing?
What is Usability Testing?
What is the Importance of testing?
What is meant by regression Testing?
When we prefer Regression & what are the stages where we go for Regression Testing?
What is performance testing?
What is the Performance testing; those can be done Manually & Automatically?
What is Volume, Stress & Load Testing?
What is a Bug?
What is a Defect?
What is the defect Life Cycle?
What is the Priority in fixing the Bugs?
Explain the Severity you rate for the bugs found?
Diff between UAT & IST?
What is meant by UAT?
What all are the requirements needed for UAT?
What are the docs required for Performance Testing?
What is risk analysis?
How to do risk management?130. What are test closure documents?
What is traceability matrix?
What ways you followed for defect management?and finally
What is diff betn Smoke Testing and Sanity Testing?
What is the though situation you ever faced in testing?
What is Software Testing?
What is the Purpose of Testing?
What types of testing do testers perform?
What is the Outcome of Testing?
What kind of testing have you done?
What is the need for testing?
What are the entry criteria for Functionality and Performance testing?
What is test metrics?
Why do you go for White box testing, when Black box testing is available?
What are the entry criteria for Automation testing?
When to start and Stop Testing?
What is Quality?
What is Baseline document, Can you say any two?
What is verification?
What is validation?
What is quality assurance?
What is quality control?
What is SDLC and TDLC?
What are the Qualities of a Tester?
When to start and Stop Testing?
What are the various levels of testing?
What are the types of testing you know and you experienced?
What exactly is Heuristic checklist approach for unit testing?
After completing testing, what would you deliver to the client?
What is a Test Bed?
What is a Data Guidelines?
Why do you go for Test Bed?
What is Severity and Priority and who will decide what?
Can Automation testing replace manual testing? If it so, how?
What is a test case?
What is a test condition?
What is the test script?
What is the test data?
What is an Inconsistent bug?
What is the difference between Re-testing and Regression testing?
What are the different types of testing techniques?
What are the different types of test case techniques?
What are the risks involved in testing?
Differentiate Test bed and Test Environment?
What ifs the difference between defect, error, bug, failure, fault?
What is the difference between quality and testing?
What is the difference between White & Black Box Testing?
What is the difference between Quality Assurance and Quality Control?
What is the difference between Testing and debugging?
What is the difference between bug and defect?
What is the difference between verification and validation?
What is the difference between functional spec. and Business requirement specification?
What is the difference between unit testing and integration testing?
What is the diff between Volume & Load?
What is diff between Volume & Stress?
What is the diff between Stress & Load Testing?
What is the Diff between Two Tier & Three tier Architecture?
What is the diff between Client Server & Web Based Testing?
What is the diff between Integration & System Testing?
What is the Diff between Code Walkthrough & Code Review?
What is the diff between walkthrough and inspection?
What is the Diff between SIT & IST?
What is the Diff between static and dynamic?
What is the diff between alpha testing and beta testing?
What are the Minimum requirements to start testing?
What is Smoke Testing & when it will be done?
What is Adhoc Testing? When it can be done?
What is cookie testing?
What is security testing?
What is database testing?
What is the relation ship between Quality & Testing?
How do you determine, what to be tested?
How do you go about testing a project?
What is the Initial Stage of testing?
What is Web Based Application Testing?
What is Client Server Application Testing?
What is Two Tier & Three tier Architecture?
What is the use of Functional Specification?
Why do we prepare test condition, test cases, test script (Before Starting Testing)?
Is it not waste of time in preparing the test condition, test case & Test Script?
How do you go about testing of Web Application?
How do you go about testing of Client Server Application?
What is meant by Static Testing?
Can the static testing be done for both Web & Client Server Application?
In the Static Testing, what all can be tested?
Can test condition, test case & test script help you in performing the static testing?
What is meant by dynamic testing?
Is the dynamic testing a functional testing?
Is the Static testing a functional testing?
What are the functional testing you perform?
What is meant by Alpha Testing?
What kind of Document you need for going for an Functional testing?
What is meant by Beta Testing?
At what stage the unit testing has to be done?
Who can perform the Unit Testing?
When will the Verification & Validation be done?
What is meant by Code Walkthrough?
What is meant Code Review?
What is the testing that a tester performs at the end of Unit Testing?
What are the things, you prefer & Prepare before starting Testing?
What is Integration Testing?
What is Incremental Integration Testing?
What is meant by System Testing?
What is meant by SIT?
When do you go for Integration Testing?
Can the System testing be done at any stage?
What are stubs & drivers?
What is the Concept of Up-Down & Down-Up in Testing in integration testing?
What is the final Stage of Integration Testing?
Where in the SDLC, the Testing Starts?
What is the Outcome of Integration Testing?
What is meant by GUI Testing?
What is meant by Back-End Testing?
What are the features, you take care in Prototype testing?
What is Mutation testing & when can it be done?
What is Compatibility Testing?
What is Usability Testing?
What is the Importance of testing?
What is meant by regression Testing?
When we prefer Regression & what are the stages where we go for Regression Testing?
What is performance testing?
What is the Performance testing; those can be done Manually & Automatically?
What is Volume, Stress & Load Testing?
What is a Bug?
What is a Defect?
What is the defect Life Cycle?
What is the Priority in fixing the Bugs?
Explain the Severity you rate for the bugs found?
Diff between UAT & IST?
What is meant by UAT?
What all are the requirements needed for UAT?
What are the docs required for Performance Testing?
What is risk analysis?
How to do risk management?130. What are test closure documents?
What is traceability matrix?
What ways you followed for defect management?and finally
What is diff betn Smoke Testing and Sanity Testing?
What is the though situation you ever faced in testing?
Interview Questions @ CA this week
Questions gathered from interview at CA, Hyd this week.
Why S/W need testing?
How will you choose your test team?
Testplan shouldn't contain?
Extension for Object Repository in QTP? Ans: .TSR
How will you communicate with client in deadline situations?
QTP uses which script?
QTP and QC Integration?
What are list of Functional testing tools?
Will post remaining in next article. Happy Reading!
Why S/W need testing?
How will you choose your test team?
Testplan shouldn't contain?
Extension for Object Repository in QTP? Ans: .TSR
How will you communicate with client in deadline situations?
QTP uses which script?
QTP and QC Integration?
What are list of Functional testing tools?
Will post remaining in next article. Happy Reading!
Smoke Testing Vs Sanity Testing
Smoke Testing Vs Sanity Testing1. "Smoke Testing" is usually done on the nightly/interim build to test its stability. Therefore "smoke Testing" is often called as "Build verfication Testing" too. In contrast, "Sanity Testing" is usually done during the later cycles after thorough regression cycle are over. When multiple cycle of testing are executed, "Sanity Testing " is done towards the product release phase.2. "Smoke Testing" is done following a shallow and wide approach where all the basic and major areas are tested without going too deep into the functionality. In contrast, "Sanity Testing" is usually a focused but limited form of regression testing, which follows a deep and narrow approach to test a particular functionality in detail.3. "Smoke Testing" is done by developers before the build is released or by testers before accepting a build for further testing. On the other hand, "Sanity Testing" is done mostly by the testers.4. "Smoke Tests" are mostly in form of scripted form whereas "Sanity Tests" are mostly non-scripted.5. "Smoke Testing" can be compared with the normal health check-up of the product whereas the "Sanity Testing" can be compared with some specialized tests to reveal possible problem with a particular functionality of the product.
Defect Report Template
Defect reports are probably primary work product for most of the software testers. Good bug report, which is informative and understandable earns you a good reputation. Weak report generate extra work for everyone. Most of the time, a weak bug report is returned with comments saying not clear, need more information etc. That makes you work again on the same defect and thus reduces efficiency of testers and developers both. Defect reports are not only used by programmers, but also by managers, executives, documentation team and support executives for various reasons.Purpose of a defect report is multifold in any organization. Defect reports are used to
Alert software programmers about the defect and gives them sufficient information to find root cause and fix the problem.
Provide information to technical writers who are writing troubleshooting, known limitation etc.
Provide starting point for the next release
Add test cases in the regression suite for next release.
According to IEEE 829, A good defect reports should be simple, understandable, reproducible, legible and non-judgmental.
Defect Report Template :
A good defect report might have following sections.
Headline: One line description of the defect. Remember, A good headline will always be clear, related to the defect and give some hints on how critical defect could be.
Product: In most cases defect tracking system is used for more than one product. So specifying appropriate product and version is very important.
Component: Products are normally very complex, and can be divided into components. A defect report containing proper information about component can help managers in assigning it to appropriate person.
Defect Type: Defect type could be, functionality, specification, regression, UI etc. This classification can be used to analyze how defects are distributed in the system.
Priority: Priority is the impact of defect on business. This field gives an indication of the impact of this defect on business. In some organizations, testers do not specify priority, It is defined my manager or triage team members.
Severity: Severity is the impact of the defect on the product. For example if you hit five keys together and your product crashes, it is a very severe defect. But its priority is probably low because normally people might not hit five keys together. Now consider that the company logo is not proper on the splash screen. From severity point of view it is not severe as it is not crashing application or blocking user from using the application. However, it is hig priority as it is affecting organization's image.
Environment: Proper information about your test execution environment should be present. For example, information about platform, databases, run times everything should be included in your defect report. This information helps development team in reproducing the defects.
Steps: All the steps should be specified clearly. You should not assume that programmer will understand this. Programmer might be looking at your defect report when are not around to explain. Your steps should be clear enough for a novice user to follow and reproduce or verify the defect .
Attachments: Whatever additional information is needed for the defect, should also be attached. This additional information could be logs generated by system, application etc. It could be screen shots or any other thing that might help developers in reproducing the defects.
Comments: If you have any additional comments on the defect, you should specify it clearly. For example if you observe/think that defect is related to some other defects filed in the same component with little variation. You should specify that.
Hope this template was useful for you. You can also visit test plan Here.
In every organization defects are reported or tracked in a defect tracking system
Alert software programmers about the defect and gives them sufficient information to find root cause and fix the problem.
Provide information to technical writers who are writing troubleshooting, known limitation etc.
Provide starting point for the next release
Add test cases in the regression suite for next release.
According to IEEE 829, A good defect reports should be simple, understandable, reproducible, legible and non-judgmental.
Defect Report Template :
A good defect report might have following sections.
Headline: One line description of the defect. Remember, A good headline will always be clear, related to the defect and give some hints on how critical defect could be.
Product: In most cases defect tracking system is used for more than one product. So specifying appropriate product and version is very important.
Component: Products are normally very complex, and can be divided into components. A defect report containing proper information about component can help managers in assigning it to appropriate person.
Defect Type: Defect type could be, functionality, specification, regression, UI etc. This classification can be used to analyze how defects are distributed in the system.
Priority: Priority is the impact of defect on business. This field gives an indication of the impact of this defect on business. In some organizations, testers do not specify priority, It is defined my manager or triage team members.
Severity: Severity is the impact of the defect on the product. For example if you hit five keys together and your product crashes, it is a very severe defect. But its priority is probably low because normally people might not hit five keys together. Now consider that the company logo is not proper on the splash screen. From severity point of view it is not severe as it is not crashing application or blocking user from using the application. However, it is hig priority as it is affecting organization's image.
Environment: Proper information about your test execution environment should be present. For example, information about platform, databases, run times everything should be included in your defect report. This information helps development team in reproducing the defects.
Steps: All the steps should be specified clearly. You should not assume that programmer will understand this. Programmer might be looking at your defect report when are not around to explain. Your steps should be clear enough for a novice user to follow and reproduce or verify the defect .
Attachments: Whatever additional information is needed for the defect, should also be attached. This additional information could be logs generated by system, application etc. It could be screen shots or any other thing that might help developers in reproducing the defects.
Comments: If you have any additional comments on the defect, you should specify it clearly. For example if you observe/think that defect is related to some other defects filed in the same component with little variation. You should specify that.
Hope this template was useful for you. You can also visit test plan Here.
In every organization defects are reported or tracked in a defect tracking system
Subscribe to:
Posts (Atom)