当然,单元和集成测试通常作为开发过程的一部分执行。我正在寻找在现有系统配置中使用此方法的方法,在本例中为Asterisk soft PBX。
在 Asterisk 的情况下,配置文件和其他任何东西一样是一种编程语言,包含循环、跳转、条件等,并且可以变得相当复杂。配置更改通常会遇到与复杂软件产品更改相同的问题——如果没有适当的测试,很难预见所有影响。更糟糕的是,系统的本质是与外部实体进行通信,即打电话。
我有一些关于使用调用文件(在扩展之间创建特定调用)测试系统的想法,同时观察管理器界面生成的事件。然后测试可以观察预期的结果,即拨打 *99# 应该会导致语音邮件应用程序被调用。
缺陷很明显——它不测试实际结果,只测试系统认为的结果,并且可能需要对被测系统进行一些修改。编写足够健壮的这些测试以仅在预期输出上触发也非常困难,尤其是在系统正在使用中(即正在进行其他调用)时。
我想要的 Asterisk 测试系统是不可能的吗?如果没有,您对如何以合理的方式解决此问题有任何想法吗?我愿意为此投入大量的开发时间,并在友好的许可下发布结果,但我不确定处理它的最佳方法。