• +91 9971497814
  • info@interviewmaterial.com

Testing Interview Questions Answers

Question 1 : What makes a good Software QA engineer?

Answer 1 : The same qualities a good tester has are useful for a QA engineer. Additionally, they must be able to understand the entire software development process and how it can fit into the business approach and goals of the organization. Communication skills and the ability to understand various sides of issues are important. In organizations in the early stages of implementing QA processes, patience and diplomacy are especially needed. An ability to find problems as well as to see 'what's missing' is important for inspections and reviews.

Question 2 : What's the role of documentation in QA?

Answer 2 : Critical. (Note that documentation can be electronic, not necessarily paper.) QA practices should be documented such that they are repeatable. Specifications, designs, business rules, inspection reports, configurations, code changes, test plans, test cases, bug reports, user manuals, etc. should all be documented. There should ideally be a system for easily finding and obtaining documents and determining what documentation will have a particular piece of information. Change management for documentation should be used if possible.

Question 3 : What is 'configuration management'?

Answer 3 : Configuration management covers the processes used to control, coordinate, and track: code, requirements, documentation, problems, change requests, designs, tools/compilers/libraries/patches, changes made to them, and who makes the changes. (See the 'Tools' section for web resources with listings of configuration management tools. Also see the Bookstore section's 'Configuration Management' category for useful books with more information.)

Question 4 : What's a 'test case'?

Answer 4 : • A test case is a document that describes an input, action, or event and an expected response, to determine if a feature of an application is working correctly. A test case should contain particulars such as test case identifier, test case name, objective, test conditions/setup, input data requirements, steps, and expected results. • Note that the process of developing test cases can help find problems in the requirements or design of an application, since it requires completely thinking through the operation of the application. For this reason, it's useful to prepare test cases early in the development cycle if possible.

Question 5 : What makes a good QA or Test manager?

Answer 5 : A good QA, test, or QA/Test(combined) manager should: • be familiar with the software development process • be able to maintain enthusiasm of their team and promote a positive atmosphere, despite • what is a somewhat 'negative' process (e.g., looking for or preventing problems) • be able to promote teamwork to increase productivity • be able to promote cooperation between software, test, and QA engineers • have the diplomatic skills needed to promote improvements in QA processes • have the ability to withstand pressures and say 'no' to other managers when quality is insufficient or QA processes are not being adhered to • have people judgement skills for hiring and keeping skilled personnel • be able to communicate with technical and non-technical people, engineers, managers, and customers. • be able to run meetings and keep them focused

Question 6 : What's the big deal about 'requirements'?

Answer 6 : One of the most reliable methods of insuring problems, or failure, in a complex software project is to have poorly documented requirements specifications. Requirements are the details describing an application's externally-perceived functionality and properties. Requirements should be clear, complete, reasonably detailed, cohesive, attainable, and testable. A non-testable requirement would be, for example, 'user-friendly' (too subjective). A testable requirement would be something like 'the user must enter their previously-assigned password to access the application'. Determining and organizing requirements details in a useful and efficient way can be a difficult effort; different methods are available depending on the particular project. Many books are available that describe various approaches to this task. (See the Bookstore section's 'Software Requirements Engineering' category for books on Software Requirements.) Care should be taken to involve ALL of a project's significant 'customers' in the requirements process. 'Customers' could be in-house personnel or out, and could include end-users, customer acceptance testers, customer contract officers, customer management, future software maintenance engineers, salespeople, etc. Anyone who could later derail the project if their expectations aren't met should be included if possible. Organizations vary considerably in their handling of requirements specifications. Ideally, the requirements are spelled out in a document with statements such as 'The product shall.....'. 'Design' specifications should not be confused with 'requirements'; design specifications should be traceable back to the requirements. In some organizations requirements may end up in high level project plans, functional specification documents, in design documents, or in other documents at various levels of detail. No matter what they are called, some type of documentation with detailed requirements will be needed by testers in order to properly plan and execute tests. Without such documentation, there will be no clear-cut way to determine if a software application is performing correctly. 'Agile' methods such as XP use methods requiring close interaction and cooperation between programmers and customers/end-users to iteratively develop requirements. The programmer uses 'Test first' development to first create automated unit testing code, which essentially embodies the requirements. <

Question 7 : What steps are needed to develop and run software tests?

Answer 7 : The following are some of the steps to consider: • Obtain requirements, functional design, and internal design specifications and other necessary documents • Obtain budget and schedule requirements • Determine project-related personnel and their responsibilities, reporting requirements, required standards and processes (such as release processes, change processes, etc.) • Identify application's higher-risk aspects, set priorities, and determine scope and limitations of tests • Determine test approaches and methods - unit, integration, functional, system, load, usability tests, etc. • Determine test environment requirements (hardware, software, communications, etc.) • Determine testware requirements (record/playback tools, coverage analyzers, test tracking, problem/bug tracking, etc.) • Determine test input data requirements • Identify tasks, those responsible for tasks, and labor requirements • Set schedule estimates, timelines, milestones • Determine input equivalence classes, boundary value analyses, error classes • Prepare test plan document and have needed reviews/approvals • Write test cases • Have needed reviews/inspections/approvals of test cases • Prepare test environment and testware, obtain needed user manuals/reference documents/configuration guides/installation guides, set up test tracking processes, set up logging and archiving processes, set up or obtain test input data • Obtain and install software releases • Perform tests • Evaluate and report results • Track problems/bugs and fixes • Retest as needed • Maintain and update test plans, test cases, test environment, and testware through life cycle

Question 8 : What can be done if requirements are changing continuously?

Answer 8 : A common problem and a major headache. • Work with the project's stakeholders early on to understand how requirements might change so that alternate test plans and strategies can be worked out in advance, if possible. • It's helpful if the application's initial design allows for some adaptability so that later changes do not require redoing the application from scratch. • If the code is well-commented and well-documented this makes changes easier for the developers. • Use rapid prototyping whenever possible to help customers feel sure of their requirements and minimize changes. • The project's initial schedule should allow for some extra time commensurate with the possibility of changes. • Try to move new requirements to a 'Phase 2' version of an application, while using the original requirements for the 'Phase 1' version. • Negotiate to allow only easily-implemented new requirements into the project, while moving more difficult new requirements into future versions of the application. • Be sure that customers and management understand the scheduling impacts, inherent risks, and costs of significant requirements changes. Then let management or the customers (not the developers or testers) decide if the changes are warranted - after all, that's their job. • Balance the effort put into setting up automated testing with the expected effort required to re-do them to deal with changes. • Try to design some flexibility into automated test scripts. • Focus initial automated testing on application aspects that are most likely to remain unchanged. • Devote appropriate effort to risk analysis of changes to minimize regression testing needs. • Design some flexibility into test cases (this is not easily done; the best bet might be to minimize the detail in the test cases, or set up only higher-level generic-type test plans) • Focus less on detailed test plans and test cases and more on ad hoc testing (with an understanding of the added risk that this entails).

Question 9 : What is verification? validation?

Answer 9 : Verification typically involves reviews and meetings to evaluate documents, plans, code, requirements, and specifications. This can be done with checklists, issues lists, walkthroughs, and inspection meetings. Validation typically involves actual testing and takes place after verifications are completed. The term 'IV & V' refers to Independent Verification and Validation.

Question 10 : What is a 'walkthrough'?

Answer 10 : A 'walkthrough' is an informal meeting for evaluation or informational purposes. Little or no preparation is usually required.

Testing Contributors

krishan

Share your email for latest updates

Name:
Email:

Our partners