How to use pict to generate test cases
I'm using pict (Pairwise Independent Combinatorial Testing to开发者_StackOverflow社区ol) as my tool. I'm trying to generate test cases using these constraints:
video_resolution: 352x240,352x288,640x480,704x480,704x576,720x240,720x480,720x576
video_rotate: 0,90,180,270
IF [video_resolution] IN { "640x480"} THEN [video_rotate]="90" OR "180";
but I'm having trouble doing so.
One more thing: what is <>
sig used for? Means <>
operator.
Amit,
A couple comments. The first is a solution. The 2nd two concern where benefits from the kind of test design approach you're asking about tend to be largest.
1) Here is a very short video to how your problem could be solved using Hexawise, a test case generator similar to PICT. To mark the invalid pairs, simply click on the symbols to the right of the relevant parameter values.
http://www.screencast.com/users/Hexawise/folders/Camtasia/media/5c6aae22-ec78-4cae-9471-16d5c96cf175
2) Your question involves 8 screen size resolutions and 4 video rotations. Pairwise coverage (AKA 2-way coverage) will require 32 test cases - or 30 test cases once you eliminate the 2 invalid combinations. This is an OK use of PICT or Hexawise (e.g., they'll make sure you don't forget any valid combination) but where you will really see dramatic benefits is when you have a lot of parameters. In such cases, you'll be able to indentify a small subset of test condition combinations that will be surprisingly effective at triggering defects with only a tiny portion of the total possible test cases.
3) If you had 20 Parameters with 4 values each, for example, you would have more than 1 trillion possible tests. If you set your coverage strength to pairwise (e.g., 2-way coverage), you would be able to achieve 100% coverage of all pairs of values in at least one test in only 37 tests.
An example demonstrating this is shown here: http://www.screencast.com/t/YmYzOTZhNTU
Coverage is adjustable as well. You can use this to alter your coverage strength based upon time available for testing and/or risk-based testing considerations. If you wanted to achieve 100% coverage of all possible combinations of 3 paramter values in at least one test, you would require 213 tests to do so. Furthermore, if you were relatively more concerned about the potential interactions between 3 of the sets of parameters (think, e.g., "Income" and "Credit Rating" and "Price of House" in a mortgage application example vs. other, less important test inputs), then you would be able to create 80 tests to match that objective. The flexibility of this test design approach (available in both PICT and Hexawise) are powerful reasons to use these kinds of test design tools.
Hope these tips help.
Full disclosure: I'm the founder of Hexawise.
Late answer, but just for others experiencing simular problems: Your condition must be:
video_resolution: 352x240,352x288,640x480,704x480,704x576,720x240,720x480,720x576
video_rotate: 0,90,180,270
IF [video_resolution] = "640x480" THEN [video_rotate] in {"90", "180"};
<>
means NOT
. In your case you could do:
IF [video_resolution] <> "720x576" THEN [video_rotate] >= 180;
This means: "If video_resolution is not 720x576, then video_rotate must be equal or larger than 180"
精彩评论