User interface 为什么在Visual Studio编码的UI测试中编辑UIMap.designer.cs文件不好?
我已经读到编辑UIMap.Designer.cs文件是不好的,但是我不明白为什么 根据MSDN: 不要直接修改UIMap.designer.cs文件。如果这样做,对该文件的更改将被覆盖User interface 为什么在Visual Studio编码的UI测试中编辑UIMap.designer.cs文件不好?,user-interface,automation,coded-ui-tests,qa,User Interface,Automation,Coded Ui Tests,Qa,我已经读到编辑UIMap.Designer.cs文件是不好的,但是我不明白为什么 根据MSDN: 不要直接修改UIMap.designer.cs文件。如果这样做,对该文件的更改将被覆盖 有人知道什么会被覆盖吗?这是否意味着如果在设计器文件之后编辑UIMap.uitest文件,则设计器文件将被反转?请提供帮助。每次编辑(保存)到UIMap.uitest文件后,UIMap.designer.cs文件将从UIMap.uitest文件重新生成。文件顶部有一条注释,说明这是一个生成的文件,编辑将丢失 乍一
有人知道什么会被覆盖吗?这是否意味着如果在设计器文件之后编辑UIMap.uitest文件,则设计器文件将被反转?请提供帮助。每次编辑(保存)到UIMap.uitest文件后,UIMap.designer.cs文件将从UIMap.uitest文件重新生成。文件顶部有一条注释,说明这是一个生成的文件,编辑将丢失 乍一看,需要编辑设计器文件中代码的大量更改可以通过UIMap编辑器中显示的操作和UI控件的属性面板进行编辑。有些更改确实需要手动编辑。对于这些操作,有一个命令(按钮或右键单击菜单)将操作移动到UIMap.cs文件中,在该文件中可以根据需要进行编辑和扩展。这两个UIMap…cs文件都在它们的类头中指定了
partial
,因此这两个文件都有助于相同的UIMap
当一个方法的一个动作需要手动编辑时,将该方法分成两到三部分,将需要编辑的动作放入自己的方法中是值得的。可通过按钮或右键单击菜单使用“拆分”命令。隔离动作后,其方法可以移动到UIMap.cs文件中
当移动方法并编辑它们时,我建议按照以下活动顺序进行
UI地图编辑器是Visual Studio 2012的标准配置。对于Visual Studio 2010,编辑器是由功能包2添加的。另一个选项是创建另一个类文件,例如,创建
Class1.CS
,并将所有代码从UIMap.Designer.CS
和UIMap.CS
移动到Class1.CS
。现在,无论何时记录任何内容,重新生成的代码都会自动生成在UIMap.Designer.cs
文件中,因此只要将相同的代码复制到Class1.cs
并根据需要更改那里的代码,并且在运行主测试时只需调用this.Class1.launch()代码>它将运行codedTest
它还将使您免于拆分UIMap.uitest
中的方法,然后将其移动到UIMap.cs
甚至还有一个单独的类,包括对codedUItest
的所有更改,在Visual Studio中打开UIMap.uitest文件,然后单击“将代码移动到UIMap.cs”
您的函数将从designer.cs
移动到UiMap.cs我不会把它作为一个答案,因为我对UiMap一无所知,但一般来说,如果您在任何地方看到designer.cs文件,这意味着负责生成该文件的任何人都可以自由重写它,可能是从头开始,只要您以正常方式修改主文件,就可以从头开始。所以基本上,是的,可能。谢谢,这很有意义。回答得很好。谢谢。在MTM中运行时如何?回答问题很好,但我没有看到其他旧答案中没有提到的任何内容。这个答案并没有解释为什么移动代码是有用的。