利用UML对象约束语言检查BART测试场景
1. USE系统检查与BART案例输入
在使用USE系统时,我们发现即使系统给出“未找到有效系统状态”的答案,也可能具有重要意义。例如,当激活两个冲突的不变式 Controller::northYGwestR 和 Controller::northRwestG 时,系统旨在找到一个控制器处于状态图中两种状态的系统状态,但最终报告无法找到有效系统状态,且已检查了所有$4096 = 2^{12}$种可能的系统状态。这$2^{12}$种状态源于4个信号灯,每个信号灯有3个属性,每个属性有2种可能的值。以下是相关命令序列:
use> !set e.r=1
use> ?Sequence{n.r,n.y,n.g, s.r,s.y,s.g, w.r,w.y,w.g, e.r,e.y,e.g}
-> Sequence{0,1,1, 0,1,1, 1,0,0, 1,0,0} : Sequence(Integer)
use> gen flags Controller::northYGwestR -d
use> gen flags Controller::northRwestG -d
use> gen start trali.assl switch(Sequence{c})
use> gen result
Random number generator was initialized with 9833.
Checked 4096 snapshots.
Result: No valid state found.
超级会员免费看
订阅专栏 解锁全文
18

被折叠的 条评论
为什么被折叠?



