我目前正在开发一个大型业务应用程序,我将使用 Solver Foundation 和 Solver Foundation Services 来解决用户定义的约束和输入的巨大投资组合优化问题。问题通常是大约 5-10 000 个变量和几千个约束。
我已经开始使用 SFS 进行开发,但是在单元测试我的代码时遇到了严重的问题。我想测试我设置的问题是否正确,所有约束都有正确的输入并且所有参数设置正确。但要做到这一点,我需要针对 SolverContext 编写单元测试,更具体地说,是 Parameter 对象和 Constraint 对象。而这些类是完全封闭的。除了它们的名称、表达式和索引集之外,我似乎无法从它们那里得到任何信息。
有没有办法测试给定索引的参数值?
IE
var value = myParameter.GetValueFor(anObjectsID);
Assert.That(value, Is.EqualTo(expectedValue);
我似乎找不到任何有关 Solver Foundation 和单元测试的文档或文章。
有什么想法或意见吗?
朱利安