Assuming you are looking at some kind of input, I presume your test case variables here are organized a little like this:
- Number of strings - 1, 2, 4
- Total length - 9, 10, 13, 15, 16
- Character set - alpha, special characters, numeric
- Casing - lowercase, uppercase
Your dependencies and limitations are probably:
- Only alpha character sets can have casing
- more than one string must include a separator (probably the space key)
- Number of strings and total length variables cannot be combined
- Character set and casing can be combined
That means you have:
- 3 possible string counts
- 5 string lengths
- Because character sets don't combine against themselves (that is, it's useless to have alpha + alpha as a character set variable) you have 7 possible character set groupings:
- alpha
- numeric
- special characters
- alpha + numeric
- alpha + special
- numeric + special
- alpha + numeric + special
- 3 casing sets
- Upper case
- lower case
- mixed case (upper + lower)
That makes the total number of character set + casing combinations 12: 3 casing options multiplied by the 4 character set groupings containing alpha characters.
So, if you choose to test each possible combination of string count, string length, character set, and casing you will have:
(number of strings)*(length)*(character set + casing)
or:
3*5*12 = 180 test cases
Also why do you want to compute the total number of test cases? The value in doing equivalence class partitioning is to REDUCE the total number of tests you need.
– Chris Kenst May 23 '17 at 16:57