Sunday, January 3, 2021

Manual Testing Interview Questions.

 

 Manual Testing Interview Questions.

 

 QA Software Testing Interview Questions for Beginners and Experienced Candidates:

 

Q 1) What is the Process for Creating a Test Script?

 Answer: 

Step 1: is to get a thorough understanding of the AUT:

This could be by reading the requirement documents thoroughly.

We can try to understand any point of reference that we have – a previous version of the application or wire-frames or screenshots

Step 2: After understanding the requirements, we make a list of what are the areas in this application that will have to be tested. In other words, we identify the test requirements. The focus in this step is to identify “What” to test. The outcome of this step is a list of Test Scenarios.

Step 3: Once we have the test scenarios, we concentrate next on “How” to test them.  This phase involves writing detailed steps about how to test a particular feature, what data to enter and what is the expected result.

Once these 3 steps are done, we are ready for testing.

 

Q 2) what are the fields in a Bug Report?

Answer:  Following important fields should be included in a good Bug Report:

 A unique ID

Defect Description: a short describing what the bug is.

Steps to Reproduce: details about how to arrive at the error, exact test data, the time at which defect was found(if applicable) environment: any information that will help re-encounter the issue

Module/section of the application (if applicable)

Severity

Screenshot

Q 3) How to test a customer-facing software?

Answer: With any application that we test, we are trying to see if a certain set of requirements are met by the application or not. But when it comes to a user-facing site, apart from concentrating on functionality, we also have to look into a few usability features, maybe performance and security aspects also to a certain extent.

The first level of testing is: Does the site satisfy its functional requirements.

The next level of testing is: how easy is it to use the site, do the options make a logical sense and meet the expectations of the user or not.

For Example, if the user has to be pass 3-4 screens to submit the basic information they are going to be annoyed, so such issues have to be addressed.

Performance Testing to the complete extent might not be in scope but simple situations like, how long does the search results take to be displayed and how much time does it take for the system to retrieve a customer info at the peak hour – these are some example of the kind of things we would want to keep an eye on.

Security – for sites where there is a secure login to access the site, the minimum functionality around it has to be tested. For Example, if I leave the site idle for more than 10 minutes, is it auto logging out or not. Something as basic as that should be focused on.

Q 4) How to overcome the challenge of not having input documentation for testing?

Answer: IF the detailed standard documentation like BRD and FSD are unavailable, the tester will have to depend on some point of reference.

A previous version of the application

Another factor that helps immensely, is to talk to the developers or the business analysts (when available) to get a confirmation on our understanding or clarifications in case of doubts.

When none of these situations works, we can just conceptualize the application based on our previous IT application experience and create the basic set of test scripts. When the testing phase comes up, we can set up a portion of test cycle time and do some test case management (make the already created scripts perfect) so we have the doc for the next phases.

 Q 5) What are the Roles and Responsibilities of an onsite coordinator?

Answer: The onsite coordinator is a point of contact for the offshore team and to the client for any information regarding the testing.

KT from and to offshore and clients

Getting the environment to test all ready

Sanity testing, smoke testing

Testing – the key functionality.

Bug review – found by the offshore team

Bug assigning to the respective dev

Presenting metrics

Providing sign off

Yes, even an onsite coordinator has to test.

 Q 6) Inconsistent bugs- Why onsite can find it, but offshore can’t and vice versa – How to handle this situation?

Answer: Every bug has to be noted and analyzed – whether it is encountered at onsite or offshore, whether repeatable or not. A real value-add to a tester’s job is when we involve ourselves in the Root Cause Analysis process for a bug rather than simply reporting it.

All the onsite and offshore team members should follow a guideline that screenshots had to be taken for every error that we encounter – repeatable or not.

If there are logs, system files or anything like that, that might help us find any evidence of the issue- we should try to find it.

Despite all these steps, if we still can’t tell why and when the problem occurs- we should report it to the developer all the same – with as much information as we can.

 Q 7) Video/audio related testing – What does this include?

Answer: How to test an application having video or audio?

Here are the important points to consider:

Access levels (restricted or not – password controlled)

Different kinds of environments

Browser compatibility

Screen resolutions

Internet connection speeds

The specific options on a video – like play, stop, mute, etc.

Video by size

Response to the videos – comments (limitations on the comment length and number of comments it can take)

Video responses to the videos

Interface with social networking sites – Interoperability

Buffering speed

Embedding the video

 Q 8) Mobile Application Testing – What does it include briefly?

Answer: Mobile App Testing Important Test Scenarios:

Usability of the features on a mobile screen.

Testing it on different mobile platforms – like Android and iOS.

Installations, uninstalling, launching the app with network and without a network, testing functionality.

Network connections –WiFi, 2G, etc.

Logs at iOS iPhone configuration utility for Android Monitor.bat can be used for debugging.

 

 


Wednesday, December 30, 2020

Selenium Important Notes

 

1) What is Selenium and what is composed of?

Selenium is a suite of tools for automated web testing.  It is composed of

• Selenium IDE (Integrated Development Environment) :  It is a tool for recording and playing back.  It is a firefox plugin

• WebDriver and RC:  It provide the APIs for a variety of languages like Java, .NET, PHP, etc. With most of the browsers Webdriver and RC works.

• Grid: With the help of Grid you can distribute tests on multiple machines so that test can be run parallel which helps in cutting down the time required for running in browser test suites.

 

2) What is Selenium 2.0 ?

Web testing tools Selenium RC and Web Driver are consolidated in single tool in Selenium 2.0

3) Mention what is Selenium 3.0?

Selenium 3.0 is the latest version of Selenium. It has released 2 beta versions of selenium 3.0 with few of the below changes:

4) How will you find an element using Selenium?

In Selenium every object or control in a web page is referred as an elements, there are different ways to find an element in a web page they are

•             ID

•             Name

•             Tag

•             Attribute

•             CSS

•             Linktext

•             PartialLink Text

•             Xpath etc

5) List out the test types that are supported by Selenium?

For web based application testing selenium can be used

The test types can be supported are

a) Functional, Learn More about Functional Testing.

b) Regression

For post release validation with continuous integration automation tool could be used

a) Jenkins

b) Hudson

c) Quick Build

d) CruiseCont

6) Explain what is assertion in Selenium and what are the types of assertion?

Assertion is used as a  verification point. It verifies that the state of the application conforms to what is expected.  The types of assertion are “assert” , “verify” and “waitFor”.

7) Mention what is the use of X-path?

X-Path is used to find the WebElement in web pages. It is also useful in identifying the dynamic elements.

Refer Complete Guide on XPath

8) Explain the difference between single and double slash in X-path?

Single slash ‘/ ’

•             Single slash ( / ) start selection from the document node

•             It allows you to create ‘absolute’ path expressions

Double Slash ‘// ’

•             Double slash ( // ) start selection matching anywhere in the document

•             It enables to create ‘relative’ path expressions

9) List out the technical challenges with Selenium?

Technical challenges with Selenium are

•             Selenium supports only web based applications

•             It does not support the Bitmap comparison

•             For any reporting related capabilities have to depend on third party tools

•             No vendor support for tool compared to commercial tools like HP UFT

•             As there is no object repository concept in Selenium, maintainability of objects becomes difficult

10) What is the difference between type keys and type commands ?

TypeKeys() will trigger JavaScript event in most of the cases whereas .type() won’t. Type key populates the value attribute using JavaScript whereas .typekeys() emulates like actual user typing

11) What is the difference between verify and assert commands?

Assert:  Assert allows to check whether an element is on the page or not. The test will stop on the step failed, if the asserted element is not available. In other words, the test will terminate at the point where check fails.

Verify: Verify command will check whether the element is on the page, if it is not then the test will carry on executing.  In verification, all the commands are going to run guaranteed even if any of test fails.

12) What is JUnit Annotations and what are different types of annotations which are useful ?

In JAVA a special form of syntactic meta-data can be added to Java source code, this is know as Annotations.  Variables, parameters, packages, methods and classes are annotated some of the Junit annotations which can be useful are

•             Test

•             Before

•             After

•             Ignore

•             Before Class

•             After Class

•             Run With

13) While using click command can you use screen coordinate?

To click on specific part of element, you would need to use clickAT command.  ClickAt command accepts element locator and x, y co-ordinates as arguments- clickAt (locator, cordString)

14)  What are the advantages of Selenium?

•             It supports C#, PHP, Java, Perl, Phython

•             It supports different OS like Windows, Linux and Mac OS

•             It has got powerful methods to locate elements (Xpath, DOM , CSS)

•             It has highly developer community supported by Google

15) Why testers should opt for Selenium and not QTP?

Selenium is more popular than QTP as

•             Selenium is an open source whereas QTP is a commercial tool

•             Selenium is used specially for testing web based applications while QTP can be used for testing client server application also

