Testing


1. What is the MAIN benefit of designing tests early in the life cycle?

It helps prevent defects from being introduced into the code.

2. What is risk-based testing?

Risk-based testing is the term used for an approach to creating a test strategy that is based on prioritizing tests by risk. The basis of the approach is a detailed risk analysis and prioritizing of risks by risk level. Tests to address each risk are then specified, starting with the highest risk first.

3. A wholesaler sells printer cartridges. The minimum order quantity is 5. There is a 20% discount for orders of 100 or more printer cartridges. You have been asked to prepare test cases using various values for the number of printer cartridges ordered. Which of the following groups contain three test inputs that would be generated using Boundary Value Analysis?

4, 5, 99


4. 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 produce

5. What is the purpose of exit criteria?

To define when a test level is complete.

6. What determines the level of risk?

The likelihood of an adverse event and the impact of the event

7. When is used Decision table testing?

Decision table testing is used for testing systems for which the specification takes the form of rules or cause-effect combinations. In a decision table the inputs are listed in a column, with the outputs in the same column but below the inputs. The remainder of the table explores combinations of inputs to define the outputs produced.

Learn More About Decision Table Testing Technique in the Video Tutorial here



8. What is the MAIN objective when reviewing a software deliverable?

To identify defects in any software work product.

9. Which of the following defines the expected results of a test? Test case specification or test design specification.

Test case specification.

10. Which is a benefit of test independence?

It avoids author bias in defining effective tests.

11. As part of which test process do you determine the exit criteria?

Test planning.

12. What is beta testing?

Testing performed by potential customers at their own locations.

13. Given the following fragment of code, how many tests are required for 100% decision coverage?

if width > length

then biggest_dimension = width

if height > width

then biggest_dimension = height

end_if

else biggest_dimension = length

if height > length

then biggest_dimension = height

end_if

end_if

4

14. You have designed test cases to provide 100% statement and 100% decision coverage for the following fragment of code. if width > length then biggest_dimension = width else biggest_dimension = length end_if The following has been added to the bottom of the code fragment above. print "Biggest dimension is " & biggest_dimension print "Width: " & width print "Length: " & length How many more test cases are required?

None, existing test cases can be used.

15. 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.

16. 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

Learn More About Testing Tools here

17. We use the output of the requirement analysis, the requirement specification as the input for writing …

User Acceptance Test Cases

18. 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

19. 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.

20. What is functional system testing ?

Testing the end to end functionality of the system as a whole.

21. What is the benefits of Independent Testing

Independent testers see other and different defects and are unbiased.

22. 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.

23. 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)

24. Which activity in the fundamental test process includes evaluation of the testability of the requirements and system?

A Test analysis and design.

25. What is typically the MOST important reason to use risk to drive testing efforts?

Because testing everything is not feasible.

26. 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.

27. 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

28. 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.

29. Why are static testing and dynamic testing described as complementary?

Because they share the aim of identifying defects but differ in the types ofdefect they find.

30. 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.

31. 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.

Learn More About Review process in Video Tutorial here

32. 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.

33. When should configuration management procedures be implemented?

During test planning.

34. A Type of functional Testing, which investigates the functions relating to detection of threats, such as virus from malicious outsiders.

Security Testing

35. 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

36. Testing activity which is performed to expose defects in the interfaces and in the interaction between integrated components is:

Integration Level Testing

37. 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 be derived to exercise the loop once, twice, and many times. This may be done regardless of the func-tionality of the software.

38. When should be performed Regression testing ?

After the software has changed or when the environment has changed

39. When should testing be stopped?

It depends on the risks for the system being tested

40. What is the purpose of a test completion criterion?

To determine when to stop testing

41. What can static analysis NOT find?

For example memory leaks

42. 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

43. 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.

44. What type of review requires formal entry and exit criteria, including metrics? Inspection

45. Could reviews or inspections be considered part of testing?

Yes, because both help detect faults and improve quality

46. An input field takes the year of birth between 1900 and 2004 What are the boundary values for testing this field ? 1899,1900,2004,2005

47. Which of the following tools would be involved in the automation of regression test? a. Data tester b. Boundary tester c. Capture/Playback d. Output comparator.

d. Output comparator

48. To test a function,what has to write a programmer, which calls the function to be tested and passes it test data.

Driver

49. What is the one Key reason why developers have difficulty testing their own work?

Lack of Objectivity

50.“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.

52. Which of the following is the main purpose of the integration strategy for integration testing in the small?

To specify which modules to combine when, and how many at once.

53. What is the purpose of a test completion criterion?

To determine when to stop testing

54. Given the following code, which statement is true about the minimum number of test cases required for full statement and branch coverage?

Read p

Read q

IF p+q> 100

THEN Print "Large"

ENDIF

IF p > 50

