Vous êtes sur la page 1sur 15

Chapter 1 Bug or Defect Report

Lets assume in your application under test you want to create a new user with user information, for that you need to logon into the application and navigate to USERS menu > New User, then enter all the details in the User form like, First Name, Last Name, Age, Address, Phone etc. Once you enter all these information, you need to click on SAVE button in order to save the user. Now you can see a success message saying, New User has been created successfully. But when you entered into your application by logging in and navigated to USERS menu > New user, entered all the required information to create new user and clicked on SAVE button. BANG! The application crashed and you got one error page on screen. (Capture this error message window and save as a Microsoft paint file) Now this is the bug scenario and you would like to report this as a BUG in your bugtracking tool. How will you report this bug effectively? Here is the sample bug report for above mentioned example:(Note that some bug report fields might differ depending on your bug tracking system) SAMPLE BUG REPORT: Bug Title or Name: Application crash on clicking the SAVE button while creating a new user.Bug ID: (It will be automatically created by the BUG Tracking tool once you save this bug) Area Path: USERS menu > New Users Build Number: Version Number 5.0.1 Severity: HIGH (High/Medium/Low) or 1 Priority: HIGH (High/Medium/Low) or 1 Assigned to: Developer-X Reported By: Your Name Reported On: Date DefectStatus: New/Open/Active (Depends on the Tool you are using)Environment: Windows 2003/SQL Server 2005 Description:Application crash on clicking the SAVE button while creating a newuser, hence unable to create a new user in the application. Steps To Reproduce:
1) Logon into the application 2) Navigate to the Users Menu > New User 3) Filled all the user information fields 4) Clicked on Save button 5) Seen an error page ORA1090 Exception: Insert values Error 6) See the attached logs for more information (Attach more logs related to bug..IF any)

7) And also see the attached screenshot of the error page.Expected result: On clicking SAVE button, should be prompted to a success message New User has been created successfully.(Attach application crash screen shot.. IF any)Save the defect/bug in the BUG TR ACKING TOOL. You will get a bug id, which you can use for further bug reference.Default New bug mail will go to respective developer and the default module owner (Team leader or manager) for further action.

Chapter 2 Test Plan Vs Test Strategy


Test Strategy A Test Strategy document is a high level document and normally developed by project manager. This document defines Testing Approach to achieve testing objectives. The Test Strategy is normally derived from the Business Requirement Specification document. The Test Stategy document is a static document meaning that it is not updated too often. It sets the standards for testing processes and activities and other documents such as the Test Plan draws its contents from those standards set in the Test Strategy Document. Some companies include the Test Approach or Strategy inside the Test Plan, which is fine and it is usually the case for small projects. However, for larger projects, there is one Test Strategy document and different number of Test Plans for each phase or level of testing. Components of the Test Strategy document Scope and Objectives Business issues Roles and responsibilities Communication and status reporting Test deliverability Industry standards to follow Test automation and tools Testing measurements and metrices Risks and mitigation Defect reporting and tracking Change and configuration management Training plan Test Plan The Test Plan document on the other hand, is derived from the Product Description, Software Requirement Specification SRS, or Use Case Documents.The Test Plan document

is usually prepared by the Test Lead or Test Manager and the focus of the document is to describe what to test, how to test, when to test and who will do what test. It is not uncommon to have one Master Test Plan which is a common document for the test phases and each test phase have their own Test Plan documents. There is much debate, as to whether the Test Plan document should also be a static document like the Test Strategy document mentioned above or should it be updated every often to reflect changes according to the direction of the project and activities.My own personal view is that when a testing phase starts and the Test Manager is controlling the activities, the test plan should be updated to reflect any deviation from the original plan. After all, Planning and Control are continuous activities in the formal test process. Test Plan Contains: Test Plan id Introduction Test items Features to be tested Features not to be tested Test techniques Testing tasks Suspension criteria Features pass or fail criteria Test environment (Entry criteria, Exit criteria) Test delivarables Staff and training needs Responsibilities Schedule

Chapter 3 Testing Life Cycle - Roles and Responsibilities


Testing Life Cycle Roles and Responsibilities Clear communication protocol should be defined with in the testing team to ensure proper understanding of roles and responsibilities. The roles chart should contain both on-site and off-shore team members. Testing Life Cycle Roles and Responsibilities Test Manager

