Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Leer Gebruik van Assert-Methoden in Unittest: Valideren van Testresultaten | Unittest-Framework Beheersen
Practice
Projects
Quizzes & Challenges
Quizzes
Challenges
/
Python Structureel Programmeren

bookGebruik van Assert-Methoden in Unittest: Valideren van Testresultaten

De assert-methoden maken deel uit van de unittest.TestCase-klasse en worden gebruikt om voorwaarden in je tests te controleren. Kort gezegd eindigt elke testmethode in de Test-klasse met een instructie zoals self.assert.

Veelgebruikte assert-methoden

MethodControleVoorbeeld
assertEqual(a, b)a == bassertEqual(sum([1, 2, 3]), 6)
assertNotEqual(a, b)a != bassertNotEqual(1, 2)
assertTrue(x)bool(x) is TrueassertTrue(isinstance(123, int))
assertFalse(x)bool(x) is FalseassertFalse(isinstance("hello", int))
assertIs(a, b)a is ba = 1, b = a
assertIsNone(x)x is Nonebook.price = None
assertIn(a, b)a in bassertIn(2, [1, 2, 3])
assertIsInstance(a, b)isinstance(a, b)assertIsInstance(123, int)

Daarnaast wordt assertRaises(Error, func, *args, **kwargs) gebruikt om te testen of een fout wordt opgegooid. Bijvoorbeeld:

with self.assertRaises(ValueError):
    int("xyz")

Dit controleert of het converteren van "xyz" naar een integer een ValueError oplevert.

Taak

Swipe to start coding

Je taak is om te oefenen met verschillende assert-methoden in het unittest-framework. Maak de klasse TestFunctions af door afzonderlijke testmethoden te schrijven voor elk van de volgende controles. Gebruik exact de onderstaande methodenamen voor elke controle.

  • Controleer dat add(2, 3) 5 retourneert met assertEqual. Noem de methode: test_add_equal.
  • Controleer dat add(2, 2) niet 5 retourneert met assertNotEqual. Noem de methode: test_add_not_equal.
  • Controleer dat is_even(4) True retourneert met assertTrue. Noem de methode: test_is_even_true.
  • Controleer dat is_even(5) False retourneert met assertFalse. Noem de methode: test_is_even_false.
  • Controleer dat het resultaat van get_item([10, 20, 30], 1) hetzelfde object is als 20 met assertIs. Noem de methode: test_get_item_is.
  • Controleer dat get_item([1, 2, 3], 10) None retourneert met assertIsNone. Noem de methode: test_get_item_is_none.
  • Controleer dat 2 in de lijst [1, 2, 3] zit met assertIn. Noem de methode: test_in_list.
  • Controleer dat het resultaat van add(1, 2) een instantie van int is met assertIsInstance. Noem de methode: test_add_is_instance.

Schrijf één testmethode voor elke controle en gebruik alleen de hierboven gespecificeerde methodenamen. Elke testmethode mag slechts één assert-methode gebruiken.

Oplossing

Was alles duidelijk?

Hoe kunnen we het verbeteren?

Bedankt voor je feedback!

Sectie 5. Hoofdstuk 2
single

single

Vraag AI

expand

Vraag AI

ChatGPT

Vraag wat u wilt of probeer een van de voorgestelde vragen om onze chat te starten.

close

bookGebruik van Assert-Methoden in Unittest: Valideren van Testresultaten

Veeg om het menu te tonen

De assert-methoden maken deel uit van de unittest.TestCase-klasse en worden gebruikt om voorwaarden in je tests te controleren. Kort gezegd eindigt elke testmethode in de Test-klasse met een instructie zoals self.assert.

Veelgebruikte assert-methoden

MethodControleVoorbeeld
assertEqual(a, b)a == bassertEqual(sum([1, 2, 3]), 6)
assertNotEqual(a, b)a != bassertNotEqual(1, 2)
assertTrue(x)bool(x) is TrueassertTrue(isinstance(123, int))
assertFalse(x)bool(x) is FalseassertFalse(isinstance("hello", int))
assertIs(a, b)a is ba = 1, b = a
assertIsNone(x)x is Nonebook.price = None
assertIn(a, b)a in bassertIn(2, [1, 2, 3])
assertIsInstance(a, b)isinstance(a, b)assertIsInstance(123, int)

Daarnaast wordt assertRaises(Error, func, *args, **kwargs) gebruikt om te testen of een fout wordt opgegooid. Bijvoorbeeld:

with self.assertRaises(ValueError):
    int("xyz")

Dit controleert of het converteren van "xyz" naar een integer een ValueError oplevert.

Taak

Swipe to start coding

Je taak is om te oefenen met verschillende assert-methoden in het unittest-framework. Maak de klasse TestFunctions af door afzonderlijke testmethoden te schrijven voor elk van de volgende controles. Gebruik exact de onderstaande methodenamen voor elke controle.

  • Controleer dat add(2, 3) 5 retourneert met assertEqual. Noem de methode: test_add_equal.
  • Controleer dat add(2, 2) niet 5 retourneert met assertNotEqual. Noem de methode: test_add_not_equal.
  • Controleer dat is_even(4) True retourneert met assertTrue. Noem de methode: test_is_even_true.
  • Controleer dat is_even(5) False retourneert met assertFalse. Noem de methode: test_is_even_false.
  • Controleer dat het resultaat van get_item([10, 20, 30], 1) hetzelfde object is als 20 met assertIs. Noem de methode: test_get_item_is.
  • Controleer dat get_item([1, 2, 3], 10) None retourneert met assertIsNone. Noem de methode: test_get_item_is_none.
  • Controleer dat 2 in de lijst [1, 2, 3] zit met assertIn. Noem de methode: test_in_list.
  • Controleer dat het resultaat van add(1, 2) een instantie van int is met assertIsInstance. Noem de methode: test_add_is_instance.

Schrijf één testmethode voor elke controle en gebruik alleen de hierboven gespecificeerde methodenamen. Elke testmethode mag slechts één assert-methode gebruiken.

Oplossing

Switch to desktopSchakel over naar desktop voor praktijkervaringGa verder vanaf waar je bent met een van de onderstaande opties
Was alles duidelijk?

Hoe kunnen we het verbeteren?

Bedankt voor je feedback!

Sectie 5. Hoofdstuk 2
single

single

some-alt