cancel
Showing results for 
Search instead for 
Did you mean: 

testcomplete jobselector

SOLVED
Highlighted
Contributor

testcomplete jobselector

I need to edit the projectfile the *.mds file to enable and disable the tests I like to run, this is easy to do, but require I either fire up testComplete or edit the file manually.

 

Is there a simple script, or webfrontend that can edit this file, if not I will create my own.

1 ACCEPTED SOLUTION

Accepted Solutions
Highlighted
Contributor

Re: testcomplete jobselector

During the weekend I spent some hours on this.

 

You can just save a separate *.mds file for each template.

But this does not take into account updates, so we ended up with a single *.mds file,

then using python's built in xml parser xml.etree.ElementTree and disable everything, then turn on all test that should be on and then turn on based on a template. so in case of Errors I can easily only run that subgroup of tests and save 3hours compared to the full test.

 

The only tricky part where tests that were parents but not groups, I needed to hardcode as both tests and group.

 

But what I would say this is pure xml and all xml libraries can surely edit and save it without missing any content.

 

View solution in original post

7 REPLIES 7
Highlighted
Contributor

Re: testcomplete jobselector

I forgot to mention this is for machines that do not have testcomplete, only TestExecute

Highlighted
Community Leader

Re: testcomplete jobselector

Managing the test cases to be played from the command line of Testexecute is one way for doing that:

https://support.smartbear.com/testexecute/docs/running/automating/command-line/command-line.html

 

Or use external .txt/.csv/.xlsx to list item to  be played and your test must read this file first to know which test to run.

Un sourire et ça repart

Highlighted
Community Hero

Re: testcomplete jobselector

Just to clarify @BenoitB 

 

The first suggestion means that all your Test Items in your MDS project would be enabled (checked) and you would use the command line to run the specific ones you want.  Each one you run would require another command-line to execute it individually unless you have them grouped where you can run the parent and it would execute the children.

 

The second suggestion requires code work to read from the CSV/INI file and run the code routines directly that are referenced by the Test Items.  The Test Item objects themsevles, within code, do not have a "Run" or "Execute" method on them.  But say the Test Item points to a Keyword test or a Script routine, you can execute those based upon what's in the CSV/INI file.

 

To answer your question about editing the MDS...  while it can be done, I wouldn't recommend it.  

 

As for Web interface, that's what test management tools like QAComplete or Jenkins or other such things are there for.  TestComplete doesn't have one itself (t's a client tool, not a web tool) but QA Complete can control what tests run.  


Robert Martin
[Hall of Fame]
Please consider giving a Kudo if I write good stuff
----

Why automate?  I do automated testing because there's only so much a human being can do and remain healthy.  Sleep is a requirement.  So, while people sleep, automation that I create does what I've described above in order to make sure that nothing gets past the final defense of the testing group.
I love good food, good books, good friends, and good fun.

Mysterious Gremlin Master
Vegas Thrill Rider
Extensions available
Highlighted
Community Manager

Re: testcomplete jobselector

Thank you a lot BenoitB and tristaanogre!

 

@mortenb123 did this answer you question? Please mark the appropriate answer as a solution if it did.


Sonya Mihaljova
Community and Education Specialist

Did my reply answer your question? Give Kudos or Accept it as a Solution to help others. ⬇️⬇️⬇️
Highlighted
Contributor

Re: testcomplete jobselector

During the weekend I spent some hours on this.

 

You can just save a separate *.mds file for each template.

But this does not take into account updates, so we ended up with a single *.mds file,

then using python's built in xml parser xml.etree.ElementTree and disable everything, then turn on all test that should be on and then turn on based on a template. so in case of Errors I can easily only run that subgroup of tests and save 3hours compared to the full test.

 

The only tricky part where tests that were parents but not groups, I needed to hardcode as both tests and group.

 

But what I would say this is pure xml and all xml libraries can surely edit and save it without missing any content.

 

View solution in original post

Highlighted
Community Hero

Re: testcomplete jobselector

Glad to hear this worked for you!



Robert Martin
[Hall of Fame]
Please consider giving a Kudo if I write good stuff
----

Why automate?  I do automated testing because there's only so much a human being can do and remain healthy.  Sleep is a requirement.  So, while people sleep, automation that I create does what I've described above in order to make sure that nothing gets past the final defense of the testing group.
I love good food, good books, good friends, and good fun.

Mysterious Gremlin Master
Vegas Thrill Rider
Extensions available
Highlighted
Community Leader

Re: testcomplete jobselector

Good for you but still not agree to work with MDS. Mds structure and data can change at anytime because it's not open to end customer.

I think having a function reading jobs to to do from standard xml/json/excel/txt/whatever file.. would have be better because avoid dependancy of the tool used (if you swap to another tool, the function will be certainly directly usable) and because can be more easily evolved to new needs.

 

Un sourire et ça repart

New Here?
Join us and watch the welcome video:
Top Kudoed Authors