Link Test Cases with Each Other?

Douglas Wagner, modified 7 Years ago.

Link Test Cases with Each Other?

Youngling Posts: 3 Join Date: 5/7/16 Recent Posts
I'm unsure if this is supported, supported in enterprise only, a "there's a better way to do this", or not feature/functionality at all, please help me or consider this a feature request.

I apologize for the length of this...I'm trying to lay the idea out so that if I've missed a logical step somewhere, someone can correct me.

In software testing, there's generally different outcomes based upon different inputs...often the same component has differing branches of output depending upon choices you make with Input.  Even components with no branches (same input, same output each time) are generally part of a larger sub-system or system which does branch.

As an Example, if I were testing dialog in a game;  if I choose response options 1, 2, 3, I may get one outcome...if I choose options 1, 2, 2 I may get another outcome.  In a broader sense, a series of dialogs, all based off of previous choices could branch down into a signficiantly sized tree.

There are multiple ways to set this up within Klaros, but generally I would create a test case (TC00001) with steps for the first dialog, if that dialog branches into two different paths I would then consider setting up a test case for each of those branched paths for the next dialog (TC00002 and TC00003)...however both of those test cases would need a pre-condition of having the first test case run (TC00001).

TC00001 -> TC00002 creates one "path" through the dialog while TC00001 -> TC00003 creates a second "path" through the dialog, each path produces a different outcome.  Each Test case has an Expected Result, but there is ALSO an expected result for the path.

I can then create two test suites, one for each path...and at this point I have component level tests.

Now, here's where my problem comes in...lets now say I want to move up to subsystem testing.  I have 4 completely different dialogs for which each path through each of the 4 component level suites creates an outcome by component.  I now want to develop a subsystem test that takes a chosen path for each of those 4 components and verifies the outcome as a whole...if I choose outcome 1, 2, 2, 1 through my 4 components do I get a different outcome than if I choose 2, 2, 1, 1.

As far as I can tell in Klaros, I now need to create another Test Suite and roll in each of the test cases for the path I want to create, in essence re-creating my component tests in a larger subsystem test.  What i'd LIKE to be able to do is create a subsystem test suite by selecting specific component level test suites instead of having to reproduce those suites all over again.  

In general, Klaros has no hierarchical way of strinigng test cases together.  You have tests and you have test suites which are nothing more than a string of tests.  By the time you get from Component to Subsystem to System to Integration to Acceptance test suites, you've re-created the wheel over and over and over again...every one of those Test Suite creators has had to understand the in-depth linkages between the component level tests...the guy creating the integration test suite for the entire piece of software had to know that there was a branch at the TC00001 level that would take you to EITHER TC00002 or TC00003...because a test suite with TC00001, TC00002 and TC00003 in it can't be properly tested.

Is there a way to link suites to other suites so as not to reproduce the wheel when designing test cases and test suites?  Is there a better way to lay out test cases such that this doesn't happen?

Further, is there a way to "bucketize" or "group" test cases such that it's easy to understand this group of test cases is part of one feature/functionality set and these cases all go together?  I'm looking for something like a folder structure that I can put all Test Cases relating to feature "X" into.  This isn't requirements, this is an interface that doesn't include laundry listing 10K test cases all together and having to page through 200 pages of tests to find the one you want (assuming you don't have enough information to filter for it).
thumbnail
Torsten Stolpmann, modified 7 Years ago.

RE: Link Test Cases with Each Other? (Answer)

Jedi Council Member Posts: 755 Join Date: 2/12/09 Recent Posts
Hello Douglas,

Thanks for the elaborated question which really helps to get a good understanding of your requirements (well hopefully emoticon).

I see two key points in your question:

1. You like to have a hierarchical structure of your test cases/suites

In addition to the test case / test suite relations Klaros allows you to build test execution plans by
assigning the execution of test cases/test suites to Jobs. Jobs can be nested in a hierarchical way,
so in this way you can build a job which contains the execution of several testsuites on arbitrary levels.

So each Job may contain an amount of sub jobs to execute in sequence or contain the execution of a test suite or test case.

If you like to have more control over when a job in your execution plan is ready for execution you may
add dependencies to a job which refer to the execution state of other jobs (e.g. only allow to execute this job if another job
has been executed successfully).

Please refer to this section of the manual for details: http://www.klaros-testmanagement.com/files/doc/html/User-Manual.ResourceManagement.html

2. You like to group test cases into arbitrary categories

There is indeed a way to group test cases (or other artifacts) together using categories.
Categories are a feature of Klaros-Testmanagement Enterprise Edition and are described in-depth
in the manual here: http://www.klaros-testmanagement.com/files/doc/html/User-Manual.Functions.html#User-Manual.Functions.Main.CategoryView

Please do not hesitate to follow up with more questions if I missed something here.

Kind regards,

Torsten