基于模型的测试框架的想法 (二)

来源:互联网 发布:航盛导航端口 编辑:程序博客网 时间:2024/05/22 12:52

为什么会想起来要建立测试的模型,主要是基于一个以前项目的想法。下面是这个项目的例子,非常容易明白,输入是命令行的语法,输出是可能的所有命令的组合,还有一个图例,用线条表示出所有可能的命令组合。


Input:

command -option1 <value1> -option2 { { value2-1 | value2-2 } -option3 <value3> { -option4 <value4> | -option5 } -option6 <value6> { -option7 <value7> | -option8 } | { value2-3 | value2-4 } -option9 <value9> { -option10 <value10> | -option11 } }


Output:

 command -option1 <value1> -option2 value2-1 -option3 <value3> -option4 <value4> -option6 <value6> -option7 <value7>
 command -option1 <value1> -option2 value2-4 -option9 <value9> -option10 <value10>
 command -option1 <value1> -option2 value2-2 -option3 <value3> -option4 <value4> -option6 <value6> -option7 <value7>
 command -option1 <value1> -option2 value2-1 -option3 <value3> -option4 <value4> -option6 <value6> -option8
 command -option1 <value1> -option2 value2-1 -option3 <value3> -option5 -option6 <value6> -option7 <value7>
 command -option1 <value1> -option2 value2-3 -option9 <value9> -option10 <value10>
 command -option1 <value1> -option2 value2-4 -option9 <value9> -option11
 command -option1 <value1> -option2 value2-1 -option3 <value3> -option5 -option6 <value6> -option8
 command -option1 <value1> -option2 value2-2 -option3 <value3> -option4 <value4> -option6 <value6> -option8
 command -option1 <value1> -option2 value2-2 -option3 <value3> -option5 -option6 <value6> -option7 <value7>
 command -option1 <value1> -option2 value2-3 -option9 <value9> -option11


Output with Graph:


Another example:

input:

getup eat { bread | egg | noodle | apple } [ drink { juice | water | milk } ] { work | play { swimming | pool | football | basketball | badminton | pingpang } | listen music | watch { movie | TV } } 

output:

optimized possible combinations:


 getup eat bread drink juice work
 getup eat bread drink juice play swimming
 getup eat noodle drink milk listen music
 getup eat noodle drink milk watch movie
 getup eat noodle drink milk work
 getup eat noodle drink milk play pool
 getup eat noodle drink milk play football
 getup eat noodle drink milk play basketball
 getup eat noodle drink milk play badminton
 getup eat noodle drink milk play pingpang
 getup eat noodle drink milk watch TV
 getup eat bread drink water work
 getup eat apple drink juice work
 getup eat egg drink juice work
 getup eat noodle drink milk play swimming
 getup eat apple drink juice listen music
 getup eat apple drink juice watch movie
 getup eat bread drink water play swimming
 getup eat bread drink water play pool
 getup eat apple drink juice play swimming
 getup eat apple drink juice play pool
 getup eat apple drink juice play football
 getup eat apple drink juice play basketball
 getup eat apple drink juice play badminton
 getup eat apple drink juice play pingpang
 getup eat apple drink juice watch TV
 getup eat bread drink water play football
 getup eat apple drink water listen music
 getup eat apple drink water watch movie
 getup eat bread drink water listen music
 getup eat bread drink water watch movie
 getup eat egg drink juice play swimming
 getup eat egg drink juice listen music
 getup eat egg drink juice watch movie
 getup eat apple drink water work
 getup eat apple drink water play basketball
 getup eat apple drink water play badminton
 getup eat apple drink water play pingpang
 getup eat apple drink water watch TV
 getup eat bread drink water play basketball
 getup eat apple drink milk work
 getup eat bread drink water play badminton
 getup eat bread drink water play pingpang
 getup eat bread drink water watch TV
 getup eat bread drink milk work
 getup eat egg drink juice play pool
 getup eat egg drink juice play football
 getup eat egg drink juice play basketball
 getup eat egg drink juice play badminton
 getup eat egg drink juice play pingpang
 getup eat egg drink juice watch TV
 getup eat egg drink water work
 getup eat egg drink milk work
 getup eat noodle drink juice work
 getup eat noodle drink water work


Graph with combinations:



0 0
原创粉丝点击