Does anyone know the difference between a "Test Driver" and an "App"


My teacher used to ask us to test our programs out with a "Test Driver" which was basically a way for us to give our function values to test them out by "cout<<" them to the console to make sure everything was calculated correctly.

Now our teacher has been asking us to write "Apps" and not "Test Drivers". I'm not sure if these are names he came up for by himself but I was just wondering if anyone know what the difference between the two are.

I've emailed my professor but have no received a response yet so I thought I'd ask around here.

I'm not sure if these are names he came up for by himself ...

Did you try googling the term? (with software or similar, to avoid all the car driver stuff.)

A test driver is a program whose purpose it to call a function (or set of functions) for test purposes. So it will usually be pretty boring: just enough user interation to get data for the required parameters; data is used to call function(s) you want to test; the app checks and outputs results. And that's it.

In general, "app" is just for application, which is just another name for a program (e.g. "console app"). In the past I would have said application suggested the program was more complicated than a basic utility (e.g. Word rather than grep.) But nowadays "an app" can also mean a small-scale application of the kind you download from "an app store" for your phone, tablet, or even Windows 8.

I assume you prof means apps in the general sense (he or she wants you to write something more interesting than a test driver.) Writing apps of the kind you get from an app store is actually quite tricky.

You will also come across the term test harness, which is a more complicated, and usually automated, variant of a test driver.

Last edited on
Topic archived. No new replies allowed.