出于测试原因设置状态机的状态

问题描述

为了实现单元测试,我需要设置对象的特定状态。由于状态是通过状态机实现的,因此 MDriven 拒绝将状态值直接分配给属性

我可能会触发整个状态机,直到达到所需的状态,但我认为有一种更简单的方法可以将状态设置为相当隐藏的特定值,因为它通常不应该以这种方式工作.

有人知道这是怎么做到的吗?

解决方法

是 - 在此处阅读详细信息https://wiki.mdriven.net/index.php/StateMachineForceMode

但基本上,您将属性的状态机设置为 ForceMode - 之后您可以自由更改状态值:

self.stateMachineForceMode('State'); 
self.State:='State3';