Testing that collects timing and processing information during program implementation that might change the behavior of the software from its behavior in a actual environment. Usually involves additional code embedded in the software being tested or additional processes running simultaneously with software being tested on the similar platform