Aptitude test for testers Answers

Aptitude test

Answer

They are both accurate! The purpose of testing is to find faults AND ensure it meats the users needs (fit for purpose).

It depends on how good your tests were and what they were testing. To have justified confidence in the software we must have confidence in our tests, data and environment.

Talk to users, developers and analysts to understand what the system is supposed to do.

Document this understanding and get it reviewed and use this as a substitute for the Requirements/Design documentation.

Talk with testers who have tested the system previously

Read whatever is available and clarify assumptions

The tester should first establish whether the reason is because of a test fault (i.e. they have made a mistake) or whether it is an environment fault. If neither of these are true then they should then check to see whether this fault has already been raised. If not then either raise the fault or more preferable – talk to the development group to check the fault out.

Do you have a test case:

1. for a valid scalene triangle?

2. for a valid equilateral triangle?

3. for a valid isosceles triangle?

4. for each of the three permutations of two equal sides in valid isosceles triangles?

5. in which one side has a length of zero?

6. in which one side has a negative length?

7. in which the sum of the length of two sides is equal to the length of the third?

8. for each of the three permutations of case 7?

9. in which the sum of the length of two sides is less than the length of the third?

10. for each of the three permutations of case 9?

11. in which all side lengths are zero?

12. which uses non-integer input values?

13. which uses the wrong number of input values?

14. did all your test cases specify the expected output?

Myers states that experienced professional programmers score on average 7.8 out of the first 14 questions. Extra points can be given for further tests such as performance, reliability and configuration

This is not a serious problem. The message is being printed. The best solution would be (a) or (d) – it is essential that faults be raised as soon as possible so that Development can fix them. However this is dependent on the severity and priority of the fault. This fault is not stopping any further testing on this script – it might be that other similar problems occur with other messages and this extra information might assist development with further investigation

First we should investigate the faults – is it because we had run our tests wrongly, or that we were running the tests on the wrong environment?

Assuming that it is because the software has regressed – then we must establish the nature of the faults and severity of the faults.

It is probably inefficient to run any further tests at this stage. We should work with development in getting a new version of the software with the faults fixed and re-tested before running test set 2.

They are as important as each other. However testers need to have a different mindset to developers and therefore should actively look for potential faults. If we only concentrate on positive tests (show that the system does what it should do) then we will potentially experience problems when the system goes live. If we only concentrate on negative tests (showing the system doesn’t do what it shouldn’t) then again we could potentially miss significant faults. However if we look primarily at breaking the system then we may find lots of faults (the what if scenarios) but we may not establish if the system is going to meet the users needs and requirements. A balance is needed with all three approaches.

A good test is one that can potentially find a fault in the system. If this test does not find a fault then it will give us a certain amount of confidence.

Tests must also be efficient – we should not have tests which all do the same thing.

Tester’s Aptitude/Knowledge Test

Aptitude test

Question

What statement do you consider to be most important and why?

a) Testing has the primary intent of showing the system meets the users needs.

b) Testing has the primary intent of finding faults

You have run all your tests and they all pass. Is this good news or bad news?

What would you do if you were asked to test a system which is unfamiliar to you has out-of-date or inadequate documentation?

In running a test you find the actual result does not match the expected result – what would you do?

Do you consider positive or negative testing to be most important or trying to break the system - and why?

How would you define a good test?

You have been assigned to test the new Triangle Determination Application (see screen shot below).

As you can see the screen consists of three text fields and a single button. The user is expected to enter an integer value into each of the three text fields. Upon hitting the OK button the program will print a message in a separate dialog box stating whether the triangle is scalene (all sides are different lengths), isosceles (two sides are the same length), or equilateral (all three sides are the same length).

Write a set of test cases (i.e. specific sets of data) that you feel would adequately test this program. Write the tests so that someone other than you can run them.

In testing the above application you identify what you believe to be a fault – instead of printing the message concerning the type of triangle in a separate dialog box the application is printing the message in the space between the 3 text fields and the OK button. What should your next step be (answer and state why)?

a) Continue testing to the end of the script, and then report the bug.

b) Stop testing, report the bug immediately, then continue alternative scripts

c) Stop testing, report the bug and await a fix.

d) Continue testing and report the bug later, along with those found in other scripts