THEN Print "p Large"

ENDIF

1 test for statement coverage, 2 for branch coverage

55. 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.

56. Which review is normally used to evaluate a product to determine its suitability for intended use and to identify discrepancies?

Technical Review.

57. 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

58. Faults found should be originally documented by who?

By testers.

59. Which is the current formal world-wide recognized documentation standard?

There isn’t one.

60. Which of the following is the review participant who has created the item to be reviewed?

Author

61. A number of critical bugs are fixed in software. All the bugs are in one module, related to reports. The test manager decides to do regression testing only on the reports module.

Regression testing should be done on other modules as well because fixing one module may affect other modules.

62. 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.

63. What makes an inspection different from other review types?

It is led by a trained leader, uses formal entry and exit criteria and checklists.

64. 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.

65. What is a V-Model ?

A software development model that illustrates how testing activities integrate with software development phases

66. What is maintenance testing?

Triggered by modifications, migration or retirement of existing software

67. 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.

68. Why is incremental integration preferred over “big bang”integration?

Because incremental integration has better early defects screening and isolation ability

69. When do we prepare RTM (Requirement traceability matrix), is it before test case designing or after test case designing?

The would be before. Requirements should already be traceable from Review activities since you should have traceability in the Test Plan already. This question also would depend on the organisation. If the organisation do test after development started then requirements must be already traceable to their source. To make life simpler use a tool to manage requirements.

70. What is called the process starting with the terminal modules ?

Bottom-up integration

71. During which test activity could faults be found most cost effectively?

During test planning

72. The purpose of requirement phase is

To freeze requirements, to understand user needs, to define the scope of testing

73. How much testing is enough?

The answer depends on the risks for your industry, contract and special requirements

74. Why we split testing into distinct stages?

Each test stage has a different purpose.

75. Which of the following is likely to benefit most from the use of test tools providing test capture and replay facilities? a) Regression testing b) Integration testing c) System testing d) User acceptance testing

Regression testing

76. How would you estimate the amount of re-testing likely to be required?

Metrics from previous similar projects and discussions with the development team

77. What studies data flow analysis ?

The use of data on paths through the code.

78. What is Alpha testing?

Pre-release testing by end user representatives at the developer’s site.

79. What is a failure?

Failure is a departure from specified behaviour.

80. What are Test comparators ?

Is it really a test if you put some inputs into some software, but never look to see whether the software produces the correct result? The essence of testing is to check whether the software produces the correct result, and to do that, we must compare what the software produces to what it should produce. A test comparator helps to automate aspects of that comparison.

81. Who is responsible for document all the issues, problems and open point that were identified during the review meeting Scribe

82. What is the main purpose of Informal review

Inexpensive way to get some benefit

83. What is the purpose of test design technique?

Identifying test conditions and Identifying test cases

84. When testing a grade calculation system, a tester determines that all scores from 90 to 100 will yield a grade of A, but scores below 90 will not. This analysis is known as:

Equivalence partitioning

85. A test manager wants to use the resources available for the automated testing of a web application. The best choice is Tester, test automater, web specialist, DBA

86. During the testing of a module tester ‘X’ finds a bug and assigned it to developer. But developer rejects the same, saying that it’s not a bug. What ‘X’ should do?

Send to the detailed information of the bug encountered and check the reproducibility

87. A type of integration testing in which software elements, hardware elements, or both are combined all at once into a component or an overall system, rather than in stages.

Big-Bang Testing

88. In practice, which Life Cycle model may have more, fewer or different levels of development and testing, depending on the project and the software product. For example, there may be component integration testing after component testing, and system integration testing after system testing.

V-Model

89. Which technique can be used to achieve input and output coverage? It can be applied to human input, input via interfaces to a system, or interface parameters in integration testing.

Equivalence partitioning

90. “This life cycle model is basically driven by schedule and budget risks” This statement is best suited for…

V-Model

91. In which order should tests be run?

The most important tests first

92. The later in the development life cycle a fault is discovered, the more expensive it is to fix. why?

The fault has been built into more documentation,code,tests, etc

93. What is Coverage measurement?

It is a partial measure of test thoroughness.

94. What is Boundary value testing?

Test boundary conditions on, below and above the edges of input and output equivalence classes.

95. What is Fault Masking ?

Error condition hiding another error condition.

96. What does COTS represent?

Commercial Off The Shelf.

97.The purpose of wich is allow specific tests to be carried out on a system or network that resembles as closely as possible the environment where the item under test will be used upon release?

Test Environment

98. What can be though of as being based on the project plan, but with greater amounts of detail?

Phase Test Plan

99. What is exploratory testing?

