Что такое findslide.org?

FindSlide.org - это сайт презентаций, докладов, шаблонов в формате PowerPoint.


Для правообладателей

Обратная связь

Email: Нажмите что бы посмотреть 

Яндекс.Метрика

Презентация на тему TDD - разработка, основанная на тестах

Software development methodologies
TDD - test-driven developmentStudent of group 555-vm Dmitriy Aseev  dmitriy.aseev@it-devgroup.com Software development methodologies TDDTest-driven development (TDD) is an evolutionary approach to development which combines test-first Example C# or PHP ? Behavior Driven DevelopmentTESTSHOULDTDDBDD TestsIntegration testing is the phase in software testing in which individual software Не нужно писать тесты, еслиВы делаете простой сайт-визитку из 5 статических html-страниц Типы проектов1. Без покрытия тестами.2. С тестами, которые никто не запускает и Советы при написании тестовБыть достовернымиНе зависеть от окружения, на котором они выполняютсяЛегко Без велосипедов, пожалуйста.NET: MsTest (есть в студии) NUnit  PHP: PHPUnit Codeception Подход AAA (arrange, act, assert) Борьба с зависимостямиВыделяют два типа подделок: стабы (stubs) и моки (mock).Часто эти Как начать писать тесты?1. Лабораторные работы 2. Курсовые проекты 3. Дипломные работы  Саморазвитие :) ВыводыЛюбой долгосрочный проект без надлежащего покрытия тестами обречен рано или поздно быть переписанным с нуля. Вопросы в студию! Практика1. Сортировать массив из 10 элементов 2. Взаимодействовать с платежной системой (единоразовый
Слайды презентации

Слайд 2 Software development methodologies

Software development methodologies

Слайд 3 TDD
Test-driven development (TDD) is an evolutionary approach to

TDDTest-driven development (TDD) is an evolutionary approach to development which combines

development which combines test-first development where you write a

test before you write just enough production code to fulfill that test and refactoring.


Слайд 4 Example

Example

Слайд 5 C# or PHP

C# or PHP

Слайд 8 Behavior Driven Development
TEST
SHOULD
TDD
BDD

Behavior Driven DevelopmentTESTSHOULDTDDBDD

Слайд 9 Tests
Integration testing is the phase in software testing

TestsIntegration testing is the phase in software testing in which individual

in which individual software modules are combined and tested

as a group

Acceptance testing - formal testing with respect to user needs, requirements, and business processes conducted to determine whether or not a system satisfies the acceptance criteria and to enable the user, customers or other authorized entity to determine whether or not to accept the system.


Слайд 10 Не нужно писать тесты, если
Вы делаете простой сайт-визитку

Не нужно писать тесты, еслиВы делаете простой сайт-визитку из 5 статических

из 5 статических html-страниц и с одной формой отправки

письма. На этом заказчик, скорее всего, успокоится, ничего большего ему не нужно. Здесь нет никакой особенной логики, быстрее просто все проверить «руками»
Вы занимаетесь рекламным сайтом/простыми флеш-играми или баннерами – сложная верстка/анимация или большой объем статики. Никакой логики нет, только представление
Вы делаете проект для выставки. Срок – от двух недель до месяца, ваша система – комбинация железа и софта, в начале проекта не до конца известно, что именно должно получиться в конце. Софт будет работать 1-2 дня на выставке
Вы всегда пишете код без ошибок, обладаете идеальной памятью и даром предвидения. Ваш код настолько крут, что изменяет себя сам, вслед за требованиями клиента. Иногда код объясняет клиенту, что его требования — не нужно реализовывать


Слайд 11 Типы проектов
1. Без покрытия тестами.

2. С тестами, которые

Типы проектов1. Без покрытия тестами.2. С тестами, которые никто не запускает

никто не запускает и не поддерживает.

3. С серьезным покрытием.

Все тесты проходят.

Слайд 12 Советы при написании тестов
Быть достоверными
Не зависеть от окружения,

Советы при написании тестовБыть достовернымиНе зависеть от окружения, на котором они

на котором они выполняются
Легко поддерживаться
Легко читаться и быть простыми

для понимания (даже новый разработчик должен понять что именно тестируется)
Соблюдать единую конвенцию именования
Запускаться регулярно в автоматическом режиме


Слайд 13 Без велосипедов, пожалуйста
.NET: MsTest (есть в студии) NUnit PHP: PHPUnit Codeception

Без велосипедов, пожалуйста.NET: MsTest (есть в студии) NUnit PHP: PHPUnit Codeception

Слайд 14 Подход AAA (arrange, act, assert)

Подход AAA (arrange, act, assert)

Слайд 15 Борьба с зависимостями
Выделяют два типа подделок: стабы (stubs)

Борьба с зависимостямиВыделяют два типа подделок: стабы (stubs) и моки (mock).Часто

и моки (mock).
Часто эти понятия путают. Разница в том,

что стаб ничего не проверяет, а лишь имитирует заданное состояние. А мок – это объект, у которого есть ожидания. Например, что данный метод класса должен быть вызван определенное число раз. Иными словами, ваш тест никогда не сломается из-за «стаба», а вот из-за мока может.

Слайд 16 Как начать писать тесты?
1. Лабораторные работы 2. Курсовые проекты 3.

Как начать писать тесты?1. Лабораторные работы 2. Курсовые проекты 3. Дипломные работы Саморазвитие :)

Дипломные работы Саморазвитие :)


Слайд 17 Выводы
Любой долгосрочный проект без надлежащего покрытия тестами обречен

ВыводыЛюбой долгосрочный проект без надлежащего покрытия тестами обречен рано или поздно быть переписанным с нуля.

рано или поздно быть переписанным с нуля.




Слайд 18 Вопросы в студию!

Вопросы в студию!

  • Имя файла: tdd-razrabotka-osnovannaya-na-testah.pptx
  • Количество просмотров: 125
  • Количество скачиваний: 0