An essential part of Basher is the gathering and analysis of the information captured during a test cycle. For this purpose, Basher defines a service, a Collector, which will handle all data produced.
Execution time in Basher is currently measured in milliseconds (with work being done to move to nano-seconds). The statistics captured are measured relative to the starting time of the run.
The TimeSource that is used in Basher provides time for all components. Calendar time reported by the TimeSource can be retrieved in both internal 'Basher time' - e.g. the time since a phase begun as well as more 'normal' UTC time.
The collector service is responsible for recoding information about tasks running, capturing information such as failures,succeses,total executions, tps (transactions per second). There are three versions currently available:
The standard out collector will simply print the statistics to standard out.
The CSV file collector will write the statistics it captures to a timestamped directory (one per run). This allows post processing of test runs to obtain graphs of performance.
The XML file collector will, like the CSV file collector, write the statistics it captures to a timestamped directory (one per run), but in this case in XML format. This allows post processing of test runs to obtain graphs of performance.
Note: Future releases of Basher will include tools to automatically produce graphs and other representations of data captured.