E-TBB-+TB$T-FPP-FP$F-Ei请参照上述LL1文法设计测试用例并说明设计原因
测试用例:
- i
- i+i
- i*i
- (i+i)*i
- i*(i+i)
- (i+i)*(i+i)
- (i+i)+i*i
- i*(i+i)+i
- (i+i)(ii+i)
- (i+i)*i+i
设计原因:
- 测试用例1:最简单的情况,只有一个终结符号i。
- 测试用例2:测试加法运算。
- 测试用例3:测试乘法运算。
- 测试用例4:测试带括号的乘法和加法运算。
- 测试用例5:测试带括号的乘法和加法运算。
- 测试用例6:测试带括号的乘法和加法运算。
- 测试用例7:测试带括号的乘法和加法运算。
- 测试用例8:测试带括号的乘法和加法运算。
- 测试用例9:测试带括号的乘法和加法运算。
- 测试用例10:测试带括号的乘法和加法运算。
设计测试用例的原因是,根据LL(1)文法的特点,每个非终结符号的FIRST集合和FOLLOW集合是不交的,所以需要设计不同的测试用例来覆盖这些集合。同时,为了验证语法分析器的正确性,需要设计各种复杂的情况,包括带括号、多个运算符等。
原文地址: https://www.cveoy.top/t/topic/heSk 著作权归作者所有。请勿转载和采集!