🗊Презентация Тестирование. Тесты как спецификация

Нажмите для полного просмотра!
Тестирование. Тесты как спецификация, слайд №1Тестирование. Тесты как спецификация, слайд №2Тестирование. Тесты как спецификация, слайд №3Тестирование. Тесты как спецификация, слайд №4Тестирование. Тесты как спецификация, слайд №5Тестирование. Тесты как спецификация, слайд №6Тестирование. Тесты как спецификация, слайд №7Тестирование. Тесты как спецификация, слайд №8Тестирование. Тесты как спецификация, слайд №9Тестирование. Тесты как спецификация, слайд №10Тестирование. Тесты как спецификация, слайд №11Тестирование. Тесты как спецификация, слайд №12Тестирование. Тесты как спецификация, слайд №13Тестирование. Тесты как спецификация, слайд №14Тестирование. Тесты как спецификация, слайд №15Тестирование. Тесты как спецификация, слайд №16Тестирование. Тесты как спецификация, слайд №17Тестирование. Тесты как спецификация, слайд №18Тестирование. Тесты как спецификация, слайд №19Тестирование. Тесты как спецификация, слайд №20

Вы можете ознакомиться и скачать презентацию на тему Тестирование. Тесты как спецификация. Доклад-сообщение содержит 20 слайдов. Презентации для любого класса можно скачать бесплатно. Если материал и наш сайт презентаций Mypresentation Вам понравились – поделитесь им с друзьями с помощью социальных кнопок и добавьте в закладки в своем браузере.

Слайды и текст этой презентации


Слайд 1





ТЕСТИРОВАНИЕ
https://github.com/kontur-csharper/testing
Описание слайда:
ТЕСТИРОВАНИЕ https://github.com/kontur-csharper/testing

Слайд 2





Тесты как спецификация
Описание слайда:
Тесты как спецификация

Слайд 3





Доверие тестам
Будет ли тест понятен ревьюеру?
Сможет ли ревьюер быстро убедиться в корректности теста?
Описание слайда:
Доверие тестам Будет ли тест понятен ревьюеру? Сможет ли ревьюер быстро убедиться в корректности теста?

Слайд 4





Тесты как спецификация
class Superman_should {
	[Test]
	public void save_kitten_from_tree(){
		…
		superman.Act();
		Assert.IsTrue(kitten.IsSaved());
	}
	[Test]
	public void wear_redBlue_suit(){
		…
	}
	…
}
Описание слайда:
Тесты как спецификация class Superman_should { [Test] public void save_kitten_from_tree(){ … superman.Act(); Assert.IsTrue(kitten.IsSaved()); } [Test] public void wear_redBlue_suit(){ … } … }

Слайд 5





Правильная структура теста
Arrange
Act
Assert
Описание слайда:
Правильная структура теста Arrange Act Assert

Слайд 6





Имя теста как спецификация
Что должно быть в имени теста?
Conditions: preconditions, input, state
System Under Test: class name, method name
Expected behaviour / Requirement to check
http://java.dzone.com/articles/7-popular-unit-test-naming
Описание слайда:
Имя теста как спецификация Что должно быть в имени теста? Conditions: preconditions, input, state System Under Test: class name, method name Expected behaviour / Requirement to check http://java.dzone.com/articles/7-popular-unit-test-naming

Слайд 7





Имя теста как спецификация
ParserTests.TestParse?
ParserTests.Parse_Fails?
ParserTests.Parse_BigNumbers?
ParserTests.Parse_NumbersGreaterThanMaxInt?
ParserTests.Fail_OnNegativeNumbers?
Описание слайда:
Имя теста как спецификация ParserTests.TestParse? ParserTests.Parse_Fails? ParserTests.Parse_BigNumbers? ParserTests.Parse_NumbersGreaterThanMaxInt? ParserTests.Fail_OnNegativeNumbers?

Слайд 8





