2016-08-04 56 views
0

我使用命令行中的Pex來查找測試用例生成的輸入值。 我使用PexObserve在執行過程中記錄某些值。 我想要記錄的一個值是XML-String。PexObserve只記錄255個字符

但是,解析XML時,我收到「格式不正確的XML」異常,因爲Pex只會將前255個字符寫入日誌。

有沒有辦法記錄完整的XML字符串?或者PexObserve有不同的類型可以讓我記錄更長的文本?

回答

0

如果有人在任何時候都有同樣的問題,請留下此處。 我找到了一個幫助我的解決方案。

不幸的是,255字符限制在static readonly字段內部設置。 因此我需要使用反射。 我的解決方案的工作方式,包括在把下面的一行:

typeof(Microsoft.Pex.Framework.PexObserve.ValueWriterManager).GetField("MaxWrittenElements").SetValue(null, 1000); 

與你喜歡的任何值替換1000

但記住,這是一個快速解決方案,可能不適合你。 它可能有不必要的副作用。你也正在改變寫入的List元素的數量,也許還有其他的東西。