Single point contact between on site and offshore team Prepare the project plan. Test management Test planning Interact with onsite lead, Client QA manager. Team Management. Work Allocation to the team. Test coverage analysis. Co-ordination with onsite for issue resolution. Monitoring the deliverables. Verify readiness of the product for release through release review. Obtain customer acceptance on the deliverables Performing risk analysis when required Reviews and status reporting. Authorize intermediate deliverables and patch release to customer. Test Lead Resolves technical issues for the product group Provide direction to the team member. Perform activities to the respective product group. Review and approve of test plan. Review test script/code. Approve completion of the integration testing. Conduct system/regression test. Ensure tests are conducted as per plan. Reports status to the offshore test manager. Team Lead or Test Lead or Module Lead Must be able to independently lead a team of at least 5 engineers Must be able to provide technical guidance and be the technical "go to" person for the team Must also be able to perform planning, scheduling, tracking and status reporting Supporting pre-sales activities by providing inputs around estimation, approach, domain knowledge etc Enforces changes to test strategy based on the project context Provide ideas to improve the existing test processes commenting about quality of the application under test through factual information Accountable for the test schedules, effectiveness of the testing, morale of the team etc. Note:

1) Able to lead independent teams of 4-5 engineers on software validation projects (functionality testing, test automation, IOT / compatibility testing, compliance & certification testing, I18N / L10N testing etc 2) Be hands-on in test designing, automation, defect management, test reporting & analysis & independently troubleshoot & debug problems in test environments, test automation frameworks etc. Test Engineer Development and Execution of the test cases and scripts Result capturing and analysis Defects reporting and status reporting. Team Structure An effective testing team includes a mixture of members who has Testing expertise/Tools expertise. Database expertise/Domain/Technology expertise. Consultants/End users. The testing team must be properly structured, with defined roles and responsibilities that allow the testers to perform their function with minimal overlap. There should not be any certainty regarding which team member should perform which duties. The test manager will be facilitating any resources required for the testing team. Understanding Software Defects Becoming an Influential Test Team Leader by Randall Rice, Rice Consulting Services, USA The reason it is so important to add value to your team and to your organization is that when a test team is seen as just a group that finds defects, it's easy to see them as the problem. It's also easy to justify outsourcing such a group because they mainly do one job. This also leads to becoming a commodity within an organization, which can be bought from a variety of providers. In this mindset, management is very tempted to give the job to the people who can do it the cheapest, regardless of who can do it best. In this way, adding value helps make you an indispensable part of your organization. Let's look at some ways you can add value to your team and to your organization. Grow Each Member Cross Functionally This means that each person can perform multiple tasks. When this happens you add depth to your team and you have additional backups when needed. You can also greatly multiply time and effort by having people who can do a variety of jobs at the same time. To do this involves cross-training people in a variety of tasks that the test team performs. This can be done in on-the-job training or in formal training.

Just as a way of measuring the value of this, compute a 10% overall increase in value for each function on your team that has cross-functional support. Find Each Persons Passion And Focus On It When you do this, you unleash excitement, productivity and creativity because people get to do what they love to do. In addition, attitudes and morale improve greatly. There is no doubt that when people do the things they love to do, they do their job better. To do this requires that you understand each person and what motivates them. This means that you must know the individuals on your team and find out what they love to do. As a test team leader you become more like the coach of a sports team. A good coach knows the players and the positions where they add the most value on the team. Add 20% value for each person working in their respective area that is exciting and interesting to them. Make Each Person A Resident Expert On Something This gives each person on the team a level of importance and respect because they know that the team is looking to them as the expert. Also, this motivates people to learn more about their area of expertise. I first saw this in action when I performed an assessment at a large company that was probably the most dysfunctional organisation I had ever seen in terms of culture and process. However, one team seemed to stand out above the rest. They got along with each other and they did an excellent job. This team was a technically diverse group of individuals - one person was a software architect, one was a requirements analyst, another person was a tester, one was a programmer, another was a documentation specialist, and the leader came from marketing. In speaking with their leader I learned their secret was that each person on the team was regarded as an expert in their respective area. When a decision was needed, the rest of the team looked first and foremost to the person who knew the most about that area and heeded their advice. This really helped them to gel as a team. It added a tremendous value to the organisation, because they were able to do their jobs better than anyone else. By the way, every person I spoke with on that team loved their job. People on the other teams could hardly wait for the day to be over. Add 10% value for each resident expert on your team. Encourage Each Person On The Team To Be A Mentor I don't recommend that you force people to become mentors, but rather encourage them based on what it can do for them and for others. In my experience, mentoring initiatives fail when they are seen as mandatory. People can be a mentor to someone, although not necessarily on your team. Mentors are a big force in driving continuous learning and they can also promote what your team does to people outside of the team. A mentor can personalize training to individuals on your team in a way that could never be

