Same hardware and software environments
Limited sets of test inputs. Testing data may not cover all possibilities.
Algorithms must be implemented to programming codes. Sometimes it will be too difficult to do or it takes too much time.
Have to wait (sometimes very long) until the end of algorithm to get elapsed time.