Exploratory testing is a hands-on approach in which testers are involved in minimum planning and maximum test execution. The planning involves the cre-ation of a test charter, a short declaration of the scope of a short (1 to 2 hour) time-boxed test effort, the objectives and possible approaches to be used. The test design and test execution activities are performed in parallel typi-cally without formally documenting the test conditions, test cases or test scripts. This does not mean that other, more formal testing techniques will not be used. For example, the tester may decide to use boundary value analysis but will think through and test the most important boundary values without necessarily writing them down. Some notes will be written during the exploratory-testing session, so that a report can be produced afterwards.

100. What is failure?

Deviation from expected result to actual result

1. While at the stages of QA, QC and other testing phases what are the main documents that are referred?

The Quality related testing and testing phase in general requires each and every aspect of the project from customer specifications to developer designs. So the documents that are used can be summed up as:

ñ SRS & Business requirements doc.

ñ Functional/Technical documentation that was initially prepared.

ñ Documents pertaining to the various modules – used for White Box testing.

ñ Use case & other representative documents for program flow.

ñ Test plan and other test case/script related documents.

2. How should the test plan be drafted?

The test plan and its specification depends on the methodology adopted for development and testing of the project. But speaking on a top most level, the test plan should consist of all the different types of tests that have to be carried out to give the best assessment of the product. The compliance, production phase tests, regression test methods/scripts requirement, usability test, verification and validation criteria related tests should all be put into the test plan that is prepared.

3. What kinds of bugs usually occur and are identified in initial tests?

The major bugs that come up during the tests are the memory related issues in the software and these come up in the initial load testing or regression testing. There may be a minute error somewhere in the product which can lead to a very intensive impact on the overall application. These are the bugs that can also be easily identified and rectified. Tests should be carefully drafted to identify such memory related errors.

4. What is the purpose of software testing?

The software testing is the phase that gives us the overall picture as to the quality of the product and the performance related aspects of the program. The software testing phase is the one by which the developers can make sure that what is built is conforming to the customer’s requirement (verification) and that everything is working as expected and intended to (validation).

5. What are the pros and cons of being a Tester?

The software testing can be done only if you have a overall understanding regarding the project. This way software tester gains immense knowledge regarding the software, from the customer and the user perspective, which even the developer may not have in some cases. The cons are overcome by the pros of the job, so I think it is good thing to be involved in the software testing. Opportunities for learning and improvement are many in this field of software testing.

6. How can you define Quality Assurance?

The Quality Assurance refers to the phase of the project development where we examine the product and put into a sequence of various tests to determine if the product is fit for the specified purpose. The QA aims at attaining a specific quality level to the overall product. This cannot assure it but can maximize the quality attainable in the product by doing the right corrections to the final developed product.

7. How can you demarcate the QA line against the general testing?

The QA refers to the testing process that is aimed at giving the right perspective of the product from the high level of perspective, thereby determining the quality of the product from the eyes of the customer and the user. The Software testing is a more generic term used to refer any type of test that we do over a product to detect any type of error in the software. Thus the quality assurance can be seen as a specialized version of software testing, which again can be considered a part of software testing domain.

8. How can effectively scope out or organize a test project and execute it?

The test project has to be executed in a sequence that narrows it to the very specific reason for which it is run. The identification of the goal that pertains to each test project can help us in doing this. The test project can then be planned in modules or just into a single large batch execution which can identify the specific bug or error in the product that is under discussion. The organization of the test project can happen only if there is a right understanding in every team member as to what his responsibility in the test is.

9. How can a role of QA be utilized efficiently in a development project

The QA has to be effective and efficient in avoiding the bugs in the project. The test plan to detect conformance variation, deviation of the functionality has to be dictated and run by the QA periodically over the product at various stages of development. He has to make sure the project is heading in the right direction at various points of development.

10. What is the ideal character that you expect from a manager?

The manager has to have the right mix of technical knowledge and the management skills. This can help him in understanding the use of the tests. The QA, QC and testing can be of great value to the project and the manager should be one who provides as much importance to testing stages as is given for development.

11. How can you define quality in a software product?

The quality refers to the conformance to the customer requirements in the most efficient way possible. The conformance should not be implicating some other side effect in some other perspective of the project. It should just be FIT to be used effectively.

12. How is validation different from verification?

Simply put, the validation is the process of determining if the things are done the right way and the verification is the process of determining is the right things are done as per specification.

13. What are the things that are to be present in a good test process?

A good a valid test process should contain various aspects of testing and attributes that are configurable from the tester. The effect of each of the test cases should be clearly shown by the test process with a clear outlook given to the results as to which test conforms to which case of testing. The understanding of the results should be clearly brought out. These when done can give a good test process. If you are going to better it, then the test process can also specify the possible causes of the error that has occurred.

14. When can FMEA be of help to developers?

The Failure Mode and Effect Analysis is most effective when we are dealing with software products that have similarity to the previously developed applications. The experience of the developers/team other members in similar products can come in handy. The similarity of usage specifics and the structure of the design when identified implies we can have the FMEA oriented testing.