achieved in a classroom setting. Add 20% value for each mentor on your team. Encourage Each Person On The Team To Have A Mentor The persons mentor may or may not be on the team. By having a mentor, you have someone who can answer your questions, teaching you new things, and commit observations about your performance. And very importantly, a mentor can hold you accountable and can help you improve in ways that others cant or wont. Because of this, I highly recommend that the team leader have one or more mentors. At 20% value for each person on your team that has a mentor. Constantly Work To Build And Reinforce Skills This can be done by formal training, as well as in formal training and mentoring. Training does not have to be formal or expensive to be effective. However, there must be personal motivation that causes a person to want to learn. If someone doesn't want to learn, it doesn't matter which method they choose! Each person should have a skill building plan that includes all types of training, including independent research. My skill building plan is simple -- I spend 30 minutes a day on the topic I'm trying to learn about until I feel like I have enough knowledge to move on to something else. I don't just focus on testing or even technology. I spent time on whatever interests me and sometimes even on things that don't initially interest me. Add 20% value for each person on your team that has and follows a skill building plan. Play To Your Strengths and Add People To Fill Gaps No individual is great at doing everything on a team, so find the things you do best and do them the most. Then, find others to fill the gaps. Even if you work diligently at trying to improve your weak areas, about the best you will become is average. If you spend your time doing what you're average at the expense of doing things you really excel in, that's not a good trade-off. If you need to know your strengths and weaknesses, ask the others on your team or ask your mentor. Add 25% value if people on your team are all working in their area of strength. The Combined Value Assuming a seven person team that performs eight major functions, here is how I would estimate the increase in the teams value. Keep in mind, that these are just my own subjective estimates based on my own experience of what these would mean to me as a test team leader. Each function can be performed by more than one person: +80% Each person working in their area of passion: +140% Each person is an expert on something: +70% Each person is a mentor: +140% Each person has a mentor: +140% Each person has a personal growth plan: +175% Each person is working in their area of strength: +175% Added together, these would give an increase in value of 920%. Thats an increase of over nine times in value! Some people have suggested that the combined impact is not a summation, but rather a multiplication

the cause of the synergistic effect that could be seen. For example, having someone that is a resident expert on something and being a mentor could have an added value in itself that is more than the value of the two added together. This may well be true, but I'm just trying to stay conservative in my numbers. In fact, if you don't like these numbers, that's fine. I encourage you to estimate what each of these areas would mean for your team and do a similar calculation using your own numbers. I think most teams would be happy with just doubling their value! Helpful Questions In your efforts to learn about your team and its value, here are some questions that I have found helpful to ask. I'm dividing these between questions for your team and those you serve. For your team: What do you really like to do?What excites you?What do we do best as a team?What do we struggle with most as a team?Where do you see your greatest contribution to the team?Who do you respect most on the team and why? To those your team serves (your customers):What value do you see from our services?What unrealized potential do you see in our services? Conclusion I hope this article is a catalyst for thinking about new and creative ways to add value to your team. I'm sure there's more than seven ways to do this, and the ways I've suggested will require effort and teamwork, but can be done with minimal out-of-pocket expense. You can also try this as an experiment or trial and see how it works without a huge commitment. Always remember, that these are things that the team must want to do. People must see the value themselves of increasing their skills and contribution to the organization. By doing these things your team will set itself apart as a well functioning and valued part of your organization. Hopefully, management will also see your team as an indispensable part of the organization. Biography Randall Rice is a consultant and trainer in software testing with over 30 years experience in building and testing systems. He will be presenting this topic as part of a half-day tutorial at EuroStar 2006 in Manchester called Becoming an Influential Test Team Leader. You can reach Randy from his web site at www.riceconsulting.com.

Chapter 4 Manual Testing: FAQs


1. What is Software Testing? 2. What is the Purpose of Testing?

