BVTs and DRTs

The terms BVT and DRT are important ones to software test engineers.  BVT stands for Build Verification Tests, and DRT stands for Developer Regression Tests. BVTs are a set of tests which are run immediately after a new build of the system under development has completed. The BVT test cases are designed to determine if the new build can be installed and tested by the test team. DRTs are a set of tests which are run immediately before new code is checked into the system under development. The DRT test cases are designed to determine if the new code breaks existing functionality or not.


Let me put it slightly differently, in chronological order. First a developer writes new code. Before checking the new code into a central source/version control system, the developer creates a private build of the system with the new code. The developer then runs a DRT test suite. If the private build passes the DRT suite, then the developer checks the new code into the central build system. Towards the end of the day (or week or some other timeframe depending on the frequency of builds), the Build Team builds a new version of the system under development which contains all the new code checked in by developers that day. After the build process completes (typically early in the morning of the next day), the Build Team runs the BVT test suite. If the new build passes the BVT tests, then the new build is "released to test", meaning a message is sent to the Test Team telling the testers where the new build is, and that the build is installable and testable.


In general, both BVTs and DRTs consist of automated test cases. Manual testing is just too time-consuming in a tight development cycle. There is often overlap between BVT and DRT test cases, meaning that some or all of the test cases in each test suite are often the same. In other words, the Test Team creates a large number of test cases. BVTs and DRTs are subsets of the entire set of test cases. Other common subset suites include DTR (daily test run), WTR (weekly test run), MTR (milestone test run), and FTP (full test pass).


If you enjoyed this blog entry, you might enjoy working at Microsoft. My parent company, Volt Information Sciences, is always looking for software engineers.  Check the job listings at


This entry was posted in Software Test Automation. Bookmark the permalink.