15. What is SDLC?

The Software Development Life Cycle refers to the overall development cycle of the software from the eyes of the System Analyst. The various stages of the development right from the requirements gathering to the final delivery after testing are included in the SDLC. The SDLC can further be defined as specific methodology that is incorporated as the way to proceed in the development of a specific software product.

16. What should a perfect requirement specification contain?

A good requirement should give a clear business logic requirement, technical requirement for the product and rightly correlate each of those. The process requirements from the client are auxiliary but can be of immense help in coordinating the activities of developments with the customer side testing.

17. How is management of Quality in a project different from management of total project?

QA management comes into picture at the times of testing, the main aim is to verify the project is heading the right way. The project manager on the other hand manages the entire work flow and development flow in the project life cycle. There are also other aspects of the project like customer side interactions, business logic definitions etc. The project manager is one who manages the work done and the QA manager is one who oversees the work done for quality maintenance throughout, whether work done is right.

18. Share some of your QA experiences.

I was involved in the testing of the product that was for a project that had to support at least 30 items in the input criteria. The quality was measured as the number supported by the system. The test script was developed to simulate 20 or more input items. The testing on the periodic basis helped the developers to go in the right track and develop the various aspects of the product without affecting the number of items supported.

19. How can you bring about quality changes in adverse environments?

The quality changes in environments which are very static and not adaptable have to be done very carefully. Sometimes the quality changes may require change from the base in adverse environments, so spending good amount of time in designing the right architecture depending on the environment right from the start is essential when we are not sure about the adaptive nature of the environment or user.

20. Is test automation a required thing at all?

The tests in many cases are not a single execution of the program and there are always many cases to be tested. The immense number can be overwhelmingly high to think of manual testing. So in such a case the automation of testing with test scripts is the right way and the only possible way to go, considering the value of resources and man hours. This can be considered the smart way of working and most often this proves to be effective and efficient.

21. How can we have a effective phase containment concept incorporated into the project development cycle?

The testing should be done in parallel along with development over the various stages of deliverable. This way the errors are not propagating across the various phases of the project. This phase containment mechanism can result in avoiding defects in the final product that is being created. The more methodical and frequent we have the testing and workable product across the timeline the more effective the phase containment will be.

22. What are the various testing mechanisms you have done in your experience?

The regression, load tests and the module wise testing was done by me in the previous project that I was involved in. The regression testing gave the exact errors that were found in the application along with the appropriate test cases that have failed. The load testing was more of a stability test over the application and was to prove the quality of the product in terms of performance and stability to the customer. Both of them were automated and run at various stages of development.

23. How will you start with a new project, assuming you are put into a new team that is embarking on a new development project?

The first week will be purely dedicated to gaining of knowledge relating to the various technologies, methodologies used in the project. After this will be the phase where I will involve myself in getting to know more about the project that is being developed. The use cases, purpose of the project will be the start point and the modularity and design architecture will be analyzed by me and peer reviews and interactions with the team regarding the phases of testing and development will get me into the project completely. After this the planning and execution of the test plan will help me ensure the project is going as expected from every aspect of view.

24. How will you go about developing a test plan for a project?

That more often depends on the methodology used. Say, for example if there is RPD based development the test plan will be more interactive with the development plan. The modularity of the project, in every methodology has to be brought out in the test plan, so that the testing can recognize the potential areas of integration related weaknesses. The test plan also should impose upon the team members appropriate responsibilities so that each have their own perspective of delivery clear when it comes to test cases.

25. How do you expect a Software testing environment to be?

A Software testing environment should be very adaptable and should be configurable to simulate any kind of situation for the product under test. The exhaustiveness of the testing is directly related to the configurable aspect of the environment.

26. Do you have any prior experience in writing test cases? How did you proceed writing them?

Yes, I do have experience in writing test cases for the testing purposes of the project. The test cases should have a clear input category and output category. The inputs should be pertaining to the test’s aim. The output should automatically be scanned for correctness for deciding the failure/success demarcation. The test case also conforms to specific requirement from the client side or atleast a part of it. To ensure the correctness and validity of the output, we should be having the right idea of the customer expectation. Once we have the sufficient knowledge in the above aspects, we can have the best test case with apt goal to satisfy from the customer’s standpoint.

I am sure that these above testing interview questions are useful for the testing job seekers. Please comment your valuable opinion so that we will improve our website as required.


1 comment:

  1. Wonderful blog about Software Testing Services in Chennai to read and further more tips on the Software Testing Services in India have been learnt. It's great time spending on this. I am waiting for new post here about Software Testing Companies in Bangalore and Please keep it up in future..

    Consult today to - Software Testing Services in Mumbai

    ReplyDelete