Interview Questions and Answers, Frequently Asked Questions (FAQs) and Useful Articles

Home  >> Interview Questions and Answers  >> Testing  >> Software Quality Assurance (QA) Interview Questions and Answers

Interview Questions & Answers

Software Quality Assurance (QA) Interview Questions and Answers

This page contains the collection of Software Quality Assurance (QA) Interview Questions and Answers / Frequently Asked Questions (FAQs) under category Testing. These questions are collected from various resources like informative websites, forums, blogs, discussion boards including MSDN and Wikipedia. These listed questions can surely help in preparing for Software Quality Assurance (QA) interview or job.

<< Previous Page 1 Page 2 Page 3 Page 4 Page 5 Next >>

What is Test case generator?
A software tool that accepts as input source code, test criteria, specifications, or data structure definitions; uses these inputs to generate test input data; and, sometimes, determines expected results.

What is Scenario-based Testing?
This form of testing concentrates on what the user does. It basically involves capturing the user actions and then simulating them and similar actions during the test. These tests tend to find interaction type of errors

What is Test design?
Documentation specifying the details of the test approach for a software feature or combination of software features and identifying the associated tests.

Explain Test driver?
A software module used to invoke a module under test and, often, provide test inputs, control and monitor execution, and report test results.

What is Test item?
A software item which is the object of testing.

What is Test phase?
The period of time in the software life cycle in which the components of a software product are evaluated and integrated, and the software product is evaluated to determine whether or not requirements have been satisfied.

Explain Test Procedure?
The formal or informal procedure that will be followed to execute a test. This is usually a written document that allows others to execute the test with a minimum of training.

What is Test Development?
The development of anything required to conduct testing. This may include test requirements (objectives), strategies, processes, plans, software, procedures, cases, documentation, etc.

Explain Test Harness?
A software tool that enables the testing of software components that links test capabilities to perform specific tests, accept program inputs, simulate missing components, compare actual outputs with expected outputs to determine correctness, and report discrepancies.

What is Benchmark?
A Benchmark is a standard to measure against. If you benchmark an application, all future application changes will be tested and compared against the benchmarked application.

What is Test result analyzer?
A software tool used to test output data reduction, formatting, and printing.

Test engineer?
We, test engineers are engineers who specialize in testing. We, test engineers, create test cases, procedures, scripts and generate data. We execute test procedures and scripts, analyze standards of measurements, evaluate results of system/integration/regression testing.
We also...
* Speed up the work of your development staff;
* Reduce your organization's risk of legal liability;
* Give you the evidence that your software is correct and operates properly;
* Improve your problem tracking and reporting;
* Maximize the value of your software;
* Maximize the value of the devices that use it;
* Assure the successful launch of your product by discovering bugs and design flaws, before users get discouraged, before shareholders loose their cool and before employees get bogged down;
* Help the work of your development staff, so the development team can devote its time to build up your product;
* Promote continual improvement;
* Provide documentation required by FDA, FAA, other regulatory agencies and your customers;
* Save money by discovering defects 'early' in the design process, before failures occur in production, or in the field;
* Save the reputation of your company by discovering bugs and design flaws; before bugs and design flaws damage the reputation of your company.

What is Test/QA Team Lead?
The Test/QA Team Lead coordinates the testing activity, communicates testing status to management and manages the test team.

What is A System Administrator?
Test Build Managers, System Administrators, Database Administrators deliver current software versions to the test environment, install the application's software and apply software patches, to both the application and the operating system, set-up, maintain and back up test environment hardware.
Depending on the project, one person may wear more than one hat. For instance, a Test Engineer may also wear the hat of a System Administrator.

What is A Technical Analyst?
Technical Analysts perform test assessments and validate system/functional test requirements. Depending on the project, one person may wear more than one hat. For instance, Test Engineers may also wear the hat of a Technical Analyst.

Explain the Requirements?
Requirement specifications are important and one of the most reliable methods of insuring problems in a complex software project is to have poorly documented requirement 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", which is too subjective. A testable requirement would be something such as, "the product shall allow the user to enter their previously-assigned password to access the application". Care should be taken to involve all of a project's significant customers in the requirements process. Customers could be in-house or external and could include end-users, customer acceptance test engineers, testers, customer contract officers, customer management, future software maintenance engineers, salespeople and anyone who could later derail the project. If his/her expectations aren't met, they should be included as a customer, if possible. In some organizations, requirements may end up in high-level project plans, functional specification documents, design documents, or other documents at various levels of detail. No matter what they are called, some type of documentation with detailed requirements will be needed by test engineers 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.

