Viewing the results
Simon would not be much good if it could not tell you how the stories went. At this time, Simon does two things – Firstly it logs the results of the run to XCode’s console via NSLog(…) statements. Secondly it displays a View on top of your app where you can view and re-run tests.
Here’s an example of the log output from a test run:
The in-app results UI
When Simon’s UI is enabled with the -ui argument, the UI is automatically displayed. Each story gets it’s own row and the colour of the story name indicates the state – Green – a successfully executed story, Red – a story that had an execution failure and Grey – for any story that was ignored for some reason. Here are what the buttons and controls do:
This function will close Simon’s results window and remove Simon from memory. This is so that you can return to you app without having to restart it.
Executing Run from this screen will re-run all the stories. If you don’t want all of them to run, you can use the search bar to show only the stories you want to run.
This lets you filter the list of stories. It will search both on the name of the file that the stories were loaded from and also the story name. if a file name matches, all the stories in that file are automatically selected. Otherwise only the stories with matching names.
Individual stories can be run from the Details screen.
You can tap a story to view the details of it. This opens a new screen that looks like this:
The details screen is designed to give you a run down of a single story and what happened when it executed. As you can see from the screen dump, it shows you the following information
You can also use the [Run] button to re-run just this story and when Simon reloads the UI after running it, Simon will return to this screen.
Details screen (Failure!)
Here we have a screen shot of a story which failed. Apart from the step status showing which steps failed, you also get a processed stack trace which hopefully will give you an idea of just where the error originated.
Unfortunately at this time Simon is unable to deduce the exact line numbers. THis is a limitation within Apple’s runtime.
IndexSimon What is BDD? Why Simon?
Installation Quick Start Guide Simon's UI
Writing Stories Mapping Stories Step Conversations Validating Results Accessing your app's UI Exceptions and Errors
Macro reference API reference Simon's CLI args Pieman's CLI args Change Log Thank you BSD License