我有一个用WinForms编写的应用程序,它只包含一个TextBox。使用TestComplete spy,我可以发现TextBox及其属性,但在运行时,与所有其他控件相比,这个控件无法通过其名称或任何其他属性发现。为什么会出现这种情况?我该如何修复它(无论是在应用程序端还是在测试端)?
控件的定义如下:
this.myTxtBx.BackColor = System.Drawing.SystemColors.InactiveBorder;
this.myTxtBx.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.myTxtBx.Location = new System.Drawing.Point(74, 25);
this.myTxtBx.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.myTxtBx.Name = "myTxtBox";
this.myTxtBx.Size = new System.Drawing.Size(91, 20);
this.myTxtBx.TabIndex = 1;
this.myTxtBx.TextChanged += new
System.EventHandler(this.myTxtBox_TextChanged);
1条答案
按热度按时间4ioopgfo1#
您需要在运行时使用ObjectMapperMap对象,给予它一个别名并在脚本中使用它。
(TC有自己的winapp驱动程序协议,读取屏幕非常像所有主要浏览器都支持的W3Cs webdriver,使自动化成为可能)。
下面是一个使用WIX的js-function,它查找对象Map表单并输入值(您的别名可能类似于:
Aliases.YourApp.myTxtBx.TextChanged
):