AutoQA - это проверенный опыт обучения АвтоматизацииЗдесь вы сможете обучаться на практике. Вместо скучного материала подается много наглядных статей...

Настройка сборки (компиляции) проекта и триггера в TeamCity

Всем привет! В предыдущей статье мы рассмотрели, как создавать проект в TeamCity. Рассмотрим второй шаг нашего сценария – сборка (компиляция проекта). Так как у нас проект на .NET в виде Visual Studio Solution’а  – здесь всё просто. Переходимв меню “Build Steps” (Шаги сборки), выбираем Runner type (а их тут действительно много)…

Введение в TeamCity сервер

Добрый день. Подошел черед рассмотреть такое замечательно средство непрерывной интеграции как TeamCity. В этой статье мы рассмотрим следующий стек технологий: .NET, C#, NUnit, Selenium 2, git, MSBuild. Будут рассмотрены такие задачи, как интеграция с git, сборка C#-проектов, NUnit-тесты (как модульные, интеграционные, так и тесты UI). Об “непрерывной интеграции” существует много материала, повторять эту тему…

Юнит-тест состояния с настроенным поведением Moq

Всем привет. В прошлой статье мы рассмотрели создание юнит-теста взаимодействия. Финальной частью курса будет  рассмотрение настроенного поведения Moq. Сам тест будет проверять утверждение полнолетнего заемщика с хорошей кредитной историей. Это тест-состояния, так как мы будем проверять возвращаемый объект. Используя наш первый тест: Первое, что наv нужно, – это установить приемлемый…

Пример создания unit-теста взаимодействия

Всем привет. В прошлой статье мы рассмотрели создание теста юнит-теста состояния. Теперь рассмотрим тест взаимодействия. За основу возьмем предыдущий тест, но так как это тест взаимодействия, то нам не нужно волноваться за результат – переменную result и ее использование в Assert. Но нам нужно удостоверится, что вызывался метод HasGoodCreditHistory. Для…

Пример создания unit-теста состояния

Всем привет. В предыдущей статье мы рассмотрели тестируемое приложение. Прежде чем сразу приступать к написанию кода пару слов расскажу о группах юнит-тестов. Все модульные тесты можно условно разделить на: тесты состояния (state based) и тесты взаимодействия (interaction tests). Тесты состояния — это тесты, проверяющие, что вызываемый метод объекта отработал корректно, проверяя состояние тестируемого…

Введение в Unit (модульное) тестирование

Всем привет. Много времени мы предоставили рассмотрению автоматизации интерфейса (UI). Давайте же уделим внимание и рассмотрению юнит и интеграционной автоматизации. Юнит (модульное) тестирование – это написание дополнительного кода с целью проверки мельчайших блоков функционального кода, чтобы убедиться, что они работают без ошибок. Код обычно разрабатывается на классы или объекты. Термин…

Автоматизация WPF – запуск тестов

Всем привет. В предыдущей статье мы рассмотрели написание тестов. Проект автоматизации можно скачать по ссылке GitHub. В Test Explorer Visual Studio можно заметить написанные три теста. Осталось только проверить их в действии. После запуска всех тестов – “Run All” можно заметить, что все они выполнились успешно. Этот тестовый фреймворк будет…

Настройка ccnet.config и запуск тестов

Всем привет. В предыдущей статье мы рассмотрели установку и создание сайта Cruise Control в IIS. Теперь подошло время к непосредственной интеграции. Что ж, поехали… В качестве проекта сборки и автотестов предлагаю использовать рассмотренный ранее фреймворк автоматизации. Сам проект содержит WPF-приложение и подпроект функциональных UI тестов. В конфиге я настроил следующий…

Автоматизация WPF – написание тестов

В предыдущей статье мы рассмотрели определение WinForms элементов. Проект автоматизации можно скачать по ссылке GitHub. Ниже представлен листинг класса App.cs, который представляет тестируемое приложение: Конструктор принимает объект приложений Telerik Testing Framework (WpfApplication) и TestStack White (Application). Доступ к объектам Каждое окно в приложении представлено свойством в классе App. Объекты WPF приложения используют метод VisualFind для своей…

Паттерны Singleton и Null object

Всем привет. Этот урок является частью цикла статей о паттернах проектирования. Пример кода расположен по ссылке. Singleton Паттерн Singleton используется в тех случаях, в которых вы хотите ограничить экземпляр класса только одним объектом. Класс не должен требовать параметры для построения. Если создание класса требует значительных ресурсов, то Singleton является подходящим решением.…