Эта замечательная технология почему-то до сих пор не очень популярна и, более того, не всем известна. Между тем за время своего существования она стала почти синонимом к выражению «лёгкая поддержка и развитие автотестов». Я хочу рассказать о том, что представляет из себя эта технология, обобщить знания о ней и поделиться готовыми решениями из нашей библиотеки матчеров.
Cайт. Зачем он и каким должен быть, Алексей Иванов, лекция в Школе вебмастеро...
Кирилл Меркушев: Матчеры: маленький шаг для вас и огромный для ваших автотестов
1. Матчеры
маленький
шаг
для
вас
и
огромный
для
ваших
автотестов
Меркушев Кирилл
Инженер по автоматизации тестирования
Тестовая среда, СПб, 30 ноября 2013
22. Hamcrest
assertTrue("Fruit should be sweet", fruit.isSweet());
assertEquals("Fruit should be round",
Shape.ROUND, fruit.getShape());
assertEquals("Fruit should be orange",
Color.ORANGE, fruit.getColor());
assertThat(
fruit,
both(round()).and(sweet()).and(hasColor(Color.ORANGE))
);
23. Hamcrest
assertTrue("Fruit1 should be sweet", fruit1.isSweet());
assertTrue("Fruit2 should be sweet", fruit2.isSweet());
assertTrue("Fruit3 should be sweet", fruit3.isSweet());
assertThat(asList(fruit1, fruit2, fruit3),
everyItem(is(sweet())));
// или
assertThat(asList(fruit1, fruit2, fruit3),
hasItem(not(sweet())));
27. Webdriver-‐matchers
Href
Name
Afr
27
Type
Ac^on
Placeholder
Size
Classname
Target
Alt
Id
Title
Value
Text
Src
http://bit.ly/yamatcher
28. CollecAon-‐matchers
List<String> actual = asList("1", "2", "3");
List<String> expected = asList("3", "2", "1");
assertThat(actual, hasSameItemsAsList(expected)
.sameSorted());
Expected: Lists contains same items and
sorted equally
but:
(Not sorted correctly) [<2>]:
-> "Expected 3 on position [0], but was - 1"
-> "Expected 1 on position [2], but was - 3"
http://bit.ly/yamatcher