I think what you want is actually done on the shell, or command line if you are on Windows. You can loop through each file and execute each script in order. You are then able to have the actual generate a report to save in a file after they are done processing, by using the open() command in python.
The syntax of the bash script would be,
for file in /path/to/dir_with_files/*.py;
do;
python $file;
done;
That will loop through the file with the programs and execute each one ending in a .py extension.
Now, to send a report to yourself after all have been tested and executed with the above script. You will need to do 2 things to do this,
- Create a textfile with the results of the tests
- Send it to yourself through an email lib
Number 1 is the easy part. To do this, you just want to write the results of each test to a file, like so,
results = open('results.txt', 'w')
results.write('results') #This is going to need to be what the results of
#the test are, I.E. the numbers it produces, or such
results.close()
You will just need to add that to the end of each of the scripts, to create a text file that can than be sent using step 2.
Step 2 is a bit more tricky. To do this, you'll need one of 2 things, a module to interact with whichever mail client you use, (gmail, comcast, yahoo, etc), or your own SMTP server to send the mail from there. If you use the latter, Python has a built in module to deal with that, documented here.
Now, if you want to interact with your mail client, you will need to download a module and install said module to use. For example, gmail has this, which logs you into their service and will send a message through their server. I'm sure that most popular email clients will have a module like this, so just google around for it. This is much easier than method 1, as you do not need an SMTP server.