Twój szkielet WSGI i serwer zawiera programy obsługi przechwytywania wyjątków i wykonuje pewne działania (renderowanie stosu w ciele, rejestrowanie śledzenia wstecznego do pliku dziennika itp.). Test sieci Web domyślnie nie pokazuje rzeczywistej odpowiedzi, co może być przydatne, jeśli struktura renderuje stos w ciele. Używam następujące rozszerzenie Webtest kiedy trzeba spojrzeć na ciele odpowiedzi:
class BetterTestApp(webtest.TestApp):
"""A testapp that prints the body when status does not match."""
def _check_status(self, status, res):
if status is not None and status != res.status_int:
raise webtest.AppError(
"Bad response: %s (not %s)\n%s", res.status, status, res)
super(BetterTestApp, self)._check_status(status, res)
Pierwsze większą kontrolę nad tym co się dzieje z wyjątkiem zależy od ramy i serwer używasz. Dla wbudowanego modułu wsgiref
możesz być w stanie zastąpić error_output, aby osiągnąć to, co chcesz.
Pojawi się "błąd" przekierowany do jakiegoś pliku w konfiguracji WSGI. Możesz to sprawdzić, aby uzyskać błąd w niektórych plikach. – Nilesh