assertRaises must check for a specific exception

Cette page n'est pas encore disponible en français, sa traduction est en cours.
Si vous avez des questions ou des retours sur notre projet de traduction actuel, n'hésitez pas à nous contacter.

Metadata

ID: python-best-practices/assertraises-specific-exception

Language: Python

Severity: Warning

Category: Error Prone

Description

When checking an exception, check for a specific exception. Checking for Exception may bypass the verification of the correct behavior of the program.

Using a generic exception is error-prone and give a false sense of correctness. Instead, use the correct exception to check against.

Non-Compliant Code Examples

self.assertRaises(Exception, foo)  # check a specific Exception, not a generic one

Compliant Code Examples

self.assertRaises(ValueError, foo)
https://static.datadoghq.com/static/images/logos/github_avatar.svg https://static.datadoghq.com/static/images/logos/vscode_avatar.svg jetbrains

Seamless integrations. Try Datadog Code Analysis