•             Selenium supports Firefox, IE, Opera, Safari  on operating systems like Windows, Mac, Linux etc. however QTP is limited to Internet Explorer on Windows.

•             Selenium supports many programming languages like Ruby, Perl, Python whereas QTP supports only VB script

16) What are the four parameter you have to pass in Selenium?

Four parameters that you have to pass in Selenium are

•             Host

•             Port Number

•             Browser

•             URL

17) What is the difference between setSpeed() and sleep() methods?

Both will delay the speed of execution.

Thread.sleep () :  It will stop the current (java) thread for the specified period of time.  Its done only once

•             It takes a single argument in integer format

Ex: thread.sleep(2000)- It will wait for 2 seconds

•             It waits only once at the command given at sleep

SetSpeed () :  For specific amount of time it will stop the execution for every selenium command.

•             It takes a single argument in integer format

Ex: selenium.setSpeed(“2000”)- It will wait for 2 seconds

•             Runs each command  after setSpeed delay by the number of milliseconds mentioned in set Speed

This command is useful for  demonstration purpose or if you are using a slow web application

18) What is same origin policy? How you can avoid same origin policy?

The “Same Origin Policy” is introduced for security reason, and it ensures that content of your site will never be accessible by a script from another site.  As per the policy, any code loaded within the browser can only operate within that website’s domain.

To avoid “Same Origin Policy” proxy injection method is used, in proxy injection mode the Selenium Server acts as a client configured HTTP proxy , which sits between the browser and application under test and then masks the AUT under a fictional URL

19) What is heightened privileges browsers?

The purpose of heightened privileges is similar to Proxy Injection, allows websites to do something that are not commonly permitted.  The key difference is that the browsers are launced in a special mode called heightened privileges.  By using these browser mode, Selenium core can open the AUT directly and also read/write its content without passing the whole AUT through the Selenium RC server.

20) How you can use “submit” a form using Selenium ?

You can use “submit” method on element to submit form-

element.submit () ;

Alternatively you can use click method on the element which does form submission

21) What are the features of TestNG and list some of the functionality in TestNG which makes it more effective?

TestNG is a testing framework based on JUnit and NUnit to simplify a broad range of testing needs, from Unit Testing to Integration Testing. And the functionality which makes it efficient testing framework are

•             Support for annotations

•             Support for data-driven testing

•             Flexible test configuration

•             Ability to re-execute failed test cases

 


Tuesday, September 16, 2014

Unix Introduction

UNIX is a computer Operating System which is capable of handling activities from multiple users at the same time.UNIX commands can often be grouped together to make even more powerful commands.

Parts of Unix Operating System:

The UNIX operating system comprises three parts: The kernel, the standard utility programs, and the system configuration files.

kernel:

The kernel is the core of the UNIX operating system. Basically, the kernel is a large program that is loaded into memory when the machine is turned on, and it controls the allocation of hardware resources from that point forward.

Standard utility programs

These programs include simple utilities like cp, which copies files, and complex utilities, like the shell that allows you to issue commands to the operating system.

System configuration files:

The system configuration files are read by the kernel, and some of the standard utilities.

Types of UNIX:

There are many different versions of UNIX.
Sun Solaris
GNU/Linux
MacOS X

An UNIX Terminal window will then appear with a % prompt, waiting for you to start entering commands.


UNIX was originally developed at Bell Laboratories as a private research project by a small group of people. Read all about the history of its creation.

we shall use the following typographical conventions:

Characters written in bold typewriter font are commands to be typed into the computer as they stand.
Characters written in italic typewriter font indicate non-specific file or directory names.
Words inserted within square brackets [Ctrl] indicate keys to be pressed.

Don't forget to press the [Enter] key: commands are not sent to the computer until this is done.

The UNIX operating system is made up of three parts; the kernel, the shell and the programs.

The kernel

The kernel of UNIX is the hub of the operating system: it allocates time and memory to programs and handles the filestore and communications in response to system calls.

As an illustration of the way that the shell and the kernel work together, suppose a user types rm myfile (which has the effect of removing the file myfile). The shell searches the filestore for the file containing the program rm, and then requests the kernel, through system calls, to execute the program rm on myfile. When the process rm myfile has finished running, the shell then returns the UNIX prompt % to the user, indicating that it is waiting for further commands.

The shell

The shell acts as an interface between the user and the kernel. When a user logs in, the login program checks the username and password, and then starts another program called the shell. The shell is a command line interpreter (CLI). It interprets the commands the user types in and arranges for them to be carried out. The commands are themselves programs: when they terminate, the shell gives the user another prompt (% on our systems).