What is Software configuration management?
Software Configuration Management (SCM) is the control and the recording of changes that are made to the software and documentation throughout the software development life cycle (SDLC).
SCM covers the tools and processes used to control, coordinate and track code, requirements, documentation, problems, change requests, designs, tools, compilers, libraries, patches, and changes made to them, and to keep track of who makes the changes.

What is Up time?
"Up time" is the time period when a system is operational and in service. Up time is the sum of busy time and idle time. For example, if, out of 168 hours, a system has been busy for 50 hours, idle for 110 hours, and down for 8 hours, then the busy time is 50 hours, idle time is 110 hours, and up time is (110 + 50 =) 160 hours.

What is Upward compression?
In software design, "upward compression" means a form of demodularization in which a subordinate module is copied into the body of a superior module.

What is A user manual?
A "user manual" is a document that presents information necessary to employ software or a system to obtain the desired results. Typically, what is described are system and component capabilities, limitations, options, permitted inputs, expected outputs, error messages, and special instructions.

What is A user friendly document?
A document is user friendly, when it is designed and written with ease of use, as one of the primary objectives of its design.

Explain Interface?
A shared boundary. An interface might be a hardware component to link two devices, or it might be a portion of storage or registers accessed by two or more computer programs.

What is A user interface?
"User interface" is the interface between a human user and a computer system. It enables the passage of information between a human user and hardware or software components of a computer system.

What is Utilization?
"Utilization" is the ratio of time a system is busy (i.e. working for us), divided by the time it is available. For example, if a system was available for 160 hours and busy for 40 hours, then utilization was (40/160 =) 25 per cent. Utilization is a useful measure in evaluating computer performance.

Explain A variable?
"Variables" are data items in a program whose values can change. There are local and global variables. One example is a variable we have named "capacitor_voltage_10000", where "capacitor_voltage_10000" can be any whole number between -10000 and +10000.

What is A software version?
A software version is an initial release (or re-release) of a software associated with a complete compilation (or recompilation) of the software.

What is VDD - version description document?
"VDD" is an acronym that stands for "version description document".

What is A vertical microinstruction?
A vertical microinstruction is a microinstruction that specifies one of a sequence of operations needed to carry out a machine language instruction. Vertical microinstructions are short, 12 to 24 bit instructions. They're called vertical because they are normally listed vertically on a page. These 12 to 24 bit microinstructions instructions are required to carry out a single machine language instruction. In addition to vertical microinstructions, there are horizontal and diagonal microinstructions as well.

Explain virtual memory?
Virtual memory relates to virtual storage. In virtual storage, portions of a user's program and data are placed in auxiliary storage, and the operating system automatically swaps them in and out of main storage as needed.

What is Waterfall model?
Waterfall is a model of the software development process in which the concept phase, requirements phase, design phase, implementation phase, test phase, installation phase, and checkout phase are performed in that order, probably with overlap, but with little or no iteration.

Explain Exit criteria?
The "exit criteria" is a checklist, sometimes known as the "PDR sign-off sheet". It is a list of peer design review related tasks that have to be done by the facilitator or attendees of the PDR, either during or near the conclusion of the PDR.
By having a checklist, and by going through the checklist, the facilitator can verify that A) all attendees have inspected all the relevant documents and reports, B) all suggestions and recommendations for each issue have been recorded, and C) all relevant facts of the meeting have been recorded.
The facilitator's checklist includes the following questions:
* Have we inspected all the relevant documents, code blocks, or products?
* Have we completed all the required checklists?
* Have I recorded all the facts relevant to this peer review?
* Does anyone have any additional suggestions, recommendations, or comments?
* What is the outcome of this peer review?
As the end of the PDR, the facilitator asks the attendees to make a decision as to the outcome of the PDR, i.e. "What is our consensus... are we accepting the design (or document or code)?" Or, "Are we accepting it with minor modifications?" Or, "Are we accepting it after it has been modified and approved through e-mails to the attendees?" Or, "Do we want another peer review?" This is a phase, during which the attendees work as a committee, and the committee's decision is final.

What is Data validity?
Data validity is the correctness and reasonablenesss of data. Reasonableness of data means that, for example, account numbers falling within a range, numeric data being all digits, dates having a valid month, day and year, and spelling of proper names. Data validity errors are probably the most common, and most difficult to detect (data-related) errors.
What causes data validity errors? Data validity errors are usually caused by incorrect data entries, when a large volume of data is entered in a short period of time. For example, a data entry operator enters 12/25/2010 as 13/25/2010, by mistake, and this data is therefore invalid. How can you reduce data validity errors? You can use one of the following two, simple field validation techniques.
Technique 1: If the date field in a database uses the MM/DD/YYYY format, then you can use a program with the following two data validation rules: "MM" should not exceed "12", and "DD" should not exceed "31".
Technique 2: If the original figures do not seem to match the ones in the database, then you can use a program to validate data fields. You can compare the sum of the numbers in the database data field to the original sum of numbers from the source. If there is a difference between the two figures, it is an indication of an error in at least one data element.

