L
LurfysMa
I am working on a utility program to help test programs figure out
which test to run next.
Each test program will have a number of test categories and within
each category, anywhere from 100 to 100,000 "trials". Within each
category, the trials are graded in some way. Sometimes, the test
perogtram will start with trial #1 and run through them in order.
Other times, it will only run trials 500-1,000. Still other times, it
will select a random trial.
After each trial, it will send the results to the utility program,
which will keep track of them, do some calculations, and decide if
that trial needs to be rerun. If it does, it will tell the test
program to rerun it. If not, it will check to see if any of the
previous-run trials in that category need to be rerun. If yes, it will
tell the test program which one. If not, it will tell it to choose a
new trial that has not yet been run.
This is where the problem arises. How can the test program figure out
which new trial to select?
It needs to run a query that asks the database to return a trial
number that (a) has not been run yet and (b) meets the selection
criteria (within 500-1000, random, etc.).
The utility program has the list of trials that have been run in each
cagtegory. The test program has no need to keep track of that
information except to tun the "next trial" query.
I would prefer that the test program not have access to the utility
program database.
Here are the solutions I thought of:
1. Just have the test program maintain a table on the trial that have
been run. Thos will be redundant data as it is already being tracked
by the utility program. This is the simplest (I think), but has
duplicate data. I am not sure how bad this would be. Some of the
categories can have hundreds of thousands of trials.
2. Devise a way for the utility program to pass back a dataset
containing the list of previously-run trials. This could be a farily
large dataset.
3. Allow the test progrtam to query the test database. Is it possible
to query tales in different databases?
Any other ideas?
Thanks
which test to run next.
Each test program will have a number of test categories and within
each category, anywhere from 100 to 100,000 "trials". Within each
category, the trials are graded in some way. Sometimes, the test
perogtram will start with trial #1 and run through them in order.
Other times, it will only run trials 500-1,000. Still other times, it
will select a random trial.
After each trial, it will send the results to the utility program,
which will keep track of them, do some calculations, and decide if
that trial needs to be rerun. If it does, it will tell the test
program to rerun it. If not, it will check to see if any of the
previous-run trials in that category need to be rerun. If yes, it will
tell the test program which one. If not, it will tell it to choose a
new trial that has not yet been run.
This is where the problem arises. How can the test program figure out
which new trial to select?
It needs to run a query that asks the database to return a trial
number that (a) has not been run yet and (b) meets the selection
criteria (within 500-1000, random, etc.).
The utility program has the list of trials that have been run in each
cagtegory. The test program has no need to keep track of that
information except to tun the "next trial" query.
I would prefer that the test program not have access to the utility
program database.
Here are the solutions I thought of:
1. Just have the test program maintain a table on the trial that have
been run. Thos will be redundant data as it is already being tracked
by the utility program. This is the simplest (I think), but has
duplicate data. I am not sure how bad this would be. Some of the
categories can have hundreds of thousands of trials.
2. Devise a way for the utility program to pass back a dataset
containing the list of previously-run trials. This could be a farily
large dataset.
3. Allow the test progrtam to query the test database. Is it possible
to query tales in different databases?
Any other ideas?
Thanks