Filename Completion - By typing part of the name of a command, filename or directory and pressing the [Tab] key, the tcsh shell will complete the rest of the name automatically. If the shell finds more than one name beginning with those letters you have typed, it will beep, prompting you to type a few more letters before pressing the tab key again.
History - The shell keeps a list of the commands you have typed in. If you need to repeat a command, use the cursor keys to scroll up and down the list or type history for a list of previous commands.


Listing files and directories

ls (list)
When you first login, your current working directory is your home directory.
% ls (short for list)
The ls command lists the contents of your current working directory.
ls does not, in fact, cause all the files in your home directory to be listed, but only those ones whose name does not begin with a dot (.) Files beginning with a dot (.) are known as hidden files and usually contain important program configuration information. They are hidden because you should not change them unless you are very familiar with UNIX!!!
To list all files in your home directory including those whose names begin with a dot, type
% ls -a

mkdir (make directory)

We will now make a subdirectory in your home directory to hold the files you will be creating and using in the course of this tutorial. To make a subdirectory called unixstuff in your current working directory type
% mkdir unixstuff
To see the directory you have just created, type
% ls

Changing to a different directory

cd (change directory)
The command cd directory means change the current working directory to 'directory'. The current working directory may be thought of as the directory you are in, i.e. your current position in the file-system tree.
To change to the directory you have just made, type
% cd unixstuff
Type ls to see the contents (which should be empty)

In UNIX, (.) means the current directory, so typing
% cd .
NOTE: there is a space between cd and the dot
means stay where you are (the unixstuff directory).
This may not seem very useful at first, but using (.) as the name of the current directory will save a lot of typing, as we shall see later in the tutorial.

(..) means the parent of the current directory, so typing
% cd ..
Pathnames
pwd (print working directory)
Pathnames enable you to work out where you are in relation to the whole file-system. For example, to find out the absolute pathname of your home-directory, type cd to get back to your home-directory and then type % pwd

Thursday, May 1, 2014

Testing Interview Questions and Answers

Q. What is Agile Testing and how is it different to traditional waterfall or the V model?

Agile Testing is testing practice that follows the principles of agile software development. Agile testing involves all members of an agile team with special skills and expertise to ensure business value is delivered at frequent intervals.
The big difference is that in Agile environment, testing is not a phase, it is an activity parallel to development.
In agile environment, small features of software are delivered frequently, so testing activity should be parallel to development activity. Testing time is short as we are only testing small features.
In the waterfall model, there is a testing phase at the end of the development so, testing is a big effort done after the whole application is developed. Testing time is long as we have to test the whole application.
Q: What is your approach when requirements change continuously?
This question can be asked if you are interviewed for an agile QA position where requirements are likely to change frequently during development. Although a complete change in requirement is possible, most of the time, it is the technical details that are subject to change. e.g. the intent of the requirement or behaviour of the feature is the same but implementation details can change
A: Some possible answers can be:
  • Write generic test plans and test cases which focus on the intent of the requirement rather than its exact details
  • Work very closely with the product owners or business analysts to understand the scope of change so testing can be updated
  • Make sure the team understands the risks involved in changing requirements especially towards the end of sprint
  • If you’re going to automate this feature, it is best to wait until the feature is stable and requirements are finalized
  • Negotiate to see if the changes can be kept to a minimum and/or implement the changes in next sprint.

Can you explain defect age and defect spoilage?

Defect age is also called a phase age or phage. One of the most important things to remember in testing is that the later we find a defect the more it costs to fix it. Defect age and defect spoilage metrics work with the same fundamental, i.e., how late you found the defect. So the first thing we need to define is what is the scale of the defect age according to phases. For instance, the following table defines the scale according to phases. So, for instance, requirement defects, if found in the design phase, have a scale of 1, and the same defect, if propagated until the production phase.
Once the scale is decided now we can find the defect spoilage. Defect spoilage is defects from the previous phase multiplied by the scale. For instance, in the following figure we have found 8 defects in the design phase from which 4 defects are propagated from the requirement phase. So we multiply the 4 defects with the scale defined in the previous table, so we get the value of 4. In the same fashion we calculate for all the phases. That's the spoilage.


Can you explain how the number of production defects is measured?

This is one of the most effective measures. The number of defects found in a production is recorded. The only issue with this measure is it can have latent and masked defects which can give us the wrong value regarding software quality.

