【发布时间】:2008-09-19 00:04:10
【问题描述】:
作为 TDD 的初学者,我正在尝试编写一个测试,假设属性在 PropertyGrid(C#、WinForms、.NET 3.5)上的值已更改。
更改属性网格中对象的属性不会触发事件(很公平,因为它是 UI 引发的事件,所以我可以看到为什么更改拥有的对象可能对其不可见)。
在更改 SelectedNode 属性时,我也遇到了相同的问题,即在 TreeView 上触发 AfterSelect。
我可以有一个我的单元测试可以调用的函数来模拟 UI 事件将触发的代码,但这会使我的代码混乱,除非我将其公开,否则我将不得不在我正在测试的对象的同一个项目,甚至是同一个类(再次,我认为这是混乱的)。这对我来说似乎很难看,并且会遇到可维护性问题。
是否有进行这种基于 UI 的单元测试的约定
【问题讨论】:
标签: c# winforms unit-testing