Interview with a tester


Published on

Published in: Technology, Business
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Interview with a tester

  1. 1. Interview with a TesterEvaluation and Screening of Testers
  2. 2. Purpose• This document describes a number of questions and exercises that could be asked to aspiring testers during interviews or other recruitment situations• This is by no means a complete list, and there are many other ways to go about this• This would only be a small part of the recruitment process, as there are other parts such as intelligence tests, formal & informal interviews, personality tests and so on, that are equally or more important [1]• The goal is to be able to complete all these questions and exercises in under an hour
  3. 3. Four Main Areas Basic TestTesting Mindset Automation Basic Test Basic Test Management
  4. 4. Overview FlowSW Development DeveloperLine Manager Basic Test AutomationTesting Mindset Basic Test Senior Tester Basic Test Management Junior Tester Test Leader Test Line Manager
  5. 5. Testing Mindset – Question 1What skills should a tester possess?• A tester can have many different roles which require different skill sets• On one end of the scale are testers who work in close cooperation with the developers, supporting with automated tests, test tools and testability, as well as manual testing• On the other end of the scale are end to end testers who test from a customer perspective, focusing more on manual testing, looking at usability, quality models and customer experience aspects• One tester cannot be an expert at everything – recruit the right tester for the right role• General intelligence, critical thinking, system thinking, complexity thinking, system modelling, technical understanding, communication skills, and similar skills are of course important, but this is the case for almost all technical roles
  6. 6. Testing Mindset – Question 2What is a tester’s role within an organization?• Testing is a supporting function, not a quality gatekeeper• Testing as a service – a tester must be able to show value added to the project – what services does the tester provide, what do those services cost, and what are the benefits of the services• Always keep stakeholders in mind – don’t be single minded – a tester’s job is not to only generate defect reports, it is to help the developers by providing them with the information they need to improve quality – don’t just generate information, generate the right information• Live user data is something that can complement the tester’s work by providing actual data from customers or beta testers – what other functions can complement or overlap a tester’s work?• Be critical of your own existence - are you adding value, and how can you be more efficient and effective
  7. 7. Basics Test – Exercisex + y = z {−32,768 < [x, y, z] < 32,767}Define a manual test scope for an application performing the aboveequation, where x and y are inputs and z is the output• It is important here to not focus too much on functional tests from the start. First define some kind of model to use for setting the scope [2]• It is possible to use several different kinds of models, not only a quality model like IEC 9126 – heuristics or tours are other approaches [3]• When discussing actual functional tests, some test techniques should be mentioned; boundary-value analysis [4], equivalence partitioning [5], random (fuzz) testing [6]• Some discussion around invalid inputs; null, letters, symbols, etc.
  8. 8. Basics Test – Exercise 2Describe a generic scope selection process; what are the inputs andoutputs of a scope selection?
  9. 9. Basic Test Automation – Scope QuestionHow would you set your automated test scope for the precious exercise?• The first step is to not try to automated the manual tests previously constructed, but to instead try to think about what is suitable to automated, and what is suitable to test manually [7]• Discussions regarding what can be automated on API level and on UI level are important here• Maintainability and portability of automated tests should be discussed• What shouldn’t normally be automated; usability, user experience, user performance, tests which require visual confirmation• What should normally be automated; stability, low level functional tests, low level performance• Discussion around how to make automated tests continuously valuable; fuzz testing and random input variables is one example• Return on Investment
  10. 10. Basic Test Automation – Testability QuestionWhat is testability, and how should a developer and a tester worktogether to achieve this? [8]• Testability is built from the bottom up – when discussing requirements, testability should already be part of the discussion• When designing code for testing, testing becomes easy and code becomes beautiful [9]• Testers must communicate throughout the development process what they intend to test, and make sure that the developers design the code so that it is possible to test• Think about what types of user data you want to gather as well
  11. 11. Basic Test Management - ExerciseOutline a generic test plan overview for development of a newapplication• What is the purpose of the test plan? Who are the stakeholders? What kind of information do they need?• Google do 10-minute-test-plans [10] with the purpose of keeping the test plan to a bare minimum that only holds information vital to the project and keeping the test plan usable throughout the project• James Bach has a different view [11] which is much more comprehensive• Is a test plan a vehicle for learning for the testers, or is it just a container for test information during a project?• Tools, test activities, test scope, risks, communication channels, stakeholders
  12. 12. Basic Test Management - QuestionWhat should be included in a generic test report?• What is the purpose of the test report? Who are the stakeholders? What kind of information do they need? [12]• How to report manual scripted testing• How to report manual exploratory testing• How to report automated testing• Reporting on different software quality attributes• KPI and benchmarks• Defects and prioritization• Risks and Actions• Test Completeness; What testing is not done• Test Coverage• Information overflow – what not to include in the reports• Qualitative information vs. Quantitative information• Quantitative information can only indicate where a qualitative investigation is needed
  13. 13. Results• Make the candidate write down all his comments on a whiteboard and photograph it for further transcription and review• Give the candidate a score on each question/exercise of 1 to 3 – 1: Non-tester Level – 2: Junior Tester Level / Line Manager / Developer – 3: Senior Tester Level / Test Leader
  14. 14. Summary• These questions and exercises are only a small part of the recruitment process, but will give a good understanding of the candidates testing skills• The interviewer must of course be proficient in testing and understand all the underlying concepts• The questions are quite open in nature, and the answers will vary – there is not one correct answer – it is the process of coming to the answer that is important• Use the score as an indicator, but you will need to go back and review the answers after the interview is done, and compare between candidates
  15. 15. Reference[1] Personnel Selection[2] IEC 9126[3] Touring a new application[4] Boundary-value Analysis[5] Equivalence Partitioning[6] Fuzz Testing[7] Exploring Test Automation[8] Software Testability[9] Testability[10] Ten Minute Test Plan[11] Build the Plan[12] Examples of Test Reporting in Action