CodedUI声明一个不存在的元素

时间:2014-07-30 14:10:20

标签: visual-studio-2013 coded-ui-tests

我的问题是我想检查是否没有显示元素。换句话说,我想检查一个元素是否被删除。

所以我正在开发一个自动测试,可以选择禁用注释。我想检查注释的文本字段是否不存在。有没有简单的方法呢?

2 个答案:

答案 0 :(得分:1)

您需要区分未显示的元素(文本字段或其他内容)以及它是空的。

如果显示该字段但该字段为空,则表示该值为空字符串的简单断言将起作用。

如果该字段根本没有显示,那么对断言的尝试将失败并且找不到控件异常。相关代码可以包含在期望捕获异常的try-catch块中

try {
    ... access the control...;
    Assert.Fail("The control was found but it should not be present.");
}
catch (UITestControlNotFoundException ) {
    // Success path.
}

确保... access the control...;检查您的控制层次中的正确级别。您可能还希望用代码将其括起来以在控件不存在时快速失败,默认情况下,如果应用程序绘制控件的速度很慢,编码的UI可能会等待。

答案 1 :(得分:1)

试试这个:

Bool isExists = (Boolean)BrowserWindow.ExecuteScript("return $('#yourcontrolId').length > 0;");

if(isExists) 
  Assert.Fail("Control is not deleted");

// Success Code