Forum Discussion
I'm sorry if I'm unclear, I'll try to explain more:
I have a suite of separate tests (12) to run on two client/slave computers. 5 on one, and 7 on the other. One server has a master pjs-file, and controls the test run on the client/slave computers.
I can setup a job with two tasks to run one sub-tests on two clients in parallel, but the job finishes only when the last client has finished and the other client is idle until then. I would like to run five tests on one client and seven on the other. The total time each client runs is fairly equal, but the individual tests clocks in differently.
I can also setup batch running in the project page to run all slave projects in succession, but then one client is idle, while the other runs a test.
In the documentation for TestComplete there is one page describing parallel testing the way I would like it to work: https://support.smartbear.com/testcomplete/docs/testing-approaches/parallel-testing.html
The setup I have corresponds to this description, except that I have more than one test to run on each slave computer; one after the other.
The only way I have found to do this is to make a controller script loop on the master computer that starts tests and checks the status on the slaves.
Is this the only option I have in my case?
PS: I have the licenses I need. TestComplete on the servers, and TestExecute on the client/slave machines, so that is not an issue.
stein_oddvar_ra wrote:
The setup I have corresponds to this description, except that I have more than one test to run on each slave computer; one after the other.
The only way I have found to do this is to make a controller script loop on the master computer that starts tests and checks the status on the slaves.
So... you have multiple tests to run on the slaves. Let's clarifiy some definitions...
PJS = Project Suite. This is an organization in TestComplete that has one or more projects. The PJS itself can be run to execute those projects in a configured order
Project = A collection of tests to be executed, stored in an MDS file. Usually, a project will contain multiple test cases, either as Keyword tests, script routines, or some sort of framework structure for executing tests.
Test = A specific test case that executes to verify/validate a portion of the AUT.
These are the definitions I operate from. so, you say you have 12 tests to run on on two client/slave computers. Are you using "test" in the same way I am? Or are your "tests" actually projects? The answer actually matters because the structure indicated in that article you posted assumes that each item running in parallel is a project that contains multiple tests. So, you can execute, on two slave machines, two projects in parallel.
If your 12 "tests" are 12 "projects" that you want to just split up among the two machines, your best bet is what has already been suggested... organize your projects into two project suites, one with 5 the other with 7, and use some external tool to kick off those project suites at the same time.
Now, in looking at that article, it does seem to imply that a master project can execute project SUITES on the two slave machines... HKosova might be able to comment on that... if that's the case, the organization I mentioned should still work just that you would use your Master to kick of the suites, not the individual projects.
Related Content
- 2 years ago
- 6 years ago
- 4 years ago
Recent Discussions
- 6 hours ago
- 3 days ago