BCDE原则
编写单元测试用例时,为了保证被测模块的交付质量,需要符合BCDE原则。
B: Border,边界值测试,包括循环边界、特殊取值、特殊时间点、数据顺序等。
...D: Design,与设计文档相结合,来编写单元测试。
E: Error,单元测试的目标是证明程序有错,而不是程序无错。...那么我们该如何编写这样的测试呢?...我们可以看到,根据不同的策略,allocateHost里还会有好几个flow.而由于松耦合架构,我们可以在测试中轻易的模拟极端问题的出现,如:
找不到合适的BackupStorage
HostCapacity...在编写正确性测试时,我们可以考虑额外关注以下几点:
APIParam在各个Flow间中转时是否如预期
关注管理节点内的服务:
Flow之间调用的时序是否符合预期
Flow之间流转时,业务目标状态是否符合预期