Проверка кода с помощью модели автоматизации пользовательского интерфейса
Автоматизированные тесты ИП приложений называются закодированными тестами ИП (CUIT).Эти тесты обеспечивают функциональное тестирование элементов управления ИП.Они позволяют убедиться, что все приложение, в том числе интерфейс, работает правильно.Закодированные тесты ИП, в частности, полезны, если интерфейс содержит логику проверки или другую логику, например на веб-странице.Они также часто используются для автоматизации существующих ручных тестов.
Как показано на следующем рисунке, обычный процесс тестирования во время разработки может состоять из построения приложения (F5) и поочередной проверки элементов управления.Затем вы можете создать закодированный тест, чтобы не проверять приложение вручную.В зависимости от конкретной тестируемой функции можно написать код для функционального теста или интеграционного теста, который может содержать проверку на уровне ИП (или нет).Если вы хотите просто получить доступ к бизнес-логике, вы можете написать модульный тест.Однако в некоторых ситуациях может быть полезно включить тестирование различных элементов управления в приложение.Закодированный тест ИП может автоматизировать изначальный сценарий (F5), подтверждая, что обработка кода не влияет на работу приложения.
Создать закодированный тест ИП легко.Просто выполните тест вручную, пока построитель кодированных тестов ИП работает в фоновом режиме.Вы также можете указать, какие значения должны быть в определенных полях.Построитель кодированных тестов ИП записывает ваши действия и создает на их основе код.После создания теста вы можете изменить последовательность действий в специальном редакторе.
Если у вас есть тестовый случай, записанный в Microsoft Test Manager, вы можете создать код на его основе.Для получения дополнительной информации см. Запись и воспроизведение ручных тестов.
Специализированные построитель кодированных тестов ИП и редактор упрощают создание и изменение закодированных тестов ИП, даже если вы больше разбираетесь в тестировании, а не программировании.Но если вы разработчик и хотите расширить возможности теста, вы легко сможете скопировать и адаптировать код, потому что он структурирован.Например, можно записать тест покупки какого-либо продукта на веб-сайте, а затем добавить в созданный код цикл для покупки множества продуктов.
Требования
- Visual Studio Ultimate Visual Studio Premium
Дополнительные сведения о платформах и конфигурациях, поддерживаемых закодированными тестами ИП, см. в разделе Поддерживаемые конфигурации и платформы для закодированных тестов пользовательского интерфейса и записей действий.
Содержание раздела
Создание закодированных тестов пользовательского интерфейса
Основная процедура
Запуск и остановка приложения
Проверка свойства элементов управления пользовательского интерфейса
Настройка закодированного теста пользовательского интерфейса
Сформированный код
Программирование действий и свойств элементов управления пользовательского интерфейса
Отладка
Что дальше?
Создание закодированных тестов пользовательского интерфейса
Создание проекта с закодированными тестом ИП
Закодированные тесты ИП должны размещаться в проекте закодированного теста.Если вы не сделали этого ранее, создайте такой проект.В обозревателе решений в контекстном меню решения выберите команду Добавить, щелкните Новый проекти выберите Visual Basic или Visual C#.Затем выберите Тест, Закодированный тест ИП.
Я не вижу шаблоны проекта закодированных тестов ИП.
Возможно, вы используете версию Microsoft Visual Studio 2012, которая не поддерживает закодированные тесты пользовательского интерфейса.Чтобы создавать закодированные тесты пользовательского интерфейса, необходимо использовать Visual Studio Ultimate или Visual Studio Premium.
Добавьте файл закодированного теста ИП.
Если вы только что создали проект, первый файл CUIT добавляется автоматически.Чтобы добавить другой файл теста, откройте контекстное меню проекта закодированного теста ИП, выберите команду Добавить и щелкните Закодированный тест ИП.
В диалоговом окне Сформировать код для закодированного теста ИП выберите пункт Записать действия, изменить карту ИП или добавить утверждения.
Откроется построитель кодированных тестов, а окно Visual Studio свернется.
Запись последовательности действий.
Чтобы начать запись, щелкните значок Запись.Выполните действия, которые необходимо протестировать в приложении, в том числе запустите приложение, если это необходимо.
Например, если вы тестируете веб-приложение, можно запустить браузер, перейти к веб-сайту и войти в приложение.
Чтобы приостановить запись, например, если вы работаете с входящей почтой, выберите Приостановить.
Внимание Все действия, выполненные на рабочем столе, будут записаны.Приостановите запись, если вы выполняете действия, которые могут привести к записи конфиденциальных данных.
Чтобы удалить действия, записанные по ошибке, нажмите кнопку Изменить действия.
Чтобы создать код, который будет повторять ваши действия, выберите значок Создать код и введите имя и описание метода закодированного теста ИП.
Проверьте значения в полях ИП, например в текстовых полях.
Щелкните Добавить утверждения в построителе закодированных тестов ИП, а затем выберите элемент управления в запущенном приложении.В списке свойств выберите свойство, например, Текст в текстовом поле.В контекстном меню щелкните Добавить утверждение.В диалоговом окне выберите оператор сравнения, значение сравнения и сообщение об ошибке.
Закройте окно утверждения и щелкните Создать код.
Совет Переключайтесь между записью действий и проверкой значений.Создайте код в конце каждой последовательности действий или проверок.При необходимости вы сможете вставить новые действия и проверки позже.
Дополнительные сведения см. в разделе Проверка свойств элементов управления.
Просмотр созданного кода теста.
Для просмотра созданного кода закройте окно построителя кодированных тестов ИП.В коде можно увидеть имена, которые вы присвоили каждому шагу.Код содержится в созданном файле CUIT:
[CodedUITest] public class CodedUITest1 { ... [TestMethod] public void CodedUITestMethod1() { this.UIMap.AddTwoNumbers(); this.UIMap.VerifyResultValue(); // To generate more code for this test, select // "Generate Code" from the shortcut menu. } }
Добавление действий и утверждений.
Наведите указатель на соответствующую точку в методе теста и затем в контекстном меню выберите команду Сформировать код для закодированного теста ИП.В этой точке будет вставлен новый код.
Изменение действий и утверждений теста.
Откройте файл UIMap.uitest.Он откроется в редакторе закодированных тестов ИП, где вы сможете изменить любую записанную последовательность действий, а также утверждения.
Для получения дополнительной информации см. Изменение закодированных тестов пользовательского интерфейса с помощью редактора закодированных тестов пользовательского интерфейса.
Запуск теста.
Откройте обозреватель тестов или контекстное меню в методе тестирования и выберите пункт Выполнить тесты.Дополнительные сведения о запуске тестов см. в подразделах Выполнение модульных тестов с помощью обозревателя тестов и Дополнительные параметры для запуска закодированных тесто ИП раздела Новые возможности в конце этой статьи.
Эта процедура более подробно описывается в следующих разделах.
Более полный пример содержится в разделе Пошаговое руководство. Создание, изменение и обслуживание закодированного теста пользовательского интерфейса.В этом пошаговом руководстве создается простое приложение Windows Presentation Foundation (WPF), чтобы с его помощью продемонстрировать создание, редактирование и обслуживание закодированного теста ИП.В этом пошаговом руководстве приведены решения для корректировки тестов с проблемами, связанными со временем и рефакторингом элементов управления.
Запуск и остановка тестируемого приложения
Я не хочу запускать и останавливать приложение, браузер или базу данных отдельно для каждого теста.Как этого избежать?
Если вы не хотите записывать действия, чтобы запускать приложение во время тестирования, необходимо запустить приложение до нажатия значка Запись.
В конце теста процесс, в котором тест выполняется, завершается.Если вы запустили приложение во время теста, оно обычно закрывается.Если вы не хотите закрывать приложение, добавьте RUNSETTINGS-файл в решение и используйте параметр KeepExecutorAliveAfterLegacyRun.Для получения дополнительной информации см. Настройка модульных тестов с помощью файла .runsettings.
Вы можете добавить метод инициализации теста, который определяется атрибутом [TestInitialize], для запуска кода в начале каждого метода теста.Например, в методе TestInitialize можно запустить приложение.
Вы можете добавить метод очистки теста, который определяется атрибутом [TestCleanup], для запуска кода в конце каждого метода теста.Например, метод для закрытия приложения можно вызвать в методе TestCleanup.
Проверка свойства элементов управления пользовательского интерфейса
С помощью построителя закодированных тестов ИП можно добавить элемент управления интерфейса пользователя (ИП) в UIMap для вашего теста или создать код метода проверки, который использует утверждение для элемента управления.
Чтобы создать утверждения для элементов управления, выберите средство Добавить утверждения в построителе закодированных тестов ИП и перетащите его в тестируемое приложение.Когда вокруг элемента управления появится рамка, отпустите кнопку мыши.Код класса элемента управления будет создан в файле UIMap.Designer.cs.
Свойства этого элемента управления появятся в диалоговом окне Добавление утверждений.
Еще один способ перейти к определенному элементу управления — выбрать стрелку (<<), чтобы развернуть представление карты элементов управления ИП.Чтобы найти родительский, дочерний элемент управления или элемент управления с определенным родительским элементом, щелкните в любой точке на карте и с помощью стрелок перемещайтесь по дереву.
Я не вижу свойств при выборе элемента управления в приложении или не вижу элемент управления в карте элементов управления ИП.
У элемента управления в коде приложения должен быть уникальный идентификатор, например атрибут ID в HTML или UID в WPF.Возможно, вам потребуется обновить код приложения, чтобы добавить эти идентификаторы.
Затем откройте контекстное меню свойства элемента управления, который следует проверить, и наведите указатель на пункт Добавить утверждение.В диалоговом окне Добавление утверждения выберите Средство сравнения для утверждения, например AreEqual, и введите значение для утверждения в поле Значение сравнения.
После добавления всех утверждений нажмите кнопку ОК.
Чтобы создать код для утверждений и добавить элемент управления на карту ИП, щелкните значок Создать код.Введите имя закодированного метода теста ИП и описание метода, которое будет добавлено как комментарий.Нажмите кнопку Добавить и создать.Затем щелкните значок Закрыть, чтобы закрыть построитель закодированных тестов ИП.После этого будет создан код, аналогичный следующему.Например, если вы ввели имя AssertForAddTwoNumbers, код будет выглядеть, как в этом примере:
Добавляет вызов метода утверждения AssertForAddTwoNumbers в метод теста в файле закодированного теста ИП:
[TestMethod] public void CodedUITestMethod1() { this.UIMap.AddTwoNumbers(); this.UIMap.AssertForAddTwoNumbers(); }
Вы можете изменить этот файл, чтобы поменять порядок шагов и утверждений или создать новые методы теста.Чтобы добавить другой код, наведите указатель на метод теста и в контекстном меню выберите команду Сформировать код для закодированного теста ИП.
Добавляет метод AssertForAddTwoNumbers на карту ИП (UIMap.uitest).Этот файл открывается в редакторе закодированных тестов ИП, где можно изменить утверждения.
Для получения дополнительной информации см. Изменение закодированных тестов пользовательского интерфейса с помощью редактора закодированных тестов пользовательского интерфейса.
Вы также можете просмотреть сформированный код метода утверждения в файле UIMap.Designer.cs.Однако изменять этот файл не следует.Если вы хотите создать адаптированную версию кода, скопируйте методы в другой файл, например UIMap.cs, переименуйте методы и измените их.
public void AssertForAddTwoNumbers() { ... }
Элемент управления, который я хочу выбрать, теряет фокус и исчезает, когда я пытаюсь выбрать средство добавления утверждений в построителе закодированных тестов ИП. Как выбрать этот элемент управления?
Выбор скрытого элемента управления с помощью клавиатуры
Иногда при добавлении элементов управления и проверке их свойств может потребоваться использовать клавиатуру.Например, при попытке записать закодированный тест ИП, который использует элемент управления контекстным меню, список пунктов меню в элементе управления потеряет фокус и исчезнет при попытке выбрать средство добавления утверждений в построителе закодированных тестов ИП.Это демонстрируется на следующем рисунке, где контекстное меню в Internet Explorer теряет фокус и исчезает при попытке выбрать его с помощью средства добавления утверждений.
Чтобы выбрать элемент управления клавиатурой, наведите на него указатель мыши.Затем нажмите и удерживайте клавиши CTRL и I одновременно.Отпустите клавиши.Элемент управления будет записан построителем закодированных тестов ИП.
Внимание Если вы используете Microsoft Lync, закройте это приложение перед запуском построителя закодированных тестов ИП.Microsoft Lync перехватывает сочетание клавиш CTRL+I.
Не удается записать наведение указателя мыши на элемент управления. Можно ли это исправить?
Ручная запись наведений указателя мыши
В некоторых случаях для ручной записи наведения указателя мыши на определенный элемент управления, используемый в закодированном тесте ИП, может потребоваться использовать клавиатуру.Например, при в приложении Windows Form или Windows Presentation Foundation (WPF) может использоваться настраиваемый код.Или для наведения указателя мыши на элемент управления может быть задано специальное поведение, например разворачивание узла.Чтобы протестировать подобные ситуации, следует вручную указать в построителе закодированных тестов ИП, что вы наводите указатель мыши на элемент управления, нажав соответствующие клавиши.
При выполнении закодированного теста ИП наведите указатель на элемент управления.Затем одновременно нажмите и удерживайте клавиши CTRL, SHIFT и R.Отпустите клавиши.События наведения указателя будет записано построителем закодированных тестов ИП.
После создания метода теста в файл UIMap.Desinger.cs будет добавлен код, как в следующем примере:
// Mouse hover '1' label at (87, 9) Mouse.Hover(uIItem1Text, new Point(87, 9));
Сочетание клавиш для записи событий наведения указателя мыши используется другим процессом. Можно ли изменить его?
Настройка сочетаний клавиш для записи наведения указателя мыши
При необходимости сочетание клавиш CTRL+SHIFT+R по умолчанию, используемое для записи событий наведения указателя мыши в закодированных тестах ИП, можно изменить.
Внимание В целом, изменять это сочетание клавиш следует только, если это действительно необходимо.Будьте осторожны при изменении назначенных сочетаний клавиш.Возможно, выбранное вами сочетание уже используется в Visual Studio или тестируемом приложении.
Чтобы изменить сочетание клавиш, отредактируйте следующий файл конфигурации:
<буква диска:>\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE\CodedUITestBuilder.exe.config
В файле конфигурации измените значения клавиш HoverKeyModifier и HoverKey, чтобы поменять сочетание клавиш:
<!-- Begin : Background Recorder Settings --> <!-- HoverKey to use. --> <add key="HoverKeyModifier" value="Control, Shift"/> <add key="HoverKey" value="R"/>
Возникают проблемы с записью наведения указателя мыши для веб-сайта. Можно ли это исправить?
Настройка явных наведений указателя мыши для браузера
На многих веб-сайтах при наведении указателя на определенный элемент управления он разворачивается для отображения дополнительных сведений.В целом, это похоже на меню в приложениях для настольных ПК.Так как такое поведение встречается часто, закодированные тесты ИП поддерживают неявное наведение указателя для веб-сайтов.Например, если вы записываете наведение указателя в Internet Explorer, инициируется событие.Из-за этих событий могут быть записаны избыточные наведения указателя мыши.Поэтому неявные наведения записываются в файл конфигурации теста ИП с параметром ContinueOnError, имеющим значение true.Это позволяет продолжить воспроизведение при ошибке события наведения указателя.
Чтобы включить запись неявных наведений указателя в браузере, откройте файл конфигурации:
<буква диска:>\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE\CodedUITestBuilder.exe.config
Убедитесь, что в файле конфигурации для раздела RecordImplicitiHovers задано значение true, как показано в следующем примере:
<!--Use this to enable/disable recording of implicit hovers.--> <add key="RecordImplicitHover" value="true"/>
Настройка закодированного теста пользовательского интерфейса
После создания закодированного теста ИП его можно изменить с помощью следующих средств в Visual Studio:
Построитель закодированных тестов ИП используется для добавления элементов управления и проверок в тесты.См. раздел Добавление элементов управления и проверка их свойств в этой статье.
Редактор закодированных тестов ИП позволяет легко изменять закодированные тесты ИП.С помощью редактора вы можете найти, просмотреть и изменить методы теста.Вы также можете редактировать действия ИП и связанные элементы управления на карте элементов управления ИП.Для получения дополнительной информации см. Изменение закодированных тестов пользовательского интерфейса с помощью редактора закодированных тестов пользовательского интерфейса.
Редактор кода:
позволяет вручную добавить код элементов управления в тест, как описано в разделе Программирование действий и свойств элементов управления ИП в этой статье.
После создания закодированного теста ИП вы можете изменить его, чтобы его работа зависела от данных.Для получения дополнительной информации см. Создание управляемого данными закодированного теста пользовательского интерфейса.
При воспроизведении закодированного теста ИП вы можете подождать возникновения определенных событий, например открытия окна, исчезновения строки хода выполнения и т. д.Для этого добавьте соответствующий метод UITestControl.WaitForControlXXX().Полный список доступных методов см. в разделе Настройка закодированного теста пользовательского интерфейса таким образом, чтобы во время воспроизведения он дожидался определенных событий.Пример закодированного теста ИП, который ожидает включения элемента управления с помощью метода WaitForControlEnabled, см. в разделе Пошаговое руководство. Создание, изменение и обслуживание закодированного теста пользовательского интерфейса.
Закодированные тесты ИП поддерживают некоторые элементы управления HTML5 в Internet Explorer 9 и Internet Explorer 10.Для получения дополнительной информации см. Использование элементов управления HTML5 в закодированных тестах пользовательского интерфейса.
Руководство по кодированию тестов ИП:
Сформированный код
Если нажать кнопку Создать код, создается несколько фрагментов кода:
Строка в методе теста.
[CodedUITest] public class CodedUITest1 { ... [TestMethod] public void CodedUITestMethod1() { this.UIMap.AddTwoNumbers(); // To generate more code for this test, select // "Generate Code" from the shortcut menu. } }
Вы можете щелкнуть метод правой кнопкой, чтобы добавить записанные действия и проверки.Вы также можете изменить его вручную, чтобы расширить или поменять код.Например, можно часть кода заключить в цикл.
Кроме того, можно добавить новые методы теста и добавить в них код аналогичным способом.У каждого метода теста должен быть атрибут [TestMethod].
Метод в файле UIMap.uitest
Он содержит сведения о записанных действиях или проверенном значении.Этот код можно изменить в файле UIMap.uitest.Он открывается в специальном редакторе, где можно удалить или изменить записанные действия.
Вы также можете просмотреть сформированный код метода в файле UIMap.Designer.cs.Этот метод выполняет действия, записанные во время запуска теста.
// File: UIMap.Designer.cs public partial class UIMap { /// <summary> /// Add two numbers /// </summary> public void AddTwoNumbers() { ... } }
Внимание Не следует редактировать этот файл, так как он будет повторно сформирован при создании других тестов.
Можно создать адаптированные версии этих методов, скопировав их в файл UIMap.cs.Например, можно создать параметризированную версию, которую можно вызывать из метода теста:
// File: UIMap.cs public partial class UIMap // Same partial class { /// <summary> /// Add two numbers – parameterized version /// </summary> public void AddTwoNumbers(int firstNumber, int secondNumber) { ... // Code modified to use parameters. } }
Объявления в файле UIMap.uitest
Эти объявления представляют элементы управления ИП приложения, используемые тестом.Созданный код их применяет для работы с элементами управления и доступа к их свойствам.
Их также можно использовать при написании собственного кода.Например, метод теста может выбрать гиперссылку в веб-приложении, ввести значение в текстовом поле или выполнить другие действия на основе значения в поле.
Вы можете добавить несколько закодированных тестов ИП и несколько объектов карты ИП и файлов для тестирования более сложного приложения.Для получения дополнительной информации см. Тестирование крупного приложения с несколькими картами пользовательского интерфейса.
Дополнительные сведения о созданном коде см. в разделе Составляющие закодированного теста пользовательского интерфейса.
Программирование действий и свойств элементов управления пользовательского интерфейса
При работе с элементами управления закодированные тесты ИП разделены на две части: действия и свойства.
Первая часть состоит из действий, которые можно выполнить с элементами управления.Например, закодированные тесты ИП могут симулировать щелчок элемента управления или нажатие клавиш для изменения элемента управления.
Вторая часть позволяет получать и задавать свойства элемента управления.Например, закодированные тесты ИП могут получать число элементов в ListBox или переводить элемент управления CheckBox в выбранное состояние.
Доступ к действиям элемента управления теста ИП
Для выполнения действий с элементами управления теста ИП, таких как щелчок мыши или нажатие клавиши, используйте методы классов Mouse и Keyboard:
Для выполнения действия, связанного с мышью, например щелчка, с элементом управления теста ИП используйте Click.
Mouse.Click(buttonCancel);
Для выполнения действия, связанного с клавиатурой, например ввод текста в элемент управления, используйте SendKeys.
Keyboard.SendKeys(textBoxDestination, @"C:\\Temp\\Output.txt");
Доступ к свойствам элемента управления теста ИП
Чтобы получить или задать значения определенных свойств элемента управления, можно напрямую извлечь или установить свойства элемента управления или использовать методы UITestControl.GetProperty и UITestControl.SetProperty с именем нужного свойства.
GetProperty возвращает объект, который можно привести к соответствующему типу Type.SetProperty принимает объект в качестве значения свойства.
Получение и установка свойств из элементов управления теста ИП напрямую
Для элементов управления, производных от T:Microsoft.VisualStudio.TestTools.UITesting.UITestControl, таких как T:Microsoft.VisualStudio.TestTools.UITesting.HtmlControls.HtmlList или T:Microsoft.VisualStudio.TestTools.UITesting.WinControls.WinComboBox, значения свойства можно получать и задавать напрямую следующим образом:
int i = myHtmlList.ItemCount; myWinCheckBox.Checked = true;
Получение свойств из элементов управления ИП
Для получения значения свойства элемента управления используйте метод GetProperty.
Чтобы указать свойство, которое необходимо получить, используйте соответствующую строку из класса PropertyNames в каждом элементе управления как параметр для GetProperty.
GetProperty возвращает соответствующий тип данных, после чего это значение преобразуется в тип Object.Возвращенное значение Object необходимо преобразовать в соответствующий тип.
Пример.
int i = (int)GetProperty(myHtmlList.PropertyNames.ItemCount);
Установка свойств элементов управления ИП
Для установки значения свойства элемента управления используйте метод SetProperty.
Чтобы указать свойство, которое необходимо установить, используйте соответствующую строку из класса PropertyNames как первый параметр для SetProperty, а значение свойства — как второй параметр.
Пример.
SetProperty(myWinCheckBox.PropertyNames.Checked, true);
Отладка
Вы можете анализировать закодированные тесты ИП с помощью журналов.Журналы закодированных тестов ИП фильтруют и записывают важную информацию о запуске тестов.Формат журналов позволяет быстро находить и исправлять ошибки.Для получения дополнительной информации см. Анализ закодированных тестов пользовательского интерфейса с помощью журналов закодированных тестов пользовательского интерфейса.
Что дальше?
Дополнительные параметры для выполнения закодированных тестов ИП. Вы можете выполнять закодированные тесты ИП напрямую из Visual Studio, как было сказано ранее.Кроме того, автоматизированные тесты ИП можно запускать в Microsoft Test Manager или Team Foundation Build.Если закодированные тесты ИП автоматизированы, они, в отличие от других автоматических тестов, должны взаимодействовать с рабочим столом при их выполнении.
Практическое руководство. Запуск тестов из Microsoft Visual Studio
Практическое руководство. Настройка и запуск запланированных тестов после построения приложения
[удалено] Использование закодированных тестов пользовательского интерфейса в нагрузочных тестах
Добавление поддержки пользовательских элементов управления. Среда обработки закодированных тестов ИП поддерживает не все возможные интерфейсы пользователей, в частности, она может не поддерживать тестируемый ИП.Например, невозможно напрямую создать закодированный тест пользовательского интерфейса приложения Microsoft Excel.Однако можно создать расширение среды обработки закодированных тестов пользовательского интерфейса, которое будет поддерживать пользовательский элемент управления.
Закодированные тесты ИП часто используются для автоматизации ручных тестов.Дополнительные сведения см. на странице Книга "Шаблоны и приемы. Тестирование при непрерывной поставке с использованием Visual Studio 2012", глава 5, "Автоматизация системных тестов".Дополнительные сведения о ручных тестах см. в разделе [удалено] Создание ручных тестовых случаев с помощью Microsoft Test Manager.Дополнительные сведения об автоматизированных тестах см. в разделе Создание автоматических тестов с помощью Microsoft Test Manager.
Внешние ресурсы
Руководство
часто задаваемые вопросы
Часто задаваемые вопросы о закодированных тестах ИП. Часть 1
Часто задаваемые вопросы о закодированных тестах ИП. Часть 2
Форум
Автоматическое тестирование ИП в Visual Studio (включает CodedUI)
См. также
Задачи
Ссылки
Основные понятия
Повышение качества при использовании средств диагностики Visual Studio
Составляющие закодированного теста пользовательского интерфейса
Рекомендации по выполнению закодированных тестов пользовательского интерфейса
Тестирование крупного приложения с несколькими картами пользовательского интерфейса
Обновление закодированных тестов пользовательского интерфейса с версии Visual Studio 2010
Другие ресурсы
Создание закодированного теста пользовательского интерфейса из существующей записи действий