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

Павел Степанов, Система контроля качества Java SE

Embed Size (px)

DESCRIPTION

Павел Степанов, Sun Microsystems, Inc, Санкт-Петербург, Россия Система контроля качества Java SE

Citation preview

Page 1: Павел Степанов, Система контроля качества Java SE

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

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

Page 2: Павел Степанов, Система контроля качества Java SE

J2SE в цифрах

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

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

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

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

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

Page 3: Павел Степанов, Система контроля качества Java SE

J2SE в проектах

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

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

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

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

Page 4: Павел Степанов, Система контроля качества Java SE

J2SE в графиках

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

J4b

SSR/LU

JDK 7

Page 5: Павел Степанов, Система контроля качества Java SE

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

Page 6: Павел Степанов, Система контроля качества Java SE

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

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

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

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

Page 7: Павел Степанов, Система контроля качества Java SE

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

Page 8: Павел Степанов, Система контроля качества Java SE

Качество JDK 7

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

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

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

Page 9: Павел Степанов, Система контроля качества Java SE

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

Page 10: Павел Степанов, Система контроля качества Java SE

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

b01b01 b02b02 b03b03

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

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

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

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

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

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

Page 11: Павел Степанов, Система контроля качества Java SE

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

Page 12: Павел Степанов, Система контроля качества Java SE

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

Page 13: Павел Степанов, Система контроля качества Java SE

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

Page 14: Павел Степанов, Система контроля качества Java SE

Synchronized Security Release

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

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

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

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

Page 15: Павел Степанов, Система контроля качества Java SE

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

Page 16: Павел Степанов, Система контроля качества Java SE

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

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

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

Page 17: Павел Степанов, Система контроля качества Java SE

Java For Business

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

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

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

Page 18: Павел Степанов, Система контроля качества Java SE

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

Page 19: Павел Степанов, Система контроля качества Java SE

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

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

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

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

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

Page 20: Павел Степанов, Система контроля качества Java SE

Вопросы?