Do you consider testing tools to be valuable during the testing process – why/why not?

Name 2 standards that refer to testing

How would you test these requirements:

a) The system must be user-friendly

b) The system must be easy to install

c) The following response times are to be achieved with the new system:

• Initial loading of the web application must be achieved within 3 seconds

• Updating of the information on the web page must be no more than 5 seconds

Why do you consider testing to be necessary?

A hotel telephone system can perform 3 functions:

• Call another hotel room by entering a room number (201 to 500)

• Call an external line by entering a 9, followed by the number

• Call various hotel services

• 0 = Operator

• 7 = Room Service

• 8 = Reception

Write a set of test cases to adequately test this telephone system

Describe what you understand about the term “Static Testing” and list 3 static testing techniques.

How would you prioritise your tests (list 5)?

Scenario:

You are testing 2 programs and have 3 weeks to test them both. Having run all of your tests on both programs you finish testing within 2 weeks. You need to decide which of the 2 programs you would re-visit and run further tests against. Choose which program you would re-test (can choose only one!) – and state you reasons:

Program A

Programmer: A

Complexity Level: 2

Lines of Code: 2000

Number of tests: 100

Number of bugs found: 10

(1 high severity, 3 medium & 6 low)

Program B

Programmer: B

Complexity Level: 2

Lines of Code: 2000

Number of tests: 100

Number of bugs found: 50

(10 high severity, 25 medium & 15 low)

ISTQB Sample Paper 5

1 When what is visible to end-users is a deviation from the specific or expected behavior, this is called:

a) an error

b) a fault

c) a failure

d) a defect

e) a mistake



2 Regression testing should be performed:

v) every week

w) after the software has changed

x) as often as possible

y) when the environment has changed

z) when the project manager says



a) v & w are true, x – z are false

b) w, x & y are true, v & z are false

c) w & y are true, v, x & z are false

d) w is true, v, x y and z are false

e) all of the above are true



3 IEEE 829 test plan documentation standard contains all of the following except:

a) test items

b) test deliverables

c) test tasks

d) test environment

e) test specification



4 Testing should be stopped when:

a) all the planned tests have been run

b) time has run out

c) all faults have been fixed correctly

d) both a) and c)

e) it depends on the risks for the system being tested



5 Order numbers on a stock control system can range between 10000 and 99999 inclusive. Which of the following inputs might be a result of designing tests for only valid equivalence classes and valid boundaries:

a) 1000, 5000, 99999

b) 9999, 50000, 100000

c) 10000, 50000, 9999

d) 10000, 99999

e) 9999, 10000, 50000, 99999, 10000



6 Consider the following statements about early test design:

i. early test design can prevent fault multiplication

ii. faults found during early test design are more expensive to fix

iii. early test design can find faults

iv. early test design can cause changes to the requirements

v. early test design takes more effort



a) i, iii & iv are true. Ii & v are false

b) iii is true, I, ii, iv & v are false

c) iii & iv are true. i, ii & v are false

d) i, iii, iv & v are true, ii us false

e) i & iii are true, ii, iv & v are false



7 Non-functional system testing includes:

a) testing to see where the system does not function properly

b) testing quality attributes of the system including performance and usability

c) testing a system feature using only the software required for that action

d) testing a system feature using only the software required for that function

e) testing for functions that should not exist



8 Which of the following is NOT part of configuration management:

a) status accounting of configuration items

b) auditing conformance to ISO9001

c) identification of test versions

d) record of changes to documentation over time

e) controlled library access



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

a) to ensure that all of the small modules are tested adequately

b) to ensure that the system interfaces to other systems and networks

c) to specify which modules to combine when and how many at once

d) to ensure that the integration testing can be performed by a small team

e) to specify how the software should be divided into modules



10 What is the purpose of test completion criteria in a test plan:

a) to know when a specific test has finished its execution

b) to ensure that the test case specification is complete

c) to set the criteria used in generating test inputs

d) to know when test planning is complete

e) to plan when to stop testing



11 Consider the following statements

i. an incident may be closed without being fixed

ii. incidents may not be raised against documentation

iii. the final stage of incident tracking is fixing

iv. the incident record does not include information on test environments

