Как найти общий
язык с результатами
тестов
Артем Ерошенко
старший инженер по автоматизации
Как найти общий язык

с результатами тестов?
Отчеты автотестов
Хорошие отчеты

скорость и точность
Чем дальше от кода

тем меньше точность
Юнит тесты
Тесты через API
Web-тесты
Хорошие отчеты

содержат данные
Хорошие отчеты

понятны всем
Хорошие отчеты

легко читать всем
Allure Framework
Allure Framework

Мультиязычность
Allure Framework

Модульность
Allure Framework

Гибкость
Allure Framework

расширение xUnit
Стандартный xUnit
Стандартный xUnit

TestSuite

Class
Стандартный xUnit

TestCase

Method

TestSuite

Class
Расширение xUnit

Аттачменты (Аттачи)
Аттачменты

HTML

JSON

TXT

IMAGE

XML

OTHER
Расширение xUnit

Шаги (Степы)
Шаги

Вложенность
Шаги

Вложенность
Статус завершения
Шаги

Вложенность
Статус завершения
Содержат аттачменты
Allure Framework
=

Стандартный xUnit
+

Шаги

Аттачменты
Модульность Allure
Модульность Allure

Allure Model
Allure Report
Allure Adaptor
Allure Model
Test	

Suite	

.xml

расширение xUnit
xUnit Model
<testsuite time=“188”!
name=“company.TestMe”!
tests=“1” skipped=“0”!
errors=“0” failures=“0”>!
    <testcase!
...
Allure Model
t info
tes

start/stop
verity
se

Test	

Suite	

.xml

tatus
s

расширение xUnit
Allure Model

<testsuite start="3" stop="25">!
    <title>Test Suite</title>!
    <testcase start="5" !
stop=“23”!
status=...
Allure Model
t info
tes

start/stop
verity
se
steps

Test	

Suite	

.xml

tatus
s
attachments

расширение xUnit
Allure Model

<testcase … >!
    <title>Test Case</title>!
<step start="3" start="17" !
title=“Open Main Page"/>!
<attachm...
Allure Model

<testcase … >!
    <title>Test Case</title>!
<step start="3" start="17" !
title=“Open Main Page">!
<attachme...
Allure Model
<testcase … >!
    <title>Test Case</title>!
<step start="3" start="17" !
title=“Open Main Page">!
<step star...
Allure Adaptor
jUnit

pyUnit

Karma

Test	

Suite	

.xml
Allure Adaptor
jUnit

pyUnit

Karma

jUnit	

Adaptor
Test	

Suite	

.xml
Allure Adaptor
jUnit

pyUnit

Karma

jUnit	

Adaptor
pyUnit	

Adaptor

Test	

Suite	

.xml
Allure Adaptor
jUnit

jUnit	

Adaptor

pyUnit

pyUnit	

Adaptor

Karma

Karma	

Adaptor

Test	

Suite	

.xml
Allure Report
Test	

Suite	

.xml
Test	

Suite	

.xml
Test	

Suite	

.xml
Allure Report
Test	

Suite	

.xml
Test	

Suite	

.xml
Test	

Suite	

.xml

Test	

Suite	

.json

Report	

Data	

Generator...
Allure Report
Report Face

Test	

Suite	

.json
Test	

Suite	

.json
Test	

Suite	

.json

Run	

Status	

.json

+
Angular...
Модульность Allure
Report

jUnit

Data	

GEN

jUnit	

Adaptor
Test	

Suite	

.xml
Гибкость Allure

