Microsoft system prioritizes tests
eWeek | at | by Mike
As software grows larger, ways to test that software need to keep pace. Microsoft's Programmer Productivity Research Center has developed a way to use binary comparisons between two versions of a compiled program to infer which software tests should be run on it.
"We built a test prioritization system," said Microsoft Distinguished Engineer Amitabh Srivastava. "The idea is very simple. You may have tens of millions of lines of source code, but you don't change them all," Srivastava said. "When every test is run, we put probes into the program and store [the test coverage map] into a repository. ... If you give me two versions of kernel32.dll, I can tell you what's changed. Now I know which parts of the program [the tests] are covering, and I prioritize the tests."