The advantage of “Fractal MVC” architecture: simple BDD testing without foreign framework
In a previous article, I did present an evolution of HMVC architecture pattern I called “Fractal MVC”. I mentioned briefly that, apart from MVC, it did implement reactive programming and state machine concept.
Apart from fulfilling the business and technical requirements, a major collateral consequence is Agile testing. With such implementation, the software becomes a full simulator of the application domain. You can easily record user’s action in time, replay them or invent business scenarios by chaining them in a kind of file journal with timestamp or sequence order.
You can do not only unit testing but also functional/system testing especially regression testing. You can above all do BDD style testing without the need of a specific domain language or complex framework. By using the record feature above would be similar to Excel Macro recording so that End Users could even generate / modify them easily or at least easily collaborate with developers/testers. Since the architecture implementation was meant to be portable, your test assets will also be easily portable also because it uses the same paradigm.