@@ -96,7 +96,7 @@ class TestResult:
9696
9797 def __init__ (self , outcome , report , logfile , config ):
9898 self .test_id = report .nodeid
99- if report . when != 'call' :
99+ if getattr ( report , ' when' , 'call' ) != 'call' :
100100 self .test_id = '::' .join ([report .nodeid , report .when ])
101101 self .time = getattr (report , 'duration' , 0.0 )
102102 self .outcome = outcome
@@ -277,7 +277,7 @@ def append_passed(self, report):
277277 self ._appendrow ('Passed' , report )
278278
279279 def append_failed (self , report ):
280- if report . when == "call" :
280+ if getattr ( report , ' when' , None ) == "call" :
281281 if hasattr (report , "wasxfail" ):
282282 # pytest < 3.0 marked xpasses as failures
283283 self .xpassed += 1
@@ -487,6 +487,10 @@ def pytest_runtest_logreport(self, report):
487487 else :
488488 self .append_other (report )
489489
490+ def pytest_collectreport (self , report ):
491+ if report .failed :
492+ self .append_failed (report )
493+
490494 def pytest_sessionstart (self , session ):
491495 self .suite_start_time = time .time ()
492496
0 commit comments