Partage
  • Partager sur Facebook
  • Partager sur Twitter

Je vais m'occuper de la gestion des erreurs

Application web écrite en Python, et le module Bottle

    18 septembre 2022 à 16:25:44

    Bonjour

    Je commence à voir la fin. Je teste, je rode, et je dois m'occuper de la gestion des erreurs, notamment à l'ouverture des fichiers html ou txt, et lors de la connexion à la base de données, de la création du curseur, et des requêtes.

    Je vous présente mon analyse, pour que vous me disiez ce que vous en pensez.

    • Pour les fichiers, inutile de mettre un try si on ouvre en écriture ou en ajout, puisque le fichier est créé s'il n'existe pas. Donc juste pour l'ouverture en lecture.

    • Pour la connexion à la base de données, je ne mets pas de clause try, ni pour la création du curseur.

    • Pour les requêtes SELECT, il faut tester si la liste est vide (fetchall()), ou si fetchone rend None, parce que ça peut déclencher une erreur "nontype n'est pas indexable", ou "index de liste en dehors".

    • Pour DELETE, UPDATE, INSERT, je ne vois rien de nécessaire.

    Voilà ! Correct, ou pas ? 

    Je suis également preneur de conseils d'expert pour les tests. Il faut se forcer à faire n'importe quoi avec le clavier et la souris ! Il faut jouer l'utilisateur incompétent ou malveillant. Est-ce qu'il y a des méthodes et des idées reconnues là-dessus?

    • Partager sur Facebook
    • Partager sur Twitter

    S'il n'y a pas de solution, c'est qu'il n'y a pas de problème.

      18 septembre 2022 à 17:00:20

      En général, côté fichiers ou base de données, on a les context manager (with...) pour attraper les exceptions.
      Mais gérer suppose savoir quoi faire lorsqu'elles arrivent (pas juste les ignorer).

      Les conditions aux limites (comme liste vide) ne sont pas des exceptions...

      • Partager sur Facebook
      • Partager sur Twitter
        19 septembre 2022 à 18:57:35

        Merci mps. Je vais étudier les contexte manager.
        • Partager sur Facebook
        • Partager sur Twitter

        S'il n'y a pas de solution, c'est qu'il n'y a pas de problème.

        Je vais m'occuper de la gestion des erreurs

        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
        • Editeur
        • Markdown