我想要一个状态,当FACULTY MEMBER = no时,则不需要FISCAL YEAR(它将处于OFF状态)。我使用N / A作为解决方案,但这也意味着N / A是一个选项,因此PICT工具将给我更多的结果。如果FACULTY MEMBER = NO,那么,如果没有FISCAL年,我该怎么办呢?
FACULTY MEMBER: yes, no
FISCAL YEAR: 9, 10, 11, FISCAL YEAR, N/A
IF [FACULTY MEMBER] = "NO" THEN [FISCAL YEAR] = "N/A";
IF [FACULTY MEMBER] = "YES" THEN [FISCAL YEAR] <> "N/A";
答案 0 :(得分:0)
实际上,在可能的参数值列表中使用“n / a”值并不是一个坏习惯(当然,如果它对应于参数没有值的事实)。
在您的情况下,您想避免为“FISCAL YEAR”参数设置值,如果“FACULTY MEMBER”为“no”,对吗?但是在这种情况下应该对待测试的应用程序做些什么呢?我假设“FISCAL YEAR”输入字段(或您对此参数的控制类型)将被禁用和/或将自动选择默认值?在这种情况下,您的模型是正确的,因为“N / A”对应于没有行动。
如果使用“N / A”生成的测试用例会让您感到恼火,或者您根本不需要它们,请在生成测试用例后将其过滤掉并删除。
PS:为了减少包含“N / A”选项的测试用例数,你也可以在PICT中使用“负”标志,默认情况下在参数值前面是“〜”。
在您的情况下,模型将如下所示:
FACULTY MEMBER: yes, no
FISCAL YEAR: 9, 10, 11, FISCAL YEAR, ~N/A
...
答案 1 :(得分:0)
我只会添加一个约束如下:
FACULTY_MEMBER: yes, no
FISCAL_YEAR: 9, 10, 11, NA
IF ([FACULTY_MEMBER] = "no") THEN [FISCAL_YEAR] <> "NA";
这会生成以下内容(当然我的配置):
/# FACULTY_MEMBER FISCAL_YEAR Notes
1 no 10
2 yes 11
3 no 11
4 no 9
5 yes NA
6 yes 10
7 yes 9