What is Parameter?
In software QA or software testing, a parameter is an item of information - such as a name, number, or selected option - that is passed to a program, by a user or another program. By definition, in software, a parameter is a value on which something else depends. Any desired numerical value may be given as a parameter. In software development, we use parameters when we want to allow a specified range of variables. We use parameters when we want to differentiate behavior or pass input data to computer programs or their subprograms. Thus, when we are testing, the parameters of the test can be varied to produce different results, because parameters do affect the operation of the program receiving them.
Example 1: We use a parameter, such as temperature, that defines a system. In this definition, it is temperature that defines the system and determines its behavior.
Example 2: In the definition of function f(x) = x + 10, x is a parameter. In this definition, x defines the f(x) function and determines its behavior. Thus, when we are testing, x can be varied to make f(x) produce different values, because the value of x does affect the value of f(x).
When parameters are passed to a function subroutine, they are called arguments.

What is Walk-through?
A walk-through is an informal meeting for evaluation or informational purposes.

What is Intrusive Testing?
Testing that collects timing and processing information during program execution that may change the behavior of the software from its behavior in a real environment. Usually involves additional code embedded in the software being tested or additional processes running concurrently with software being tested on the same platform.

What is Random Testing?
This is one of methods used to exercise a class. It is based on developing a random test sequence that tries the minimum number of operations typical to the behavior of the class.

What is Control Structure Testing?
Because basis path testing alone is insufficient, other techniques should be utilized.
Condition testing can be utilized to design test cases which examine the logical conditions in a program. It focuses on all conditions in the program and includes testing of both relational expressions and arithmetic expressions.
This can be accomplished using branch testing and/or domain testing methods. Branch testing executes both true and false branches of a condition. Domain testing utilizes values on the left-hand side of the relation by making them greater than, equal to and less then the right-hand side value. This method test both values and the relation operators in the expression. Data flow testing method is effective for error protection because it is based on the relationship between statements in the program according to the definition and uses of variables.
Loop testing method concentrates on validity of the loop structures.

What is Non-intrusive Testing?
Testing that is transparent to the software under test; i.e., testing that does not change the timing or processing characteristics of the software under test from its behavior in a real environment. Usually involves additional hardware that collects timing or processing information and processes that information on another platform.

Explain Metric?
A measure of the extent or degree to which a product possesses and exhibits a certain quality, property, or attribute.

What is Path Analysis?
Program analysis performed to identify all possible paths through a program, to detect incomplete paths, or to discover portions of the program that are not on any path.

What is Peer Reviews?
A methodical examination of software work products by the producer’s peers to identify defects and areas where changes are needed.

What is Problem?
Any deviation from defined standards. Same as defect.

What is Procedure?
The step-by-step method followed to ensure that standards are met.

Explain Process?
The work effort that produces a product. This includes efforts of people and equipment guided by policies, standards, and procedures.

What is Syntax?
1) The relationship among characters or groups of characters independent of their meanings or the manner of their interpretation and use;
2) the structure of expressions in a language; and
3) the rules governing the structure of the language.

What is IEEE - Institute of Electrical and Electronics Engineers?
IEEE = 'Institute of Electrical and Electronics Engineers' - among other things, creates standards such as 'IEEE Standard for Software Test Documentation' (IEEE/ANSI Standard 829), 'IEEE Standard of Software Unit Testing (IEEE/ANSI Standard 1008), 'IEEE Standard for Software Quality Assurance Plans' (IEEE/ANSI Standard 730), and others.

What is SEI - Software Engineering Institute?
SEI = 'Software Engineering Institute' at Carnegie-Mellon University; initiated by the U.S. Defense Department to help improve software development processes.

Explain Walk-through?
A walk-through (in software QA) is an informal meeting for evaluation or informational purposes. A walk-through is also a process at an abstract level. It's the process of inspecting software code by following paths through the code (as determined by input conditions and choices made along the way).
The purpose of code walk-throughs (in software development) is to ensure the code fits the purpose. Walk-throughs also offer opportunities to assess an individual's or team's competency.
A walk-through is also a static analysis technique in which a programmer leads participants through a segment of documentation or code, and the participants ask questions, and make comments about possible errors, violations of development standards, and other issues.

What is Validation and verification testing?
Used as an entity to define a procedure of review, analysis, and testing throughout the software life cycle to discover errors, determine functionality, and ensure the production of quality software.

What is software verification?
In general the demonstration of consistency, completeness, and correctness of the software at each stage and between each stage of the development life cycle.

<< Previous Page 1 Page 2 Page 3 Page 4 Page 5 Next >>