Если вам нужно получить поле и значения только для модульного тестирования, рассмотрите возможность использования Microsoft PrivateObject
Это там, чтобы вы могли проверить внутреннее состояние элементов данных во время модульного тестирования, если вам нужно, что, похоже, то, что вы пытаетесь сделать.
В своих юнит-тестах вы можете сделать следующее:
MyObject obj = new MyObject();
PrivateObject privateAccessor = new PrivateObject(obj);
Dictionary<string, double> dict = privateAccessor.GetFieldOrProperty("averages") as Dictionary<string, double>;
Тогда вы можете свободно выбирать и устанавливать любые значения из словаря.