Documentation et tests en pratique

Principes de génie logiciel en Python

Adam Spannbauer

Machine Learning Engineer at Eastman

Documenter des projets avec Sphinx

Example Sphinx Page

Principes de génie logiciel en Python

Documentation des classes

class Document:
    """Analyze text data

    :param text: text to analyze

    :ivar text: text originally passed to the instance on creation
    :ivar tokens: Parsed list of words from text
    :ivar word_counts: Counter containing counts of hashtags used in text
    """
    def __init__(self, text):
        ...
Principes de génie logiciel en Python

Tests d’intégration continue

Travis CI Logo

Example Travis Output - Failing

Principes de génie logiciel en Python

Tests d’intégration continue

Exemple de sortie Travis - Réussite

Principes de génie logiciel en Python

Liens et outils supplémentaires

  • Sphinx - Générer une documentation élégante
  • Travis CI - Tester le code en continu
  • GitHub & GitLab – Héberger les projets avec git
  • Codecov - Identifier où améliorer les tests des projets
  • Code Climate - Analyser le code pour améliorer la lisibilité
Principes de génie logiciel en Python

Passons à la pratique !

Principes de génie logiciel en Python

Preparing Video For Download...