1. A computer program product to perform software testing, the computer program product being embodied in a non-transitory computer readable storage medium and comprising computer instructions for: initiating a performance test iteration of a transaction; recording a start time of the performance test iteration of the transaction; capturing screen shot images of at least a portion of a user interface during performance of the performance test iteration of the transaction, each screen shot image having an associated timestamp; processing the screen shot images with an image classifier trained to detect at least a portion of a screen image that is associated with an end of transaction condition to identify a screen shot image from the screen shot images that matches the end of transaction condition; using a time from the timestamp associated with the identified screen shot image as a transaction end time to compute an end-to-end time to perform the performance test iteration of the transaction; and updating test results for the transaction with the end-to-end time.