v. incidents should be raised when someone other than the author of the software performs the test



a) ii and v are true, I, iii and iv are false

b) i and v are true, ii, iii and iv are false

c) i, iv and v are true, ii and iii are false

d) i and ii are true, iii, iv and v are false

e) i is true, ii, iii, iv and v are false



12 Given the following code, which 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



a) 1 test for statement coverage, 3 for branch coverage

b) 1 test for statement coverage, 2 for branch coverage

c) 1 test for statement coverage, 1 for branch coverage

d) 2 tests for statement coverage, 3 for branch coverage

e) 2 tests for statement coverage, 2 for branch coverage



13 Given the following:

Switch PC on

Start “outlook”

IF outlook appears THEN

Send an email

Close outlook



a) 1 test for statement coverage, 1 for branch coverage

b) 1 test for statement coverage, 2 for branch coverage

c) 1 test for statement coverage. 3 for branch coverage

d) 2 tests for statement coverage, 2 for branch coverage

e) 2 tests for statement coverage, 3 for branch coverage

14 Given the following code, which is true:

IF A > B THEN

C = A – B

ELSE

C = A + B

ENDIF

Read D

IF C = D Then

Print “Error”

ENDIF



a) 1 test for statement coverage, 3 for branch coverage

b) 2 tests for statement coverage, 2 for branch coverage

c) 2 tests for statement coverage. 3 for branch coverage

d) 3 tests for statement coverage, 3 for branch coverage

e) 3 tests for statement coverage, 2 for branch coverage



15 Consider the following:

Pick up and read the newspaper

Look at what is on television

If there is a program that you are interested in watching then switch the the television on and watch the program

Otherwise

Continue reading the newspaper

If there is a crossword in the newspaper then try and complete the crossword



a) SC = 1 and DC = 1

b) SC = 1 and DC = 2

c) SC = 1 and DC = 3

d) SC = 2 and DC = 2

e) SC = 2 and DC = 3



16 The place to start if you want a (new) test tool is:

a) Attend a tool exhibition

b) Invite a vendor to give a demo

c) Analyse your needs and requirements

d) Find out what your budget would be for the tool

e) Search the internet



17 When a new testing tool is purchased, it should be used first by:

a) A small team to establish the best way to use the tool

b) Everyone who may eventually have some use for the tool

c) The independent testing team

d) The managers to see what projects it should be used in

e) The vendor contractor to write the initial scripts



18 What can static analysis NOT find?

a) The use of a variable before it has been defined

b) Unreachable (“dead”) code

c) Whether the value stored in a variable is correct

d) The re-definition of a variable before it has been used

e) Array bound violations



19 Which of the following is NOT a black box technique:

a) Equivalence partitioning

b) State transition testing

c) LCSAJ

d) Syntax testing

e) Boundary value analysis



20 Beta testing is:

a) Performed by customers at their own site

b) Performed by customers at their software developer’s site

c) Performed by an independent test team

d) Useful to test bespoke software

e) Performed as early as possible in the lifecycle



21 Given the following types of tool, which tools would typically be used by developers and which by an independent test team:

i. static analysis

ii. performance testing

iii. test management

iv. dynamic analysis

v. test running

vi. test data preparation



a) developers would typically use i, iv and vi; test team ii, iii and v

b) developers would typically use i and iv; test team ii, iii, v and vi

c) developers would typically use i, ii, iii and iv; test team v and vi

d) developers would typically use ii, iv and vi; test team I, ii and v

e) developers would typically use i, iii, iv and v; test team ii and vi



22 The main focus of acceptance testing is:

a) finding faults in the system

b) ensuring that the system is acceptable to all users

c) testing the system with other systems

d) testing for a business perspective

e) testing by an independent test team



23 Which of the following statements about the component testing standard is false:

a) black box design techniques all have an associated measurement technique

b) white box design techniques all have an associated measurement technique

c) cyclomatic complexity is not a test measurement technique

d) black box measurement techniques all have an associated test design technique

e) white box measurement techniques all have an associated test design technique



24 Which of the following statements is NOT true:

a) inspection is the most formal review process

b) inspections should be led by a trained leader

c) managers can perform inspections on management documents

d) inspection is appropriate even when there are no written documents

