Top Banner
Контроль качества Java SE Павел Степанов, SUN Microsystems
20

Павел Степанов

Jul 23, 2015

Download

Education

SQALab
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Павел Степанов

Контроль качества Java SE

Павел Степанов, SUN Microsystems

Page 2: Павел Степанов

J2SE в цифрах

• 130 000 000 загрузок в месяц*

• 100+ инженеров по качеству

• 8 различных продуктов или версий

• 3 или 4 релиза одновременно

• 1.5 релиза в неделю в среднем

Page 3: Павел Степанов

J2SE в проектах

• JDK 7- новая версия Java

• SSR - обновления безопасности

• LU, FU и MU - другие обновления

• J4B – платные релизы

Page 4: Павел Степанов

J2SE в графиках

неделя 1 2 3 4 5 6 7 8 9

J4b

SSR/LU

JDK 7

Page 5: Павел Степанов

Структура проекта

Page 6: Павел Степанов

Качество тестов

• ~95+% автоматических тестов

• Непрерывная разработка новых тестов

• Постоянная интеграция в предыдущие версии

Page 7: Павел Степанов

Организация тестовой базы

Page 8: Павел Степанов

Качество JDK 7

• Длинный тестовый цикл

• Много тестовых команд

• Наличие новых технологий, интегрированных в продукт (изначально непокрытых тестами)

Page 9: Павел Степанов

Тестирование изменений

Page 10: Павел Степанов

Тестовый цикл новой версии

b01b01 b02b02 b03b03

тестирование b01

тестирование b01

тестирование B02

тестирование B02

тестирование b03

тестирование b03

Page 11: Павел Степанов

Критерий выхода

Page 12: Павел Степанов

Пример критерия выхода

Page 13: Павел Степанов

Жизненный цикл и критерий выхода

Page 14: Павел Степанов

Synchronized Security Release

• Короткий тестовый цикл – два билда (если b02 удовлетворяет критерию выхода)

• Полностью под контролем одной команды тестировщиков

• 4 версии параллельно

• Тесная интеграция с разработчиками

Page 15: Павел Степанов

Жизненный цикл и критерий выхода

Page 16: Павел Степанов

Критерий выхода SSR

• Нет регрессий

• Все заявленные ошибки в безопасности исправлены

Page 17: Павел Степанов

Java For Business

• Короткий тестовый цикл – один билд

• Полностью под контролем одной команды тестировщиков

• 3 версии параллельно, все исправления рассматриваются индивидуально

Page 18: Павел Степанов

Процесс тестирования J4B

Page 19: Павел Степанов

J4B критерий выхода

• Отсутствие регрессий– Если регрессии есть – билд выбрасывается,

соответствующие испоавления исключаются из пространства и строится новый билд.

• Ошибки исправлены– Если исправлены не все ошибки, но

регрессий нет, то подписчики все равно могут получить этот билд

Page 20: Павел Степанов

Вопросы?