рецепт приготовления
Чистый xUnit
public void SearchTest {!
@Test!
public void searchResultsTest() {!
…!
}!
}
Добавляем шаги
@Step!
public void openMainPage () {!
driver.get(“http://yandex.ru”);!
}!
!

@Step!
public void searchBy (S...
Добавляем аттачи

@Attach(type=AttachmentType.PNG)!
public File makeScreenshot () {!
driver.getScreenshotAs(OutputType.Fil...
Пишем тест
public void SearchTest {!
@Test!
public void searchResultsTest() {!
openMainPage();!
searchBy(“Yandex”);!
check...
Получаем отчет

http://bit.ly/allure-reports
Попробуйте	

сами
Вопросы?

http://bit.ly/allure-reports
http://bit.ly/allure-framework
Upcoming SlideShare
Loading in...5
×

Артём Ерошенко: Как найти общий язык с результатами тестов

1,869

Published on

С ростом количества тестов возникает проблема анализа их результатов. Речь идёт не о UNIT-тестах, а о более высокоуровневых. Скажите честно, кто из вас не думал сделать свой отчёт? С подробными логами, скриншотами, дампами запросов и ответов и прочей информацией (которая, к слову, существенно облегчает поиск причин конкретной ошибки). Я расскажу о том, какой отчёт мы используем в Яндексе. А после доклада все желающие смогут попробовать его у себя.

0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,869
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
5
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

Артём Ерошенко: Как найти общий язык с результатами тестов

  1. 1. Как найти общий язык с результатами тестов Артем Ерошенко старший инженер по автоматизации
  2. 2. Как найти общий язык с результатами тестов?
  3. 3. Отчеты автотестов
  4. 4. Хорошие отчеты скорость и точность
  5. 5. Чем дальше от кода тем меньше точность
  6. 6. Юнит тесты
  7. 7. Тесты через API
  8. 8. Web-тесты
  9. 9. Хорошие отчеты содержат данные
  10. 10. Хорошие отчеты понятны всем
  11. 11. Хорошие отчеты легко читать всем
  12. 12. Allure Framework
  13. 13. Allure Framework Мультиязычность
  14. 14. Allure Framework Модульность
  15. 15. Allure Framework Гибкость
  16. 16. Allure Framework расширение xUnit
  17. 17. Стандартный xUnit
  18. 18. Стандартный xUnit TestSuite Class
  19. 19. Стандартный xUnit TestCase Method TestSuite Class
  20. 20. Расширение xUnit Аттачменты (Аттачи)
  21. 21. Аттачменты HTML JSON TXT IMAGE XML OTHER
  22. 22. Расширение xUnit Шаги (Степы)
  23. 23. Шаги Вложенность
  24. 24. Шаги Вложенность Статус завершения
  25. 25. Шаги Вложенность Статус завершения Содержат аттачменты
  26. 26. Allure Framework = Стандартный xUnit + Шаги Аттачменты
  27. 27. Модульность Allure
  28. 28. Модульность Allure Allure Model Allure Report Allure Adaptor
  29. 29. Allure Model Test Suite .xml расширение xUnit
  30. 30. xUnit Model <testsuite time=“188”! name=“company.TestMe”! tests=“1” skipped=“0”! errors=“0” failures=“0”>!     <testcase! time=“180" name=“testMe”! classname=“company.TestMe” />! </test-suite>
  31. 31. Allure Model t info tes start/stop verity se Test Suite .xml tatus s расширение xUnit
  32. 32. Allure Model <testsuite start="3" stop="25">!     <title>Test Suite</title>!     <testcase start="5" ! stop=“23”! status=“passed"! severity="normal">!         <title>Test Case</title>!     </testcase>! </testsuite>
  33. 33. Allure Model t info tes start/stop verity se steps Test Suite .xml tatus s attachments расширение xUnit
  34. 34. Allure Model <testcase … >!     <title>Test Case</title>! <step start="3" start="17" ! title=“Open Main Page"/>! <attachments title="image"! source=“path/to/image.png“! type="png"/>! </testcase>
  35. 35. Allure Model <testcase … >!     <title>Test Case</title>! <step start="3" start="17" ! title=“Open Main Page">! <attachments title="image"! source=“image.png“! type="png"/>! </step>! </testcase>
  36. 36. Allure Model <testcase … >!     <title>Test Case</title>! <step start="3" start="17" ! title=“Open Main Page">! <step start="4"! stop=“6“! type=“Input text"/>! </step>! </testcase>
  37. 37. Allure Adaptor jUnit pyUnit Karma Test Suite .xml
  38. 38. Allure Adaptor jUnit pyUnit Karma jUnit Adaptor Test Suite .xml
  39. 39. Allure Adaptor jUnit pyUnit Karma jUnit Adaptor pyUnit Adaptor Test Suite .xml
  40. 40. Allure Adaptor jUnit jUnit Adaptor pyUnit pyUnit Adaptor Karma Karma Adaptor Test Suite .xml
  41. 41. Allure Report Test Suite .xml Test Suite .xml Test Suite .xml
  42. 42. Allure Report Test Suite .xml Test Suite .xml Test Suite .xml Test Suite .json Report Data Generator Test Suite .json Test Suite .json Run Status .json
  43. 43. Allure Report Report Face Test Suite .json Test Suite .json Test Suite .json Run Status .json + Angular JS
  44. 44. Модульность Allure Report jUnit Data GEN jUnit Adaptor Test Suite .xml
  45. 45. Гибкость Allure рецепт приготовления
  46. 46. Чистый xUnit public void SearchTest {! @Test! public void searchResultsTest() {! …! }! }
  47. 47. Добавляем шаги @Step! public void openMainPage () {! driver.get(“http://yandex.ru”);! }! ! @Step! public void searchBy (String key) {! driver.findElement(id(“text”))! .type(key);! driver.findElement(id(“srch”)).click();! }
  48. 48. Добавляем аттачи @Attach(type=AttachmentType.PNG)! public File makeScreenshot () {! driver.getScreenshotAs(OutputType.File)! }! @Step! public void checkResultHas(String text) {! //получаем текст результатов! //с помощью драйвера, проверяем текст! ! makeScreenShot(); ! }
  49. 49. Пишем тест public void SearchTest {! @Test! public void searchResultsTest() {! openMainPage();! searchBy(“Yandex”);! checkResultsHas(“Yandex”);! }! }
  50. 50. Получаем отчет http://bit.ly/allure-reports
  51. 51. Попробуйте сами
  52. 52. Вопросы? http://bit.ly/allure-reports http://bit.ly/allure-framework
  1. Gostou de algum slide específico?

    Recortar slides é uma maneira fácil de colecionar informações para acessar mais tarde.

×