3. What types of testing do testers perform? 4. What is the Outcome of Testing? 5. What kind of testing have you done? 6. What is the need for testing? 7. What are the entry criteria for Functionality and Performance testing? 8. What is test metrics? 9. Why do you go for White box testing, when Black box testing is available? 10. What are the entry criteria for Automation testing? 11. When to start and Stop Testing? 12. What is Quality? 13. What is Baseline document, Can you say any two? 14. What is verification? 15. What is validation? 16. What is quality assurance? 17. What is quality control? 18. What is SDLC and TDLC? 19. What are the Qualities of a Tester? 20. When to start and Stop Testing? 21. What are the various levels of testing? 22. What are the types of testing you know and you experienced? 23. What exactly is Heuristic checklist approach for unit testing? 24. After completing testing, what would you deliver to the client? 25. What is a Test Bed? 26. What is a Data Guidelines? 27. Why do you go for Test Bed? 28. What is Severity and Priority and who will decide what? 29. Can Automation testing replace manual testing? If it so, how? 30. What is a test case? 31. What is a test condition? 32. What is the test script? 33. What is the test data? 34. What is an Inconsistent bug? 35. What is the difference between Re-testing and Regression testing? 36. What are the different types of testing techniques? 37. What are the different types of test case techniques? 38. What are the risks involved in testing?

39. Differentiate Test bed and Test Environment? 40. What ifs the difference between defect, error, bug, failure, fault? 41. What is the difference between quality and testing? 42. What is the difference between White & Black Box Testing? 43. What is the difference between Quality Assurance and Quality Control? 44. What is the difference between Testing and debugging? 45. What is the difference between bug and defect? 46. What is the difference between verification and validation? 47. What is the difference between functional spec. and Business requirement specification? 48. What is the difference between unit testing and integration testing? 49. What is the diff between Volume & Load? 50. What is diff between Volume & Stress? More Testing Interview Question 51. What is the diff between Stress & Load Testing? 52. What is the Diff between Two Tier & Three tier Architecture? 53. What is the diff between Client Server & Web Based Testing? 54. What is the diff between Integration & System Testing? 55. What is the Diff between Code Walkthrough & Code Review? 56. What is the diff between walkthrough and inspection? 57. What is the Diff between SIT & IST? 58. What is the Diff between static and dynamic? 59. What is the diff between alpha testing and beta testing? 60. What are the Minimum requirements to start testing? 61. What is Smoke Testing & when it will be done? 62. What is Adhoc Testing? When it can be done? 63. What is cookie testing? 64. What is security testing? 65. What is database testing? 66. What is the relation ship between Quality & Testing? 67. How do you determine, what to be tested? 68. How do you go about testing a project? 69. What is the Initial Stage of testing? 70. What is Web Based Application Testing? 71. What is Client Server Application Testing?

72. What is Two Tier & Three tier Architecture? 73. What is the use of Functional Specification? 74. Why do we prepare test condition, test cases, test script (Before Starting Testing)? 75. Is it not waste of time in preparing the test condition, test case & Test Script? 76. How do you go about testing of Web Application? 77. How do you go about testing of Client Server Application? 78. What is meant by Static Testing? 79. Can the static testing be done for both Web & Client Server Application? 80. In the Static Testing, what all can be tested? 81. Can test condition, test case & test script help you in performing the static testing? 82. What is meant by dynamic testing? 83. Is the dynamic testing a functional testing? 84. Is the Static testing a functional testing? 85. What are the functional testing you perform? 86. What is meant by Alpha Testing? 87. What kind of Document you need for going for an Functional testing? 88. What is meant by Beta Testing? 89. At what stage the unit testing has to be done? 90 Who can perform the Unit Testing? 91. When will the Verification & Validation be done? 92. What is meant by Code Walkthrough? 93. What is meant Code Review? 94. What is the testing that a tester performs at the end of Unit Testing? 95. What are the things, you prefer & Prepare before starting Testing? 96. What is Integration Testing? 97. What is Incremental Integration Testing? 98. What is meant by System Testing? 99. What is meant by SIT? 100 .When do you go for Integration Testing? Question Answers 1.What is Software Testing? Ans- To validate the software against the requirement. 2. What is the Purpose of Testing? Ans- To check whether system is meeting requirement. 3. What types of testing do testers perform? Ans- Black Box

