2017-01-12 5 views
0

Ist es möglich, die fehlende Zweigabdeckung zu ignorieren? Ich benutze jenkins für Testabdeckung und Pyintests. Gibt es eine Möglichkeit fehlende Statements einzulesen und eine 100% ige Filialabdeckung zu erhalten? Vielleicht eine Eigenschaft, die in der Projekteinstellung eingestellt werden kann?Wie ignoriere ich fehlende Statement in Jenkins Testabdeckung in Django

+0

Wenn es Aussagen gibt, die nicht abgedeckt sind, warum sollten Sie eine 100% ige Abdeckung sehen? – jonrsharpe

+0

Eigentlich möchte ich die fehlende Zeile im generierten Testbericht ignorieren. so dass ich ~ 100% Abdeckung bekommen kann. ** fehlt tritt in If-Else-Block. ** –

+0

Aber Sie haben keine 100% ige Abdeckung. Weil du diese Linie nicht verdeckst. Schreiben Sie also einen Test, um diese Zeile abzudecken (oder akzeptieren Sie <100% Testabdeckung, was auch in Ordnung ist). – jonrsharpe

Antwort

1

Ich habe die Lösung meiner Frage gefunden. 1) .coveragerc Datei in Ihrem django Projekt 2) definieren

JENKINS_TASKS = ('django_jenkins.tasks.run_pylint',) 
COVERAGE_EXCLUDES_FOLDERS = ['packsit/migrations/*','packsit/api/v1/images.py'] 
COVERAGE_RCFILE = '.coveragerc' 

in Ihrer Einstellungsdatei erstellen. 3) .coveragerc Datei sollte enthält:

[run] 
branch = True 

omit = 
    */.local/* 
    /usr/* 
[report] 

exclude_lines = 
    pragma: no cover 
    def __repr__ 
    if self\.debug 
    raise AssertionError 
    raise NotImplementedError 
    if 0: 
    if __name__ == .__main__.: 
    return 
    try: 
    except: 
    if 
    self.* 


ignore_errors = True 
include = 
    packsit/api/v1/client/* 
[html] 
directory = coverage_html_report 

dann Befehl auf Terminal laufen:

$ python manage.py jenkins --enable-coverage --coverage-format html --coverage-exclude=COVERAGE_EXCLUDES_FOLDERS 

dies auszuschließen, wenn Rückkehr, selbst, versucht, mit Ausnahme 'von Bericht erstellt.

Verwandte Themen