← Testing: expected vs actual lesson New set →

App Dev Worksheet: Testing

App development lesson 22: Testing: expected vs actual · Set 62 · 40 questions
TalentJR

Developer's tip (Expected vs actual): Test case = input + expected result (from the rule). Run the code: actual = expected → pass; otherwise → fail. Always test the edge value: < and <= differ only there.

NameDateTime takenScore ___ / 40
  1. 1.🧪 How many of these test cases pass?
    📝 Rule: a quiz is passed with 7 or more right answers.
    function result(right) {
      if (right > 7) {
        return "Pass";
      }
      return "Try again";
    }
    Test 1: result(7) → expected Pass
    Test 2: result(9) → expected Pass
    Test 3: result(6) → expected Try again
  2. 2.🧪 One test case fails. Which one?
    📝 Rule: a quiz is passed with 6 or more right answers.
    function result(right) {
      if (right > 6) {
        return "Pass";
      }
      return "Try again";
    }
    Test 1: result(6) → expected Pass
    Test 2: result(5) → expected Try again
    Test 3: result(7) → expected Pass
    (a) Test 3 (b) Test 2 (c) Test 1
  3. 3.🧪 One test case fails. Which one?
    🚚 Rule: delivery is free (0) when the order is 400 or more; otherwise it costs 40.
    function delivery(total) {
      if (total > 400) {
        return 0;
      }
      return 40;
    }
    Test 1: delivery(300) → expected 40
    Test 2: delivery(400) → expected 0
    Test 3: delivery(700) → expected 0
    (a) Test 3 (b) Test 2 (c) Test 1
  4. 4.🧪 What is the ACTUAL result of Test 3?
    🎟️ Rule: a ticket costs 50 for children under 14, and 100 for everyone else.
    function price(age) {
      if (age < 14) {
        return 50;
      }
      return 100;
    }
    Test 1: price(14) → expected 100
    Test 2: price(16) → expected 100
    Test 3: price(10) → expected 50
  5. 5.🧪 How many of these test cases pass?
    🚚 Rule: delivery is free (0) when the order is 800 or more; otherwise it costs 40.
    function delivery(total) {
      if (total >= 800) {
        return 0;
      }
      return 40;
    }
    Test 1: delivery(800) → expected 0
    Test 2: delivery(1100) → expected 0
    Test 3: delivery(700) → expected 40
  6. 6.🧪 How many of these test cases pass?
    🚚 Rule: delivery is free (0) when the order is 600 or more; otherwise it costs 40.
    function delivery(total) {
      if (total >= 600) {
        return 0;
      }
      return 40;
    }
    Test 1: delivery(900) → expected 0
    Test 2: delivery(800) → expected 0
    Test 3: delivery(550) → expected 40
  7. 7.🧪 How many of these test cases pass?
    🚚 Rule: delivery is free (0) when the order is 300 or more; otherwise it costs 40.
    function delivery(total) {
      if (total >= 300) {
        return 0;
      }
      return 40;
    }
    Test 1: delivery(350) → expected 0
    Test 2: delivery(300) → expected 0
    Test 3: delivery(200) → expected 40
  8. 8.🧪 What is the ACTUAL result of Test 1?
    🚚 Rule: delivery is free (0) when the order is 300 or more; otherwise it costs 40.
    function delivery(total) {
      if (total >= 300) {
        return 0;
      }
      return 40;
    }
    Test 1: delivery(550) → expected 0
    Test 2: delivery(250) → expected 40
    Test 3: delivery(450) → expected 0
  9. 9.🧪 How many of these test cases pass?
    🎟️ Rule: a ticket costs 50 for children under 11, and 100 for everyone else.
    function price(age) {
      if (age <= 11) {
        return 50;
      }
      return 100;
    }
    Test 1: price(11) → expected 100
    Test 2: price(8) → expected 50
    Test 3: price(15) → expected 100
  10. 10.🧪 How many of these test cases pass?
    🚚 Rule: delivery is free (0) when the order is 400 or more; otherwise it costs 40.
    function delivery(total) {
      if (total > 400) {
        return 0;
      }
      return 40;
    }
    Test 1: delivery(650) → expected 0
    Test 2: delivery(800) → expected 0
    Test 3: delivery(200) → expected 40
  11. 11.🧪 One test case fails. Which one?
    🚚 Rule: delivery is free (0) when the order is 700 or more; otherwise it costs 40.
    function delivery(total) {
      if (total > 700) {
        return 0;
      }
      return 40;
    }
    Test 1: delivery(700) → expected 0
    Test 2: delivery(800) → expected 0
    Test 3: delivery(600) → expected 40
    (a) Test 2 (b) Test 1 (c) Test 3
  12. 12.🧪 How many of these test cases pass?
    🚚 Rule: delivery is free (0) when the order is 600 or more; otherwise it costs 40.
    function delivery(total) {
      if (total >= 600) {
        return 0;
      }
      return 40;
    }
    Test 1: delivery(700) → expected 0
    Test 2: delivery(400) → expected 40
    Test 3: delivery(650) → expected 0
  13. 13.🧪 What is the ACTUAL result of Test 2?
    🚚 Rule: delivery is free (0) when the order is 700 or more; otherwise it costs 40.
    function delivery(total) {
      if (total >= 700) {
        return 0;
      }
      return 40;
    }
    Test 1: delivery(650) → expected 40
    Test 2: delivery(850) → expected 0
    Test 3: delivery(700) → expected 0
  14. 14.🧪 How many of these test cases pass?
    📝 Rule: a quiz is passed with 8 or more right answers.
    function result(right) {
      if (right >= 8) {
        return "Pass";
      }
      return "Try again";
    }
    Test 1: result(7) → expected Try again
    Test 2: result(8) → expected Pass
    Test 3: result(10) → expected Pass
  15. 15.🧪 Values right at a limit, like age 12 for “under 12”, are called ___. (a) edge cases (b) phone cases (c) old cases (d) easy cases
  16. 16.🧪 One test case fails. Which one?
    📝 Rule: a quiz is passed with 5 or more right answers.
    function result(right) {
      if (right > 5) {
        return "Pass";
      }
      return "Try again";
    }
    Test 1: result(4) → expected Try again
    Test 2: result(6) → expected Pass
    Test 3: result(5) → expected Pass
    (a) Test 1 (b) Test 3 (c) Test 2
  17. 17.🧪 What is the ACTUAL result of Test 1?
    🎟️ Rule: a ticket costs 50 for children under 10, and 100 for everyone else.
    function price(age) {
      if (age < 10) {
        return 50;
      }
      return 100;
    }
    Test 1: price(16) → expected 100
    Test 2: price(6) → expected 50
    Test 3: price(10) → expected 100
  18. 18.🧪 A test case is an input together with its ___. (a) screen colour (b) app icon (c) font size (d) expected result
  19. 19.🧪 One test case fails. Which one?
    🎟️ Rule: a ticket costs 50 for children under 13, and 100 for everyone else.
    function price(age) {
      if (age <= 13) {
        return 50;
      }
      return 100;
    }
    Test 1: price(19) → expected 100
    Test 2: price(11) → expected 50
    Test 3: price(13) → expected 100
    (a) Test 1 (b) Test 3 (c) Test 2
  20. 20.🧪 One test case fails. Which one?
    🎟️ Rule: a ticket costs 50 for children under 14, and 100 for everyone else.
    function price(age) {
      if (age <= 14) {
        return 50;
      }
      return 100;
    }
    Test 1: price(14) → expected 100
    Test 2: price(20) → expected 100
    Test 3: price(12) → expected 50
    (a) Test 3 (b) Test 2 (c) Test 1
  21. 21.🧪 How many of these test cases pass?
    🚚 Rule: delivery is free (0) when the order is 500 or more; otherwise it costs 40.
    function delivery(total) {
      if (total > 500) {
        return 0;
      }
      return 40;
    }
    Test 1: delivery(600) → expected 0
    Test 2: delivery(650) → expected 0
    Test 3: delivery(300) → expected 40
  22. 22.🧪 One test case fails. Which one?
    📝 Rule: a quiz is passed with 7 or more right answers.
    function result(right) {
      if (right > 7) {
        return "Pass";
      }
      return "Try again";
    }
    Test 1: result(7) → expected Pass
    Test 2: result(9) → expected Pass
    Test 3: result(5) → expected Try again
    (a) Test 1 (b) Test 2 (c) Test 3
  23. 23.🧪 How many of these test cases pass?
    🎟️ Rule: a ticket costs 50 for children under 13, and 100 for everyone else.
    function price(age) {
      if (age <= 13) {
        return 50;
      }
      return 100;
    }
    Test 1: price(14) → expected 100
    Test 2: price(16) → expected 100
    Test 3: price(11) → expected 50
  24. 24.🧪 One test case fails. Which one?
    🚚 Rule: delivery is free (0) when the order is 400 or more; otherwise it costs 40.
    function delivery(total) {
      if (total > 400) {
        return 0;
      }
      return 40;
    }
    Test 1: delivery(400) → expected 0
    Test 2: delivery(450) → expected 0
    Test 3: delivery(300) → expected 40
    (a) Test 2 (b) Test 3 (c) Test 1
  25. 25.🧪 How many of these test cases pass?
    📝 Rule: a quiz is passed with 5 or more right answers.
    function result(right) {
      if (right > 5) {
        return "Pass";
      }
      return "Try again";
    }
    Test 1: result(7) → expected Pass
    Test 2: result(6) → expected Pass
    Test 3: result(4) → expected Try again
  26. 26.🧪 What is the ACTUAL result of Test 3?
    🎟️ Rule: a ticket costs 50 for children under 12, and 100 for everyone else.
    function price(age) {
      if (age < 12) {
        return 50;
      }
      return 100;
    }
    Test 1: price(13) → expected 100
    Test 2: price(12) → expected 100
    Test 3: price(8) → expected 50
  27. 27.🧪 How many of these test cases pass?
    🎟️ Rule: a ticket costs 50 for children under 11, and 100 for everyone else.
    function price(age) {
      if (age < 11) {
        return 50;
      }
      return 100;
    }
    Test 1: price(9) → expected 50
    Test 2: price(14) → expected 100
    Test 3: price(11) → expected 100
  28. 28.🧪 What is the ACTUAL result of Test 3?
    🚚 Rule: delivery is free (0) when the order is 400 or more; otherwise it costs 40.
    function delivery(total) {
      if (total >= 400) {
        return 0;
      }
      return 40;
    }
    Test 1: delivery(250) → expected 40
    Test 2: delivery(550) → expected 0
    Test 3: delivery(450) → expected 0
  29. 29.🧪 How many of these test cases pass?
    🚚 Rule: delivery is free (0) when the order is 600 or more; otherwise it costs 40.
    function delivery(total) {
      if (total > 600) {
        return 0;
      }
      return 40;
    }
    Test 1: delivery(900) → expected 0
    Test 2: delivery(850) → expected 0
    Test 3: delivery(550) → expected 40
  30. 30.🧪 What is the ACTUAL result of Test 1?
    🎟️ Rule: a ticket costs 50 for children under 14, and 100 for everyone else.
    function price(age) {
      if (age <= 14) {
        return 50;
      }
      return 100;
    }
    Test 1: price(14) → expected 100
    Test 2: price(13) → expected 50
    Test 3: price(19) → expected 100
  31. 31.🧪 How many of these test cases pass?
    🎟️ Rule: a ticket costs 50 for children under 14, and 100 for everyone else.
    function price(age) {
      if (age < 14) {
        return 50;
      }
      return 100;
    }
    Test 1: price(15) → expected 100
    Test 2: price(14) → expected 100
    Test 3: price(13) → expected 50
  32. 32.🧪 What is the actual result of a test? (a) the app’s name (b) what the app really does (c) what we hope for (d) the test’s number
  33. 33.🧪 What is the ACTUAL result of Test 2?
    🚚 Rule: delivery is free (0) when the order is 800 or more; otherwise it costs 40.
    function delivery(total) {
      if (total >= 800) {
        return 0;
      }
      return 40;
    }
    Test 1: delivery(850) → expected 0
    Test 2: delivery(900) → expected 0
    Test 3: delivery(600) → expected 40
  34. 34.🧪 How many of these test cases pass?
    🎟️ Rule: a ticket costs 50 for children under 12, and 100 for everyone else.
    function price(age) {
      if (age < 12) {
        return 50;
      }
      return 100;
    }
    Test 1: price(8) → expected 50
    Test 2: price(18) → expected 100
    Test 3: price(17) → expected 100
  35. 35.🧪 What is the ACTUAL result of Test 3?
    🎟️ Rule: a ticket costs 50 for children under 13, and 100 for everyone else.
    function price(age) {
      if (age < 13) {
        return 50;
      }
      return 100;
    }
    Test 1: price(12) → expected 50
    Test 2: price(16) → expected 100
    Test 3: price(19) → expected 100
  36. 36.🧪 What is the ACTUAL result of Test 1?
    🚚 Rule: delivery is free (0) when the order is 400 or more; otherwise it costs 40.
    function delivery(total) {
      if (total > 400) {
        return 0;
      }
      return 40;
    }
    Test 1: delivery(700) → expected 0
    Test 2: delivery(650) → expected 0
    Test 3: delivery(350) → expected 40
  37. 37.🧪 How many of these test cases pass?
    🚚 Rule: delivery is free (0) when the order is 700 or more; otherwise it costs 40.
    function delivery(total) {
      if (total >= 700) {
        return 0;
      }
      return 40;
    }
    Test 1: delivery(750) → expected 0
    Test 2: delivery(850) → expected 0
    Test 3: delivery(550) → expected 40
  38. 38.🧪 How many of these test cases pass?
    📝 Rule: a quiz is passed with 8 or more right answers.
    function result(right) {
      if (right >= 8) {
        return "Pass";
      }
      return "Try again";
    }
    Test 1: result(10) → expected Pass
    Test 2: result(11) → expected Pass
    Test 3: result(6) → expected Try again
  39. 39.🧪 What is the ACTUAL result of Test 3?
    🚚 Rule: delivery is free (0) when the order is 400 or more; otherwise it costs 40.
    function delivery(total) {
      if (total > 400) {
        return 0;
      }
      return 40;
    }
    Test 1: delivery(400) → expected 0
    Test 2: delivery(700) → expected 0
    Test 3: delivery(350) → expected 40
  40. 40.🧪 One test case fails. Which one?
    📝 Rule: a quiz is passed with 5 or more right answers.
    function result(right) {
      if (right > 5) {
        return "Pass";
      }
      return "Try again";
    }
    Test 1: result(7) → expected Pass
    Test 2: result(5) → expected Pass
    Test 3: result(2) → expected Try again
    (a) Test 2 (b) Test 3 (c) Test 1

Answer key

  1. 2
  2. Test 1
  3. Test 2
  4. 50
  5. 3
  6. 3
  7. 3
  8. 0
  9. 2
  10. 3
  11. Test 1
  12. 3
  13. 0
  14. 3
  15. edge cases
  16. Test 3
  17. 100
  18. expected result
  19. Test 3
  20. Test 1
  21. 3
  22. Test 1
  23. 3
  24. Test 1
  25. 3
  26. 50
  27. 3
  28. 0
  29. 3
  30. 50
  31. 3
  32. what the app really does
  33. 0
  34. 3
  35. 100
  36. 0
  37. 3
  38. 3
  39. 40
  40. Test 2

Free app development lessons, practice and worksheets at talentjr.in/app-development-for-students