[ISTQB] 1.4 Fundamental test process (K1)

LO-1.4.1 - Recall the five fundamental test activities and respective tasks from planning to closure (K1)

1. Planning and control: 
Defining test strategy and policies are fundamental for establishing a clear roadmap and set of rules which could be shared with the stakeholders. This is crucial for ensuring effective testing in a timely fashion. 

In the book, they mention 6 key points for identifying required planning and control activities:
  • determine scope, risks and test objectives: the goal is to make sure that each requirement is covered by a test plan.
  • determine test approach in term of test procedures, test techniques, teams, environment and data involved: this ensures to clearly identify what's required (feasibility) from coming testing activities.
  • implement test policy/strategy previously determined.
  • determine test resources (environment, people) needed so they can be planned/allocated.
  • schedule all test activities: plan, design, implementation, execution, evaluation.
  • determine the exit criteria which could be test coverage (% expected), number of test executed... It's a useful step which has to be agreed with stakeholders because it determines the end of testing and therefore software/product release.
Regarding controlling test activities, the objective is ensure that what was previously planned is well implemented and communicated. This includes the following actions:
  • measure and analyse the results:  how much test has been executed, how much defects have been found classified by their severity... 
  • monitor and document progress, because stakeholders, project managers and the testing team want to be aware of what has been performed so far, what has been identified and what's left to verify. 
  • initiate corrective actions as a test strategy can be tailored or refined during progress.
  • make decisions regarding stopping or restarting testing activities or simply confirming GO for release.

2. Test analysis and design
This is in relation with understanding software requirements and defining test objectives and in order to allow that, we will:
  • review test basis and understand clearly the software specifications and deliverable.
  • identify test conditions, so list every feature, transaction, function, quality attribute or other structural element that could be verified by one or more test cases.
  • evaluate testability of requirements:  specify expected results and make sure requirements can be verified.
  • design test environment: identify any tool or infrastructure required for testing the software/product. 

3. Test implementation and execution: 
All high-level design performed has now to be built in test cases and manual or automated test procedures. So before execution, following preparation tasks are required:
  • develop and prioritize our test cases by describing step by step instructions needed to perform the test.
  • create test suites or a logical collection of common test cases to execute for ensuring that test scheduling is well managed and the feature/transaction clearly end-to-end tested.
  • implement and verify the environment to make sure that it's ready and will not introduce errors or block us in test execution.
Then, during execution :
  • ensure that test suites and individual test cases are run in the planned sequenced with the right tools and environment.
  • log the outcome of each test execution and record software/product identities and version tested, data used, tools and environment involved. This is very important and contributes to make sure that configuration items are well managed. 
  • compare actual results to expected results and provide additional information and details on how the defect occurs, ensuring reproductibility.
  • retest after the defect has been fixed and automatically perform regression test. 

4. Evaluating exit criteria and reporting: 
For each test level, exit criteria has to be defined beforehand and a reporting has to be provided to inform stakeholders for recording official decision taken:
  • checks test logs against exit criteria in test planning and identify what's remain to test or to fix.
  • assess if more tests are needed and if initial exit criteria has to be reset and agreed again with stakeholders.
  • write a summary report as a test deliverable on which clear decision could be documented. 

5. Test closure activities
Ending testing includes various and sequential closing activities that would led to lesson learning. Therefore, we have to:
  • check which planned acceptance or rejection deliverable has been delivered, defects resolved or differed in a future release.
  • finalise and archive testware for an eventual reuse (script, data, tools, environment).

No comments:

Post a Comment

Wikipedia

Search results