Questions and Answers for Software Testing Advanced Test Analyst – Edition July2020
Questions received since publication from either students or readers. These questions are shared for the benefit of everyone using the book,
Software Testing Advanced Test Analyst – Guide for ISTQB Exam, 2020 Release 2019 Syllabus. Available from Amazon ISBN 978-0953605620
Added 14 August 2020
Q1 The ISTQB Glossary states that a Tester is ‘a person who performs testing’. There is an entry for Test Manager but there is no entry for Test Analyst. The Syllabus states, ‘Test execution tasks listed may be conducted by either the tester or the Test Analyst’. What is the difference between a Tester and a Test Analyst?
A1 The definition of testing roles varies between different organizations and corporations. In addition to Tester and Test Analyst, further roles are Junior Tester, Junior Test Analyst, Senior Tester, Manual Test Analyst, Test Lead. Quality Assurance Tester etc. Your employer or, if applying for a job, the job advertisement should supply details of the role responsibilities. Typically, a Software Test Analyst has more experience, in-depth knowledge of testing and more responsibilities than a Tester. These responsibilities may include initially identifying and subsequently defining required tests, specifying the required test data, monitoring the test coverage and evaluating the overall quality, contributing to risk assessment and evaluating the outcome of the testing. The ISTQB Glossary includes an entry for test analysis with the ‘activity that identifies test conditions by analyzing the test basis’. The ISTQB Syllabus specifies the role of an Advanced Test Analyst with its ‘general instructional objectives describing the intention of the Advanced Level Test Analyst’. Those with ISTQB Advanced Test Analyst certification may use CTAL–TA after their name. This official certification is recognized internationally, the ISTQB Advanced Level builds on the Foundation Level and so it is reasonable to expect a Test Analyst’s role includes responsibilities of a tester, hence some tasks, as mentioned in the Syllabus, can be done by the Test Analyst and/or the Tester.
For overall details of a Test Analyst’s responsibilities see Chapter Required Knowledge, page 11 and for the skills required for the exam, see Chapter Knowledge Levels and Learning Objectives pages 13-16.
Q2 The Syllabus states ‘In addition to number ranges, boundary analysis can be applied to loops’ Please can you explain?
A2 An application requests a password and allows three attempts. The valid partition is one to three. This makes the boundaries no password/first attempt and third attempt/fourth attempt. Also keep in mind, loops are very common in programming but using black-box testing techniques will typically present as a number range anyway. For example, a user may be able to place an order for multiple items up to a certain purchase price limit. The application is likely to be adding each item and with each addition checking the price limit has not been exceeded. While this is a loop in the code, it appears at black-box level to be allowing purchases within a number range and so can be tested by the Test Analyst. White-box loop testing with decision coverage and branch coverage is a technical test technique.
Q3 What is a partially collapsed decision table, what is the difference between redundant and infeasible and how does test coverage apply here?
A3 Removing either redundant or infeasible test cases from a full decision table results in a partially collapsed decision table. A fully collapsed table has removed both. If the table is said to be collapsed, typically this refers to fully collapsed.
A redundant test case is one which repeats another test case. For example, for a specified set of conditions such as type and value of an order, it has been decided that a customer loyalty card discount does not apply. In the decision table, loyalty card discount will be replaced by tildes in the two columns where the other conditions apply. This makes the two columns similar and therefore one is redundant.
An infeasible (also termed not feasible or unfeasible) test case is one where the conditions set are not practical or achievable. For example, booking a train ticket, if condition one asks ‘Before 6am’ and the second condition asks ‘After 9am?’ (Adapting the ISTQB Definition … page 188), the value ‘Yes’ for both conditions cannot be true for one ticket.
There are examples in the book of both redundant and infeasible test cases.
Beware of the situation where redundant or not feasible testcases are reassigned (not eliminated) such as in the answer to ISTQB Sample Exam paper question #11, see Chapter Decision Tables page 29-30 and Appendix A Decision Table Example pages186-189.
Test Coverage is typically expressed as a percentage of coverage of a full decision table or of a fully collapsed decision table, (see Revision Exercises Exercise 6 Answers p73). The type of table should be stated with coverage figure. If a full table has for example 20% redundant test cases, setting an objective of 80% test coverage of the full table can be misleading as it may not be the redundant test cases that are omitted. While it is possible to give test coverage of a partially collapsed table this is not generally used as typically either all combinations of conditions or all nonredundant and feasible test cases are considered. Test Coverage of all actions of a decision table (see Revision Exercises Exercise 6 Answers p73) is likely to be more useful than test coverage of a partially collapsed table.
Q4 Decision Tables worked example 6 based on ISTQB Sample Exam Question #10, page 27. With the discounts available, wouldn’t it always be best to go to the hospital rather than see a doctor?
A4 Yes, with no information on actual costs being significantly higher at a hospital, it would appear so. However, the application is dealing with reimbursements, it is not taking the patient’s decision so arguably the scenario doesn’t need to consider your question. Your question raises an important general point, namely, keep in mind the exam questions, by necessity, are short descriptions of scenarios. In the real world, applications are specified in greater detail. So, typically, it is possible to see what appear to be missing options or shortcomings in scenarios in exam questions that are only a few lines long. Key Point – Work with the given information.
Q5 For Pairwise Testing, the ISTQB Syllabus 2019 states, ‘Manual approach (not recommended)’. Why do I need to study the pairwise testing manual approach?
A5 The reasons are discussed in detail at the start of the Chapter Pairwise Testing, see page 37. For many scenarios, pairwise testing can be complex, particularly where large orthogonal arrays are required. In such scenarios, tools are useful, if not essential. However, to fully understand the principles of pairwise testing, practice using the manual approach with appropriate scenarios provides this understanding. In the exam, pairwise testing scenarios will, by necessity of time constraints, be limited. Exam questions are typically one of the following; determine the number of test cases to test all parameter-value pairs, analyse a pairwise table, select a statement or statements about the principles of pairwise testing or place statements in the correct order for designing pairwise test cases. There may also be a question based on comparison of techniques or selection of a technique from a list for a particular scenario. Having an in-depth understanding of manual pairwise testing is important for both the exam and beyond. Details of the manual approach with worked examples are in Chapter Pairwise Testing and Appendix B.
Added 10th October 2020 (point raised Sept 2020)
Question: ‘ISTQB 2019 (version v1.0, 19 December) Advanced Test Analyst Sample Exam Paper, Question #18 answer states four test cases are required for minimum coverage of the specified use case. The Syllabus page 33 states, minimum coverage is ‘one test case for the basic behavior and sufficient additional test cases to cover each alternate and error handling behavior. If a minimal test set is required, multiple behaviors may be incorporated into a test case’. Why is the ISTQB answer four test cases and not three? How should I answer a question like this in an exam?’
Answer: Good question as three test cases would cover all behaviors. One test case for the main scenario, Steps 1 through 9. One a test case for alternative flow, steps 1 through 8, 8a. (Alternative step 8a does not specify where it then goes, but it would be reasonable to assume it continues with Step 9 so ends the test case.) One test case to cover 1, 2, 3, E1 which goes back to 2, 3, 4, E2, 2, 2a (this assumes the ITP is allowed to re-enter a voucher code which may have been incorrectly entered first time). With pre-condition(s) specified as None, the two additional test cases above that follow a previous test case that has gone through step 9 (or step 2a), need an additional step before step 1, namely ITP logs in. As this is a use case to ‘enable IT professionals to select and reserve a course for which they have been given a voucher’, valid login and logout would be best in their own use case and pre-condition set in this use case as ITP logged in and Step 9 deleted. Interpreting a question, its nuances and assumptions can be difficult. As far as what to do with a question like this in an exam, it has been referred it to ISTQB and ASTQB (who both use the sample exam question paper) for guidance on the minimum number of test cases required. Responses will be added when available.
Response from ISTQB
We have what we need in order to improve this question.
As for live exams, that risk [error] will always be there, just like the risk of a question being wrong from other reasons. Luckily it is possible to complain and live questions are always being reviewed and adjusted if they are flawed in any way.