e) inspection compares documents with predecessor (source) documents



25 A typical commercial test execution tool would be able to perform all of the following EXCEPT:

a) generating expected outputs

b) replaying inputs according to a programmed script

c) comparison of expected outcomes with actual outcomes

d) recording test inputs

e) reading test values from a data file



26 The difference between re-testing and regression testing is

a) re-testing is running a test again; regression testing looks for unexpected side effects

b) re-testing looks for unexpected side effects; regression testing is repeating those tests

c) re-testing is done after faults are fixed; regression testing is done earlier

d) re-testing uses different environments, regression testing uses the same environment

e) re-testing is done by developers, regression testing is done by independent testers



27 Expected results are:

a) only important in system testing

b) only used in component testing

c) never specified in advance

d) most useful when specified in advance

e) derived from the code



28 Test managers should not:

a) report on deviations from the project plan

b) sign the system off for release

c) re-allocate resource to meet original plans

d) raise incidents on faults that they have found

e) provide information for risk analysis and quality improvement



29 Unreachable code would best be found using:

a) code reviews

b) code inspections

c) a coverage tool

d) a test management tool

e) a static analysis tool



30 A tool that supports traceability, recording of incidents or scheduling of tests is called:

a) a dynamic analysis tool

b) a test execution tool

c) a debugging tool

d) a test management tool

e) a configuration management tool



31 What information need not be included in a test incident report:

a) how to fix the fault

b) how to reproduce the fault

c) test environment details

d) severity, priority

e) the actual and expected outcomes



32 Which expression best matches the following characteristics or review processes:

1. led by author

2. undocumented

3. no management participation

4. led by a trained moderator or leader

5. uses entry exit criteria



s) inspection

t) peer review

u) informal review

v) walkthrough



a) s = 4, t = 3, u = 2 and 5, v = 1

b) s = 4 and 5, t = 3, u = 2, v = 1

c) s = 1 and 5, t = 3, u = 2, v = 4

d) s = 5, t = 4, u = 3, v = 1 and 2

e) s = 4 and 5, t = 1, u = 2, v = 3



33 Which of the following is NOT part of system testing:

a) business process-based testing

b) performance, load and stress testing

c) requirements-based testing

d) usability testing

e) top-down integration testing



34 What statement about expected outcomes is FALSE:

a) expected outcomes are defined by the software’s behaviour

b) expected outcomes are derived from a specification, not from the code

c) expected outcomes include outputs to a screen and changes to files and databases

d) expected outcomes should be predicted before a test is run

e) expected outcomes may include timing constraints such as response times



35 The standard that gives definitions of testing terms is:

a) ISO/IEC 12207

b) BS7925-1

c) BS7925-2

d) ANSI/IEEE 829

e) ANSI/IEEE 729



36 The cost of fixing a fault:

a) Is not important

b) Increases as we move the product towards live use

c) Decreases as we move the product towards live use

d) Is more expensive if found in requirements than functional design

e) Can never be determined



37 Which of the following is NOT included in the Test Plan document of the Test Documentation Standard:

a) Test items (i.e. software versions)

b) What is not to be tested

c) Test environments

d) Quality plans

e) Schedules and deadlines



38 Could reviews or inspections be considered part of testing:

a) No, because they apply to development documentation

b) No, because they are normally applied before testing

c) No, because they do not apply to the test documentation

d) Yes, because both help detect faults and improve quality

e) Yes, because testing includes all non-constructive activities



39 Which of the following is not part of performance testing:

a) Measuring response time

b) Measuring transaction rates

c) Recovery testing

d) Simulating many users

e) Generating many transactions



40 Error guessing is best used

a) As the first approach to deriving test cases

b) After more formal techniques have been applied

c) By inexperienced testers

d) After the system has gone live

e) Only by end users



Question number Correct answer

1 C

2 C

3 E

4 E

5 C

6 A

7 B

8 B

9 C

10 E

11 B

12 B

13 B

14 B

15 E

16 C

17 B

18 C

19 C

20 A

21 B

22 D

23 A

24 D

25 A

26 A

27 D

28 C

29 A

30 E

31 E

32 B

33 E

34 A

35 B

36 B

37 D

38 D

39 C

40 B

Search

My Blog List