Can you explain DRE?

DRE (Defect Removal Efficiency) is a powerful metric used to measure test effectiveness. From this metric we come to know how many bugs we found from the set of bugs which we could have found. The following is the formula for calculating DRE. We need two inputs for calculating this metric: the number of bugs found during development and the number of defects detected at the end user but the success of DRE depends on several factors. The following are some of them:
  • Severity and distribution of bugs must be taken into account.
  • Second, how do we confirm when the customer has found all the bugs. This is normally achieved by looking at the history of the customer.

Saturday, April 5, 2014

Testing Interview Questions

1. What is functional system testing ?
Testing the end to end functionality of the system as a whole.
2. What is the benefits of Independent Testing
Independent testers see other and different defects and are unbiased.  
3. In a REACTIVE approach to testing when would you expect the bulk of the test design work to be begun?
After the software or system has been produced.
4. What are the different Methodologies in Agile Development Model?
There are currently seven different Agile methodologies that I am aware of:
  1.  Extreme Programming (XP)
  2.  Scrum
  3.  Lean Software Development
  4.  Feature-Driven Development
  5.  Agile Unified Process
  6.  Crystal
  7.  Dynamic Systems Development Model (DSDM) 
5. Which activity in the fundamental test process includes evaluation of the testability of the requirements and system?
A Test analysis and design.
6. What is typically the MOST important reason to use risk to drive testing efforts?
  Because testing everything is not feasible.  
7. Which is the MOST important advantage of independence in testing?
An independent tester may be more effective at finding defects missed by the person who wrote the software.  
8. Which of the following are valid objectives for incident reports?
i. Provide developers and other parties with feedback about the problem to enable identification, isolation and correction as necessary.
ii. Provide ideas for test process improvement.
iii. Provide a vehicle for assessing tester competence.
iv. Provide testers with a means of tracking the quality of the system under test.
i. Provide developers and other parties with feedback about the problem to enable identification, isolation and correction as necessary,
ii.Provide ideas for test process improvement,
iv.Provide testers with a means of tracking the quality of the system under test
9. Consider the following techniques. Which are static and which are dynamic techniques?
i. Equivalence Partitioning.
ii. Use Case Testing.
iii.Data Flow Analysis.
iv.Exploratory Testing.
v. Decision Testing.
vi. Inspections.
Data Flow Analysis and Inspections are static, Equivalence Partitioning, Use Case Testing, Exploratory Testing and Decision Testing are dynamic.
10. Why are static testing and dynamic testing described as complementary?
Because they share the aim of identifying defects but differ in the types of defect they find.  
11. What are the phases of a formal review ?
In contrast to informal reviews, formal reviews follow a formal process. A typical formal review process consists of six main steps:
  1.  Planning
  2.  Kick-off
  3.  Preparation
  4.  Review meeting
  5.  Rework
  6.  Follow-up.  
12. What is the role of moderator in review process?
The moderator (or review leader) leads the review process. He or she deter-mines, in co-operation with the author, the type of review, approach and the composition of the review team. The moderator performs the entry check and the follow-up on the rework, in order to control the quality of the input and output of the review process. The moderator also schedules the meeting, disseminates documents before the meeting, coaches other team members, paces the meeting, leads possible discussions and stores the data that is collected.
13. What is an equivalence partition (also known as an equivalence class)?
An input or output range of values such that only one value in the range becomes a test case.  
14. When should configuration management procedures be implemented?
During test planning.
15. A Type of functional Testing, which investigates the functions relating to detection of threats, such as virus from malicious outsiders.
Security Testing  
16. Testing where in we subject the target of the test , to varying workloads to measure and evaluate the performance behaviors and ability of the target and of the test to continue to function properly under these different workloads. Load Testing
17. Testing activity which is performed to expose defects in the interfaces and in the interaction between integrated components is:
Integration Level Testing  
18. What are the Structure-based (white-box) testing techniques ?
Structure-based testing techniques (which are also dynamic rather than static) use the internal structure of the software to derive test cases. They are com-monly called 'white-box' or 'glass-box' techniques (implying you can see into the system) since they require knowledge of how the software is implemented, that is, how it works. For example, a structural technique may be concerned with exercising loops in the software. Different test cases may
19. What is the KEY difference between preventative and reactive approaches to testing? 
Preventative tests are designed early; reactive tests are designed after the software has been produced.
20. What is the purpose of exit criteria? 
To define when a test level is complete.
21. What determines the level of risk? 
  The likelihood of an adverse event and the impact of the event
