text: Title: Messages in test body cause crash when using templates and some iterations are skipped
  Body: This is a regression caused by #4426. The root cause is this code that handles the situation where all iterations have been skipped:
  ```python
  if all(item.skipped for item in result.body):
      raise ExecutionFailed('All iterations skipped.', skip=True)
  ```
  This code works fine normally, but if `result.body` contains messages, it fails with this error:
  ```
  AttributeError: 'Message' object has no attribute 'skipped'
  ```
  Luckily tests having messages directly in their body is rare. I think the only way that could happen is when using a listener that logs something in `start_test` or if results are modified programmatically. Crashes are nevertheless always bad, and based on a thread on our Slack someone had encountered this issue, so this requires a pretty high severity.
  