@@ -156,6 +156,17 @@ def fail(self):
156
156
report .finalize (failed = True )
157
157
self .add_step_report (report )
158
158
159
+ def skip (self ):
160
+ """Stop collecting information and finalize the report as skipped."""
161
+ self .current_step_report .finalize (failed = False , skipped = True )
162
+ remaining_steps = self .scenario .steps [len (self .step_reports ) :]
163
+
164
+ # Skip the rest of the steps and make reports.
165
+ for step in remaining_steps :
166
+ report = StepReport (step = step )
167
+ report .finalize (failed = False , skipped = True )
168
+ self .add_step_report (report )
169
+
159
170
160
171
def runtest_makereport (item , call , rep ):
161
172
"""Store item in the report object."""
@@ -173,6 +184,11 @@ def before_scenario(request, feature, scenario):
173
184
request .node .__scenario_report__ = ScenarioReport (scenario = scenario , node = request .node )
174
185
175
186
187
+ def step_skip (request , feature , scenario , step , step_func , step_func_args , exception ):
188
+ """Finalize the step report as skipped."""
189
+ request .node .__scenario_report__ .skip ()
190
+
191
+
176
192
def step_error (request , feature , scenario , step , step_func , step_func_args , exception ):
177
193
"""Finalize the step report as failed."""
178
194
request .node .__scenario_report__ .fail ()
0 commit comments