22. What is the MAIN objective when reviewing a software deliverable?
To identify defects in any software work product.
23. Which of the following defines the expected results of a test? Test case specification or test design specification.
Test case specification.
24. Which is a benefit of test independence?
It avoids author bias in defining effective tests.  
25. As part of which test process do you determine the exit criteria?
Test planning.  
26. Rapid Application Development ?
Rapid Application Development (RAD) is formally a parallel development of functions and subsequent integration. Components/functions are developed in parallel as if they were mini projects, the developments are time-boxed, delivered, and then assembled into a working prototype. This can very quickly give the customer something to see and use and to provide feedback regarding the delivery and their requirements. Rapid change and development of the product is possible using this methodology. However the product specification will need to be developed for the product at some point, and the project will need to be placed under more formal controls prior to going into production.
27. What is the difference between Testing Techniques and Testing Tools?
Testing technique: - Is a process for ensuring that some aspects of the application system or unit functions properly there may be few techniques but many tools.
Testing Tools: - Is a vehicle for performing a test process. The tool is a resource to the tester, but itself is insufficient to conduct testing . 
28. We use the output of the requirement analysis, the requirement specification as the input for writing ...
User Acceptance Test Cases  
29. Repeated Testing of an already tested program, after modification, to discover any defects introduced or uncovered as a result of the changes in the software being tested or in another related or unrelated software component:
Regression Testing
30. What is component testing ?
Component testing, also known as unit, module and program testing, searches for defects in, and verifies the functioning of software (e.g. modules, programs, objects, classes, etc.) that are separately testable. Component testing may be done in isolation from the rest of the system depend-ing on the context of the development life cycle and the system. Most often stubs and drivers are used to replace the missing software and simulate the interface between the software components in a simple manner. A stub is called from the software component to be tested; a driver calls a component to be tested.
31. When should be performed Regression testing ?
After the software has changed or when the environment has changed
32. When should testing be stopped?
It depends on the risks for the system being tested
33. What is the purpose of a test completion criterion?
To determine when to stop testing  
34. What can static analysis NOT find?
For example memory leaks  
35. What is the difference between re-testing and regression testing?
Re-testing ensures the original fault has been removed; regression testing looks for unexpected sideeffects  
36. What are the Experience-based testing techniques ?
In experience-based techniques, people's knowledge, skills and background are a prime contributor to the test conditions and test cases. The experience of both technical and business people is important, as they bring different perspectives to the test analysis and design process. Due to previous experience with similar systems, they may have insights into what could go wrong, which is very useful for testing.  
37."How much testing is enough?"
The answer depends on the risk for your industry, contract and special requirements. 51. When should testing be stopped? It depends on the risks for the system being tested.  
38. What is the difference between re-testing and regression testing?
  Re-testing ensures the original fault has been removed; regression testing looks for unexpected side-effects.  
39. Why we use decision tables?.
The techniques of equivalence partitioning and boundary value analysis are often applied to specific situations or inputs. However, if different combinations of inputs result in different actions being taken, this can be more difficult to show using equivalence partitioning and boundary value analysis, which tend to be more focused on the user interface. The other two specification-based tech-niques, decision tables and state transition testing are more focused on business logic or business rules. A decision table is a good way to deal with combinations of things (e.g. inputs). This technique is sometimes also referred to as a 'cause-effect' table. The reason for this is that there is an associated logic diagramming technique called 'cause-effect graphing' which was sometimes used to help derive the decision table
40. Faults found should be originally documented by who?
By testers.  
41. Why does the boundary value analysis provide good test cases?
Because errors are frequently made during programming of the different cases near the 'edges' of the range of values.  
42. What makes an inspection different from other review types?
It is led by a trained leader, uses formal entry and exit criteria and checklists.
43. Why can be tester dependent on configuration management?
Because configuration management assures that we know the exact version of the testware and the test object.
44. What is a V-Model ?
A software development model that illustrates how testing activities integrate with software development phases
45. What is maintenance testing?
Triggered by modifications, migration or retirement of existing software  
46. What is test coverage?
Test coverage measures in some specific way the amount of testing performed by a set of tests (derived in some other way, e.g. using specification-based techniques). Wherever we can count things and can tell whether or not each of those things has been tested by some test, then we can measure coverage.  
47. What is Alpha testing?
Pre-release testing by end user representatives at the developer's site.
48. What is a failure?

Failure is a departure from specified behaviour.