se unit iv 2marks

Upload: praveen-raj

Post on 07-Apr-2018

218 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/6/2019 SE Unit IV 2marks

    1/7

    IT 2251 SOFTWARE ENGINEERING AND QUALITY ASSURANCE

    UNIT IV TESTING

    Two marks

    1. Define testing.Testing is a process of executing a program with the intent of finding of an error.

    2. When the test case said to be good?

    A good test case is one that has a high probability of finding an as yet

    undiscovered error.

    3. What are the steps of testing?

    Software is tested from two different perspectives.

    i) Internal program logic is exercised using white-box test case design

    techniques.

    ii) Software requirements are exercised using Black-box test casedesign techniques.

    2. Define Component and System testing.

    Component testing:

    In Component testing individual components are tested. It is the responsibility of

    component developer to carry out this kind of testing. These tests are derivedform developers experience.

    System testing:

    In System testing the testing of group of components integrated to create a systemor sub-system is done. It is theresponsibility of an independent testing team to

    carry out this kind of testing. These tests are based on a system specification.(Or) What are the two levels of testing?

    a. Component testing

    Individual components are tested. Tests are derived fromdevelopers experience.

    b. System Testing

    The groups of components are integrated to create a system

    or sub-system is done. These tests are based on the systemspecification.

    5.Define software testing?Software testing is a critical element of software quality assurance and

    represents the ultimate review of specification, design, and coding.

    6. What are the objectives of testing?

    c. Testing is a process of executing a program with the intend of finding an

    error.

  • 8/6/2019 SE Unit IV 2marks

    2/7

    d. A good test case is one that has high probability of finding an undiscovered

    error.

    e. A successful test is one that uncovers as an-yet undiscovered error.

    7.What are the testing principles the software engineer must apply while

    performing the software testing?i. All tests should be traceable to customer requirements.

    ii. Tests should be planned long before testing begins.

    iii. The pareto principle can be applied to software testing-80% of allerrors uncovered during testing will likely be traceable to 20% of

    all program modules.

    iv. Testing should begin in the small and progress toward testing in

    the large.v. Exhaustive testing is not possible.

    vi. To be most effective, an independent third party should conduct

    testing.

    8. What are the various testing activities?

    a. Test planningb. Test case design

    c. Test execution

    d. Data collection

    e. Effective evaluation

    9. Write short note on black box testing.

    The black box testing is also called as behavioral testing. This methodfully focus on the functional requirements of the software. Tests are derived that

    fully exercise all functional requirements.

    10. What is equivalence partitioning?

    Equivalence partitioning is a black box technique that divides the input

    domain into classes of data. From this data test cases can be derived. Equivalenceclass represents a set of valid or invalid states for input conditions.

    11. What is a boundary value analysis?

    A boundary value analysis is a testing technique in which the elements atthe edge of the domain are selected and tested. It is a test case design technique

    that complements equivalence partitioning technique. Here instead of focusing on

    input conditions only, the test cases are derived from the output domain.

    12. What are the reasons behind to perform white box testing?

    There are three main reasons behind performing the white box testing.i. Programmers may have some incorrect assumptions while designing

    or implementing some functions. Due to this there are chances of having

    logical errors in the program. To detect and correct such logical errors

    procedural details need to be examined.

  • 8/6/2019 SE Unit IV 2marks

    3/7

    ii. Certain assumptions on flow of control and data may lead programmer

    to make design errors. To uncover the errors on logical path, white box

    testing is must.iii. There may be certain typographical errors that remain undetected even

    after syntax and type checking mechanisms. Such errors can be

    uncovered during white box testing.

    13. What is cyclomatic complexity?

    Cyclomatic complexity is software metric that gives the quantitativemeasure of logical complexity of the program.

    The Cyclomatic complexity defines the number of independent paths in

    the basis set of the program that provides the upper bound for the number of tests

    that must be conducted to ensure that all the statements have been executed atleast once.

    14. How to compute the cyclomatic complexity?

    The cyclomatic complexity can be computed by any one of the followingways.

    1. The numbers of regions of the flow graph correspond tothe cyclomatic complexity.

    2. Cyclomatic complexity, V(G),for the flow graph, G, is

    defined as:

    V(G)=E-N+2,E -- number of flow graph edges,

    N -- number of flow graph nodes

    3. V(G)=P+1Where P is the number of predicate nodes contained in the

    flow graph.

    15. Distinguish between verification and validation.

    Verification refers to the set of activities that ensure that software

    correctly implements a specific function.

    Validation refers to a different set of activities that ensure that the

    software that has been built is traceable to the customer requirements.

    According to Boehm,

    Verification: Are we building the product right?

    Validation: Are we building the right product?

    16. What are the various testing strategies for conventional software?a. Unit testing

    b. Integration testing.

    c. Validation testing.d. System testing.

    17. Write about drivers and stubs.

    Drivers and stub software need to be developed to test incompatible software.

  • 8/6/2019 SE Unit IV 2marks

    4/7

    The driver is a program that accepts the test data and prints the

    relevant results.

    The stub is a subprogram that uses the module interfaces andperforms the minimal data manipulation if required.

    18. What are the approaches of integration testing?The integration testing can be carried out using two approaches.

    i. The non-incremental testing.

    ii. Incremental testing.

    19. What are the advantages and disadvantages of big-bang?

    Advantages:

    This approach is simple.

    Disadvantages:

    It is hard to debug.

    It is not easy to isolate errors while testing.

    In this approach it is not easy to validate test results. After performing testing, it is impossible to form an integrated system.

    20. What are the benefits of smoke testing?

    Integration risk is minimized.

    The quality of the end-product is improved.

    Error diagnosis and correction are simplified.

    Assessment of program is easy.

    21. What are the conditions exists after performing validation testing?

    After performing the validation testing there exists two conditions.

    The function or performance characteristics are according to thespecifications and are accepted.

    The requirement specifications are derived and the deficiency list

    is created. The deficiencies then can be resolved by establishingthe proper communication with the customer.

    22. Distinguish between alpha and beta testing.

    Alpha and beta testing are the types of acceptance testing.

    Alpha test: The alpha testing is attesting in which the version of

    complete software is tested by the customer under the supervision

    of developer. This testing is performed at developers site. Beta test: The beta testing is a testing in which the version of the

    software is tested by the customer without the developer being

    present. This testing is performed at customers site.

    23. What are the various types of system testing?

    1. Recovery testing is intended to check the systems ability to recoverfrom failures.

  • 8/6/2019 SE Unit IV 2marks

    5/7

    2. Security testing verifies that system protection mechanism prevent

    improper penetration or data alteration.

    3. Stress testing Determines breakpoint of a system to establishmaximum service level.

    4. Performance testing evaluates the run time performance of the

    software, especially real-time software.

    24. Define debugging.

    Debugging is defined as the process of removal of defect. It occurs as aconsequence of successful testing.

    25. What are the common approaches in debugging?

    Brute force method: The memory dumps and run-time tracks

    are examined and program with write statements is loaded to

    obtain clues to error causes.

    Back tracking method: The source code is examined by

    looking backwards from symptom to potential causes of errors. Cause elimination method: This method uses binary

    partitioning to reduce the number of locations where errors canexists.

    26. Define Structural testing?

    Structural testing is also called Black Box testing. This process of testing

    will test the internal structure and logics of the entities. This testing is

    supplemented by Unit testing.

    27. Define Regression Testing?

    Regression testing is another form of stress testing. This testing can alsobe done after the software has been deployed. Its mainly done for bug detectionand error reporting.

    28. What is a test Checklist?

    This checklist contains the questionnaire for conducting the tests. Each

    and every problem associated with the instance will be considered in the

    checklist.

    29. What are the inclusions in the audit input?

    They are purpose and scope of the audit, audit criteria, software elements

    and processes to be audited, background information.

    30. What are the types of testing?

    Unit, Integration, System Testing, Qualification and Acceptance.

    31. What is Testability?

    The ability to perform an accepted series of tests on the system or product.

  • 8/6/2019 SE Unit IV 2marks

    6/7

    32. What are the Structural testing methods?

    a. Feasibility review

    b. Requirements reviewc. Execution testing

    d. Recovery testing

    e. Operations testingf. Security testing

    33. What are the Function testing methods?

    Unit testing

    Integrated testing

    System testing

    User acceptance testing

    Regression testing

    Error handling tests

    Manual support testing

    Inter system testing

    34.What are the general conditions to look for while developing test data?There are two conditions like tests of normally occurring transactions and

    tests using invalid data.

    34. What are the inclusions of a test data?

    They are test factors, functions, platform and units.

  • 8/6/2019 SE Unit IV 2marks

    7/7

    PART B

    1. What is black box testing? Is it necessary to perform this? Explain various test

    activities.

    2. Explain the integration testing process and system testing processes and discusson their outcomes.

    3. Explain the verification and validation techniques. How are they related to

    software reliability? Discuss.Explain the concepts of Independence Test Group (ITG) in software testing.

    Explain the testing procedures for boundary conditions.

    Describe unit testing and integration testing. How test plans are generated?

    Suggest software testing sequence for a 100% bug free software. Explain.8. Explain automated software testing tools. How test cases are generated? Discuss

    when to stop testing. What is performance testing?

    9. Explain in detail about the importance of cyclomatic complexity in testing.

    Explain a method for estimating the same.10. What do you mean by boundary value analysis? Give two examples of

    boundary value testing?11. What are the various testing strategies to software testing? Discuss them briefly.

    12. What are the different structural testing methods? Explain.

    13. Discuss the difference between black testing models and white box testing

    models. Discuss how these testing models may be used together to test aprogram module.

    14. i) who should perform validation test the software developer or the software

    user? Justify your answer.ii) Explain software testing principles in detail.

    15. Explain the glass box testing strategy in detail.16. Explain briefly basic principles that guide software testing.

    17. Explain software testing strategies in detain.

    18. Explain White box testing in detail.19. Explain about unit testing and integration testing.

    20. Write short notes on debugging.