Software Testing Basics - Software Testing Interview Questions and Answers

  1. Which test cases are written first: white boxes or black boxes?
    Normally black box test cases are written first and white box test cases later. In order to write black box test cases we need the requirement document and, design or project plan. All these documents are easily available at the initial start of the project. White box test cases cannot be started in the initial phase of the project because they need more architecture clarity which is not available at the start of the project. So normally white box test cases are written after black box test cases are written.

    Black box test cases do not require system understanding but white box testing needs more structural understanding. And structural understanding is clearer i00n the later part of project, i.e., while executing or designing. For black box testing you need to only analyze from the functional perspective which is easily available from a simple requirement document.

    Software Testing Image
  2. Explain Unit Testing, Integration Tests, System Testing and Acceptance Testing?
    Unit testing - Testing performed on a single, stand-alone module or unit of code.

    Integration Tests - Testing performed on groups of modules to ensure that data and control are passed properly between modules.

    System testing - Testing a predetermined combination of tests that, when executed successfully meets requirements.

    Acceptance testing - Testing to ensure that the system meets the needs of the organization and the end user or customer (i.e., validates that the right system was built).
  3. What is a test log?
    The IEEE Std. 829-1998 defines a test log as a chronological record of relevant details about the execution of test cases. It's a detailed view of activity and events given in chronological manner.

    The following figure shows a test log and is followed by a sample test log.

    Software Testing Image
  4. Can you explain requirement traceability and its importance?
    In most organizations testing only starts after the execution/coding phase of the project. But if the organization wants to really benefit from testing, then testers should get involved right from the requirement phase.

    If the tester gets involved right from the requirement phase then requirement traceability is one of the important reports that can detail what kind of test coverage the test cases have.
  5. What does entry and exit criteria mean in a project?
    Entry and exit criteria are a must for the success of any project. If you do not know where to start and where to finish then your goals are not clear. By defining exit and entry criteria you define your boundaries.

    For instance, you can define entry criteria that the customer should provide the requirement document or acceptance plan. If this entry criteria is not met then you will not start the project. On the other end, you can also define exit criteria for your project. For instance, one of the common exit criteria in projects is that the customer has successfully executed the acceptance test plan.

    Software Testing Image
  6. What is the difference between verification and validation?
    Verification is a review without actually executing the process while validation is checking the product with actual execution. For instance, code review and syntax check is verification while actually running the product and checking the results is validation.