Hypothese: Defensive Programmierung testenPython

Python-Programme
Anonymous
 Hypothese: Defensive Programmierung testen

Post by Anonymous »

Ich schreibe Tests mit Hypothesis, um Funktionen mit eingeschränktem Bereich zu testen. Betrachten Sie das folgende Spielzeugbeispiel:

Code: Select all

import math
from hypothesis import assume, example, given

def inc(value: float) -> float:
assert not math.isnan(value)
return value + 1

@given(st.floats())
def test_inc(value: float):
assume(not math.isnan(value))
if(value == math.inf or value == -math.inf):
assert inc(value) == value
else:
assert inc(value) > value
Hier teste ich das Verhalten für endliche und unendliche Eingaben, aber nicht für NaN. Ich möchte testen, ob Werte außerhalb des Bereichs, wie z. B. NaN, korrekt einen AssertionError auslösen.
Gibt es in Hypothesis ein integriertes Muster, mit dem ich dies testen kann? Idealerweise würde ich einen Ansatz bevorzugen, bei dem ich die Abdeckung von Werten innerhalb des Bereichs nicht gefährde.

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post