我是 Dynamics 365 的新手,最近开始使用假 XRM 测试我的代码。
我刚刚遇到了一个与货币(货币)字段计算相关的问题,正在为其创建附加字段(名称以“_Base”结尾)。在单元测试中,货币字段的基础不会被重新计算。
场景是: - 被测代码在“Account”实体上设置“Money”类型的“turnover”字段。- 后来总结了“周转”基础货币部分。(帐户在总结之前在上下文中刷新)
localAccount.turnover = new Money(100);
...
var sumOfTurnovers = localAccounts.Sum(s => s.turnover_Base?.Value ?? 0); // <-- returns 0 in unit tests
结果:营业额总和计算为 0,而在实际开发环境中计算正确。
通常情况下,被测代码依赖于重新计算的值。
如何在单元测试中模拟此类基础货币字段的重新计算?