Эффект specflow

Post on 15-Jan-2016

108 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

Вторая конференция .NET разработчиков. Эффект SpecFlow. Алёна Попова Indy Code a.o.popova@gmail.com. План. Что такое тестовый сценарий ? Схема работы тестов Пример, как было до SpecFlow ( демо) Откуда взялся SpecFlow у нас ( демо) История развития проекта SpecFlow - PowerPoint PPT Presentation

TRANSCRIPT

Эффект SpecFlow

Алёна ПоповаIndyCode

a.o.popova@gmail.com

Вторая конференция .NET разработчиков

План

1. Что такое тестовый сценарий?2. Схема работы тестов3. Пример, как было до SpecFlow (демо)4. Откуда взялся SpecFlow у нас (демо) 5. История развития проекта SpecFlow6. Преимущества использования

Что такое тестовые сценарии?

Схема работы тестов

База данных

xUnit

Web-приложение

Тестовый сценарий 1Тестовый сценарий 1

Тестовый сценарий 2Тестовый сценарий 2

Selenium

Реализация тестового сценария[ExtendedFact]public void UserCanLogOn(){

const string userPassword = "123";

Account user = EmployeeWorkspaceDatabase.AddUser(Configuration.GenerateUniqueLogin(),

Configuration.GenerateUniqueName(),Configuration.GenerateUniqueName(),Configuration.GenerateUniqueName(), userPassword);

Website.LogOn(user.Login, userPassword);

Website.VerifyTextPresent(StringConstants.PersonalPage); Website.VerifyTextPresent(user.ShortName);

AssertExtensions.HasLog(user, AuthorizationActType.LogIn, DateTime.Now);}

Проблемы этой реализации

1. Неуправляемый код в тестах

2. Сценарий и код в одном

3. Сценарий на C# приходится переводить на живой язык

Решение проблем

Тот же сценарий на огурцеФича: Log On

Ввeсти корректный логин и корректный пароль.

Предыстория:Дано заходим на форму авторизации

Сценарий: ввeсти корректный логин и корректный парольДано добавляем пользователя в базу данныхИ вводим корректный логинИ вводим корректный парольКогда пользователь нажимает кнопку ВходТогда пользователь попадает в личный кабинет

Демо

Преимущества

1. Разделение сценария и кода

2. Разделение работы по написанию сценария и его реализации

3. Сценарии на языке заказчика

4. Повторное использование шагов

Демо для продвинутых

• Параметры• Структура сценариев

Mercurial

TeamCity

Отдел тестирования

SpecFlow и CI

Спасибо за внимание

Алёна ПоповаIndyCode

a.o.popova@gmail.com

top related