C# 无法对隐藏控件执行“单击”
我有索赔Id文本框,若索赔Id重复,索赔Id文本框下方会出现索赔找到链接。单击此链接时,将显示现有索赔详细信息。我需要测试这个点击事件和弹出窗口C# 无法对隐藏控件执行“单击”,c#,asp.net,coded-ui-tests,C#,Asp.net,Coded Ui Tests,我有索赔Id文本框,若索赔Id重复,索赔Id文本框下方会出现索赔找到链接。单击此链接时,将显示现有索赔详细信息。我需要测试这个点击事件和弹出窗口 public HtmlHyperlink UIClaimFoundHyperlink { get { if ((this.mClaimFoundHyperlink == null)) { this.mClaimFoundHyperlink = new HtmlHype
public HtmlHyperlink UIClaimFoundHyperlink
{
get
{
if ((this.mClaimFoundHyperlink == null))
{
this.mClaimFoundHyperlink = new HtmlHyperlink(this);
#region Search Criteria
this.mClaimFoundHyperlink.SearchProperties[HtmlHyperlink.PropertyNames.Id] = "aClaimLink";
this.mClaimFoundHyperlink.SearchProperties[HtmlHyperlink.PropertyNames.Name] = null;
this.mClaimFoundHyperlink.SearchProperties[HtmlHyperlink.PropertyNames.Target] = null;
this.mClaimFoundHyperlink.SearchProperties[HtmlHyperlink.PropertyNames.InnerText] = "Claim Found";
this.mClaimFoundHyperlink.FilterProperties[HtmlHyperlink.PropertyNames.Title] = null;
this.mClaimFoundHyperlink.FilterProperties[HtmlHyperlink.PropertyNames.Class] = "listTblData-hotlink-noalign";
#endregion
}
return this.mClaimFoundHyperlink;
}
}
if (claimFound_Hyperlink.Exists)
{
Mouse.Click(claimFound_Hyperlink);
}
但这是投掷
无法对隐藏控件执行“单击”
我尝试了现有的解决方案,但没有为我工作。
我可以在UI上看到控件
我在“alt”类型“value属性”上看到异常
ex->“claimFound\u Hyperlink.Alt”引发了类型为“System.NotSupportedException”的异常
这可能是个问题吗
请提供帮助。当第二次显示窗口时,可能会发生这种情况。从外观上看,这两扇窗户是一样的,但它们是不同的。当窗口第一次出现并且编码的UI访问它时,上面显示的属性代码将this.mClaimFoundHyperlink设置为引用该窗口。当第二次显示窗口时,此.mClaimFoundHyperlink仍指第一个窗口,该窗口不再可用。因此有例外 有时刷新属性会起作用。尝试调用this.mClaimFoundHyperlink.Find
另请参阅有关类似问题的信息。当第二次显示窗口时,可能会发生这种情况。从外观上看,这两扇窗户是一样的,但它们是不同的。当窗口第一次出现并且编码的UI访问它时,上面显示的属性代码将this.mClaimFoundHyperlink设置为引用该窗口。当第二次显示窗口时,此.mClaimFoundHyperlink仍指第一个窗口,该窗口不再可用。因此有例外 有时刷新属性会起作用。尝试调用this.mClaimFoundHyperlink.Find
另请参阅关于类似问题的内容。我最近遇到了类似的问题,问题是,仅当浏览器窗口最大化时,UITestControl和HtmlCell才不可见。在尝试单击之前,我使用此代码还原窗口:
BrowserWindow browser.Restored = true;
这可能对你也有用
另一个注意事项是,我在其中运行测试的VM的屏幕分辨率必须达到一定的大小,才能使单击操作正常工作。我知道这很疯狂,但在它开始工作之前,我挣扎了一周。试着提高你的屏幕分辨率 我最近遇到了一个类似的问题,问题是,在我的例子中,只有当浏览器窗口最大化时,UITestControl一个HtmlCell才是不可见的。在尝试单击之前,我使用此代码还原窗口:
BrowserWindow browser.Restored = true;
这可能对你也有用
另一个注意事项是,我在其中运行测试的VM的屏幕分辨率必须达到一定的大小,才能使单击操作正常工作。我知道这很疯狂,但在它开始工作之前,我挣扎了一周。试着提高你的屏幕分辨率 鼠标,点击?是否将web与桌面编程混淆?将属性中的代码重构为方法。从属性调用该方法,并在何时找到claimFound\u Hyperlink.ExistsMouse.Click?是否将web与桌面编程混淆?将属性中的代码重构为方法。如果claimFound\u Hyperlink.exist,则从属性调用该方法。当您使用大量ajax时,经常会发生这种情况-这是一个好帮手库有用的地方-当您使用大量ajax时,经常会发生这种情况-这是一个好帮手库有用的地方