Имя теста как спецификация
isAdult_AgeLessThan18_False
ParseInt_should.Fail_OnNonNumber
Stack_should.BeEmpty_AfterCreation
When_MandatoryFieldsAreMissing_Expect_StudentAdmissionToFail
Описание слайда:
Имя теста как спецификация isAdult_AgeLessThan18_False ParseInt_should.Fail_OnNonNumber Stack_should.BeEmpty_AfterCreation When_MandatoryFieldsAreMissing_Expect_StudentAdmissionToFail

Слайд 9





Антипаттерны
Local Hero
Loudmouth
Free Ride
Over specification
http://blog.james-carr.org/2006/11/03/tdd-anti-patterns/
Описание слайда:
Антипаттерны Local Hero Loudmouth Free Ride Over specification http://blog.james-carr.org/2006/11/03/tdd-anti-patterns/

Слайд 10





Пример спецификации тестами
Описание слайда:
Пример спецификации тестами

Слайд 11





пишем тесты легко
ТЕСТ НАПИСАТЬ – КАК ЧАЙ ПОПИТЬ
Описание слайда:
пишем тесты легко ТЕСТ НАПИСАТЬ – КАК ЧАЙ ПОПИТЬ

Слайд 12





Борьба с дублированием
SetUp, TearDown
Comparer, Equal, ToString
Собственные Assert-ы
Описание слайда:
Борьба с дублированием SetUp, TearDown Comparer, Equal, ToString Собственные Assert-ы

Слайд 13





Parametrized tests
Они же Data Driven
Описание слайда:
Parametrized tests Они же Data Driven

Слайд 14





Ограничение по времени
[Test, Timeout(1000)]
public void Test()
{
	…
}
Описание слайда:
Ограничение по времени [Test, Timeout(1000)] public void Test() { … }

Слайд 15





Fluent Assertions
Assert.AreEqual(expected, actual) или 
Assert.AreEqual(actual, expected)?
Assert — корявая семантика
(2+2).Should().Be(4) — лучше!
Неинформативные исключения
«Expected True but was False»
FluentAssertions – доступны через NuGet
Описание слайда:
Fluent Assertions Assert.AreEqual(expected, actual) или Assert.AreEqual(actual, expected)? Assert — корявая семантика (2+2).Should().Be(4) — лучше! Неинформативные исключения «Expected True but was False» FluentAssertions – доступны через NuGet

Слайд 16





Фишки Resharper
Resharper → Tools → Templates Explorer →
Import → tests-templates.DotSettings
tf — TestFixture
tt — Test
su — SetUp
Ctrl+T+R  или Ctrl+U+R
Описание слайда:
Фишки Resharper Resharper → Tools → Templates Explorer → Import → tests-templates.DotSettings tf — TestFixture tt — Test su — SetUp Ctrl+T+R или Ctrl+U+R

Слайд 17





challenge
Описание слайда:
challenge

Слайд 18





cHALLENGE
В проекте Challenge в файле WordsStatistics_Tests напишите тесты:
WordsStatistics — должен проходить все тесты.
WordStatisticsXXX — некорректные реализации. Должны падать хотя бы на одном тесте.
Запускайте по Ctrl+F5.
Не открывайте файл DoNotOpen!
Описание слайда:
cHALLENGE В проекте Challenge в файле WordsStatistics_Tests напишите тесты: WordsStatistics — должен проходить все тесты. WordStatisticsXXX — некорректные реализации. Должны падать хотя бы на одном тесте. Запускайте по Ctrl+F5. Не открывайте файл DoNotOpen!

Слайд 19





cHALLENGE
Открываем DoNotOpen!
Описание слайда:
cHALLENGE Открываем DoNotOpen!

Слайд 20





Разбор CHALLENGE
Тесты по спецификации — это просто
Про взаимодействие разных пунктов спецификации подумать трудно (E3)
Про тесты на производительность вспомнить труднее (998, 999)
Тесты не заменяют Code Review (STA)
Code Review не заменяет тесты (CR)
Описание слайда:
Разбор CHALLENGE Тесты по спецификации — это просто Про взаимодействие разных пунктов спецификации подумать трудно (E3) Про тесты на производительность вспомнить труднее (998, 999) Тесты не заменяют Code Review (STA) Code Review не заменяет тесты (CR)



Похожие презентации
Mypresentation.ru
Загрузить презентацию