4. What is the Outcome of Testing? Ans- System which is bug free and meet the system requirements. 5. What kind of testing have you done? Ans- Black Box 6. What is the need for testing? Ans- To Make error Free Product and Reduce Development Cost. 7. What are the entry criteria for Functionality and Performance testing? Ans- Functional: should have stable functionality code Performance- After system testing 8. What is test metrics? Ans- Contains how many test cases we have executed, which again contain how many pass, fail and can not be executed. 9. Why do you go for White box testing, when Black box testing is available? Ans- To check code, branches and loops in code 10. What are the entry criteria for Automation testing? Ans- Should have stable code. 11. When to start and Stop Testing? Ans-When system meets the requirement and there is no change in functionality. 12. What is Quality? Ans- Consists of two QA and QC.Customer point of View Fit for use and Meets User Requirement is Quality. 13. What is Baseline document, Can you say any two? Ans- Document which is standard like test plan format, checklist for system testing . 13. What is Baseline document, Can you say any two? Ans- Document which is standard like test plan format, checklist for system testing 14. What is verification? Ans- To review the document. 15. What is validation? Ans- To validate the system against the requirements. 16. What is quality assurance? Ans Bug presentation activity is called QA. 17. What is quality control? Ans- Bug dictation activity is called QC. 18. What is SDLC and TDLC? Ans- SDLC- Software Development Life Cycle and Testing is a part of it. TDLC-Test Development Life Cycle. 19. What are the Qualities of a Tester?

Ans- Should have ability of find out hidden bug as early as possible in SDLC. 20. When to start and Stop Testing? Ans- Start- At the time of requirement gathering, When Meets Requirements. 21. What are the various levels of testing? ans- Unit,Integration,System and Acceptance testing. 22. What are the types of testing you know and you experienced? Ans- Black Box, Functional Testing, system testing, gui testing etc 23. After completing testing, what would you deliver to the client? Ans- Testware 24. What is a Test Bed? Ans- Test Data is called test bad. 25. What is a Data Guidelines? Ans- Guidelines which are to be followed for the preparation of test data. 26. Why do you go for Test Bed? Ans- To validate the system against the required input. 27. What is Severity and Priority and who will decide what? Ans- Severity- how much severe is bug for application like critical Priority- How much urgency of functionality in which bug occur. 28. Can Automation testing replace manual testing? If it so, how? Ans- Yes, if there are many modifications in functionality and it is near impossible to update the automated scripts. 29. What is a test condition? Ans: logical input data against which we validate the system. 30. What is the test data? Ans- input data against which we validate the system. 31. What is an Inconsistent bug? Ans-Bug which are not reproducible 32. What is the difference between Re-testing and Regression testing? Ans- Regression- Check that change in code have not effected the working functionality Retesting- Again testing the functionality of the application. What are the contents in an effective Bug report? Project, Subject, Description, Summary, Detected By (Name of the Tester), Assigned To (Name of the Developer who is supposed to the Bug), Test Lead ( Name ), Detected in Version, Closed in Version, Date Detected, Expected Date of Closure, Actual Date of Closure, Priority (Medium, Low, High, Urgent), Severity (Ranges from 1 to 5), Status, Bug ID, Attachment, Test Case Failed (Test case that is failed for the Bug)

What is Bug Life Cycle? Bug Life Cycle is nothing but the various phases a Bug undergoes after it is raised or reported. New or Opened Assigned Fixed Tested Closed

What is Error guessing and Error seeding ? Error Guessing is a test case design technique where the tester has to guess what faults might occur and to design the tests to represent them. Error Seeding is the process of adding known faults intentionally in a program for the reason of monitoring the rate of detection & removal and also to estimate the number of faults remaining in the program. What is the difference between Bug, Error and Defect? Error : It is the Deviation from actual and the expected value. Bug : It is found in the development environment before the product is shipped to the respective customer. Defect : It is found in the product itself after it is shipped to the respective customer. What are SDLC and STLC ? Explain its different phases. SDLC Requirement phase Designing phase (HLD, DLD (Program spec)) Coding Testing Release Maintenance STLC System Study Test planning Writing Test case or scripts Review the test case Executing test case Bug tracking

Report the defect What is Ad-hoc testing? Ad hoc testing is concern with the Application Testing without following any rules or test cases. For Ad hoc testing one should have strong knowledge about the Application.

Vous aimerez peut-être aussi