Non, cela n'a aucun sens de développer un analyseur. Vous pouvez obtenir les informations équivalentes des classes du module runner.py.
les deux classes d'envisager d'étendre TextTestRunner et TextTestResult avec votre logique personnalisée (python 2.7). La sortie que vous avez répertoriée est produite par TextTestResult.
Sinon, vous pouvez étendre ne TextTestResult et modifier l'attribut class TextTestRunner.resultclass mise à votre nouveau nom de classe d'extension.
Les données que vous pouvez extraire de TextTestResult et les mettre dans une liste de dictionnaires sont plus grandes ou équivalentes aux données que votre analyseur est capable d'extraire.
Le cadre unittest permet de telles astuces en raison de sa conception flexible. J'espère que cela a été utile.
[EDIT ]
je trouverais la publication de vos résultats obtenus jusqu'à présent (par exemple, comme un code Open Source sur github) potentiellement très utile pour les personnes qui trouvent votre question! Cela étant dit, je doute qu'il soit facile d'améliorer l'analyseur réel au-delà de l'analyse syntaxique de base de l'expression rationnelle.
Si vous souhaitez toujours poursuivre l'analyse syntaxique du texte, vous devrez peut-être énumérer et décrire «toutes les variantes du format de test de l'unité Python» que vous souhaitez couvrir/prendre en charge. Si vous avez la chance de mettre une telle description sous la forme d'une grammaire sans contexte, alors peut-être pourriez-vous en développer un analyseur, qui couvrirait «ces» cas en tant que forme de langage. S'il vous plaît prenez ma parole de prudence: si l'analyse de texte n'est pas couverte par simple regexp'ing et il y a une chance que vous essayez d'analyser un langage irrégulier (contextuel) - très probablement vous le trouveriez extrêmement difficile accomplir.
Oui, ça vaut le coup –
C'est un travail pour un coureur de test * tel que 'nose' ou' py.test' de fournir une sortie analysable comme le format XML XUnit. – jfs