I don't see how anything in the program could work. The calcAverage doesn't even use the score that is passed to it and assumes that the sum consists of 3 numbers added together which is a bad design. It should receive an array and size or two iterators (start and finish).
In the main the for loop overwrites the same variable 3 times so the first two entries are lost. I think that you want to setup an array of scores. The sum passed to calcAverage is zero because you never summed anything. getTestScore is pointless since it adds 0 + 0 and returns 0.
There are a lot of ways to redesign it. getTestScore could get 1 value and return it. Within it you could error check the value and loop until the user enters something valid. I'd start with that and get it working. In the main you call getTestScore for however many times you wish and add the return value into your array. Then pass the array to the average function and perform the calculation. I recommend passing pointers to the beginning and one past the end of the array and use the pointers like iterators summing the values and counting the number until you reach the end. Then divide the sum by the counter and return the average.
put your for loop in a seperate function returning a double (the score). make sure you save the score you read in to a variable (for example sum += score) every time you do a cin.
If it's always three numbers, rename your calcAverage function so you know it will always calculate the average of three numbers.