Bird
Raised Fist0
PyTesttesting~10 mins

First PyTest test - Interactive Code Practice

Choose your learning style10 modes available
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the code to write a simple PyTest test function that checks if 2 + 2 equals 4.

PyTest
def test_addition():
    assert 2 + 2 == [1]
Drag options to blanks, or click blank then click option'
A5
B4
C3
D6
Attempts:
3 left
💡 Hint
Common Mistakes
Using a wrong number like 5 or 3 causes the test to fail.
Forgetting to use assert keyword.
2fill in blank
medium

Complete the code to write a PyTest test function that checks if the string 'hello' starts with 'h'.

PyTest
def test_startswith():
    assert 'hello'.[1]('h')
Drag options to blanks, or click blank then click option'
Acontains
Bendswith
Cstartswith
Dfind
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'endswith' checks the end, not the start.
Using 'contains' is not a string method in Python.
3fill in blank
hard

Fix the error in the PyTest test function that checks if the length of list [1, 2, 3] is 3.

PyTest
def test_list_length():
    assert len([1, 2, 3]) == [1]
Drag options to blanks, or click blank then click option'
A3
B4
C2
D5
Attempts:
3 left
💡 Hint
Common Mistakes
Using a wrong number like 2 or 4 causes the test to fail.
Forgetting to use len() function.
4fill in blank
hard

Fill both blanks to write a PyTest test that checks if the last character of 'world' is 'd'.

PyTest
def test_last_char():
    assert 'world'[[1]] == [2]
Drag options to blanks, or click blank then click option'
A-1
B0
C'd'
D'w'
Attempts:
3 left
💡 Hint
Common Mistakes
Using index 0 gets the first character, not the last.
Using wrong character in comparison.
5fill in blank
hard

Fill all three blanks to write a PyTest test that checks if the dictionary {'a': 1, 'b': 2} has key 'a' with value 1.

PyTest
def test_dict_key_value():
    data = [1]
    assert data[[2]] == [3]
Drag options to blanks, or click blank then click option'
A{'a': 1, 'b': 2}
B'a'
C1
D{'x': 10, 'y': 20}
Attempts:
3 left
💡 Hint
Common Mistakes
Using wrong dictionary or key causes test failure.
Comparing to wrong value.

Practice

(1/5)
1. What does PyTest look for to identify a test function?
easy
A. Functions decorated with @pytest.test
B. Functions ending with _test
C. Functions starting with test_
D. Functions containing assert keyword

Solution

  1. Step 1: Understand PyTest naming convention

    PyTest automatically finds functions whose names start with test_.
  2. Step 2: Compare options with PyTest rules

    Only functions starting with test_ are recognized as tests by default.
  3. Final Answer:

    Functions starting with test_ -> Option C
  4. Quick Check:

    PyTest test function = starts with test_ [OK]
Hint: Look for functions starting with test_ to find tests [OK]
Common Mistakes:
  • Thinking functions ending with _test are tests
  • Believing assert keyword alone marks a test
  • Assuming decorators are needed for basic tests
2. Which of the following is the correct syntax for a simple PyTest test function?
easy
A. def add_test():\n assert 1 + 1 == 2
B. def test_add():\n assert 1 + 1 == 2
C. def test_add():\n assert 1 + 1 == 3
D. def testAdd():\n assert 1 + 1 == 2

Solution

  1. Step 1: Check function name format

    PyTest requires test functions to start with test_, so test_add is correct.
  2. Step 2: Verify assertion correctness

    The assertion 1 + 1 == 2 is true, so the test will pass.
  3. Final Answer:

    def test_add():\n assert 1 + 1 == 2 -> Option B
  4. Quick Check:

    Correct test name and true assert = def test_add():\n assert 1 + 1 == 2 [OK]
Hint: Use def test_...() with assert for valid PyTest tests [OK]
Common Mistakes:
  • Naming function without test_ prefix
  • Using incorrect assertion values
  • Using camelCase instead of snake_case for test names
3. What will be the result when running this PyTest test?
def test_example():
    x = 5
    y = 2
    assert x - y == 3
medium
A. Test passes successfully
B. SyntaxError occurs
C. Test fails with AssertionError
D. Test is skipped automatically

Solution

  1. Step 1: Evaluate the assertion expression

    Calculate x - y which is 5 - 2 = 3.
  2. Step 2: Compare with asserted value

    The assertion checks if 3 == 3, which is true, so no error is raised.
  3. Final Answer:

    Test passes successfully -> Option A
  4. Quick Check:

    5 - 2 equals 3 means assert passes [OK]
Hint: Calculate assert expression; true means test passes [OK]
Common Mistakes:
  • Assuming test fails without checking assertion
  • Confusing syntax errors with assertion failures
  • Thinking tests skip without skip decorators
4. Identify the error in this PyTest test function:
def test_sum():
    total = 2 + 2
    assert total = 4
medium
A. Using single equals (=) instead of double equals (==) in assert
B. Function name does not start with test_
C. Missing return statement in test function
D. Indentation error in function body

Solution

  1. Step 1: Check the assert statement syntax

    The assert uses = which is assignment, not comparison. It should be ==.
  2. Step 2: Confirm function name and indentation

    The function name starts with test_ and indentation is correct, so no error there.
  3. Final Answer:

    Using single equals (=) instead of double equals (==) in assert -> Option A
  4. Quick Check:

    Assert needs ==, not = [OK]
Hint: Use == in assert, not = for comparison [OK]
Common Mistakes:
  • Using = instead of == in assert
  • Thinking return is needed in test functions
  • Confusing indentation errors with syntax errors
5. You want to test a function multiply(a, b) that returns the product of two numbers. Which PyTest test function correctly tests that multiply(3, 4) returns 12?
hard
A. def test_multiply():\n assert multiply(3, 4) == 7
B. def test_multiply():\n assert multiply(3, 4) = 12
C. def multiply_test():\n assert multiply(3, 4) == 12
D. def test_multiply():\n assert multiply(3, 4) == 12

Solution

  1. Step 1: Verify test function name

    The function name must start with test_, so test_multiply is correct.
  2. Step 2: Check assertion correctness

    The assertion must compare with == and the expected result is 12, so assert multiply(3, 4) == 12 is correct.
  3. Final Answer:

    def test_multiply():\n assert multiply(3, 4) == 12 -> Option D
  4. Quick Check:

    Correct name and assert with == 12 = def test_multiply():\n assert multiply(3, 4) == 12 [OK]
Hint: Test functions start with test_ and assert expected == actual [OK]
Common Mistakes:
  • Wrong expected value in assert
  • Wrong function name prefix
  • Using = instead of == in assert
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard