Top Banner
Через тернии к качеству Java или простые герои для непростых задач Александр Ильин Архитектор тестирования JDK
30

Александр Ильин, Oracle

Jul 08, 2015

Download

Documents

Nata_Churda

«Через тернии к качеству Java или простые герои для непростых задач»
BitByte: 20 апреля 2013, Санкт-Петербург
http://bitbyte.itmozg.ru/
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: Александр Ильин, Oracle

Через тернии к качеству Javaили

простые героидля непростых задач

Александр ИльинАрхитектор тестирования JDK

Page 2: Александр Ильин, Oracle

Через тернии к качеству Javaили

простые героидля непростых задач

ищутся

Александр ИльинАрхитектор тестирования JDK

Page 3: Александр Ильин, Oracle
Page 4: Александр Ильин, Oracle

Мы тестируем

Page 5: Александр Ильин, Oracle

Мы тестируем

Oracle JDK

Page 6: Александр Ильин, Oracle

Как мы тестируем

● Тест – это две программы● 1-я использует тестируемую функциональность● 2-я проверяет правильность работы 1-й

● Статическая верификация– Анализ исходного кода

● Контроль– Метрики покрытия, система учета дефектов,

метрики и т.п.

Page 7: Александр Ильин, Oracle

Виртуальная машина Hotspot

“Основная виртуальная машина Java для настольных компьютеров и серверов, выпускаемая корпорацией Oracle. Обладает технологиями динамической компиляции JIT и адаптивной оптимизации, предназначенными для повышения производительности.”

● Тысячи тестов● Тысячи строк кода

– Java, C● Сотни конфигураций

– hardware– software

Page 8: Александр Ильин, Oracle

Hotspot. Пример теста

JIT - технология увеличения производительности программных систем, использующих байт-код, путём компиляции байт-кода в машинный код непосредственно во время работы программы

JIT Tester- автоматическая генерация тестового кода для многократного повторного выполнения

Page 9: Александр Ильин, Oracle

switch ((char)(- -8.386259016272289E307 / (8306808263615646720L ^ (var_2 >>= 1559649519)) % ((false ? false : !true) ^ (new boolean[(byte)6036903420612573184L])[(byte)1.0444361254061271E308] ? (byte)'`' : (byte)822514559) > (byte)- ~4644018814830241792L - "".charAt(1630041831) ? (byte)2.5301057E38F : (var_2 ^= (var_2 |= 'F'))))

{

case 'A':

}

Hotspot. Пример теста

Page 10: Александр Ильин, Oracle

Client

● Java FX, Swing, AWT

Page 11: Александр Ильин, Oracle

Client

● Автоматический тест это тоже две программы:● Пользовательский интерфейс● Инструкция на Java

● Ручной тест это одна программа– Пользовательский интерфейс– Html инструкция– Outsource

Page 12: Александр Ильин, Oracle

Client. Пример теста.

Page 13: Александр Ильин, Oracle

Embedded

● Java на маленьких девайсах● Зоопарк технических проблем● Кастомные сборки OS● Специфичные тесты

Ethernet

USB

SD Card

Audio RCA Video

General Purpose I/O

Power

HDMI

Page 14: Александр Ильин, Oracle
Page 15: Александр Ильин, Oracle
Page 16: Александр Ильин, Oracle

Tools

● Огромная нагрузка– Тысячи тестов– Сотни поддерживаемых конфигураций

● Отчетность● Расширяемость● Новая функциональность● Распределенность● 24/7

Page 17: Александр Ильин, Oracle

Кто нам нужен

Или …

Сказка о геофизиках

Page 18: Александр Ильин, Oracle

● Необходимая экспертиза:– Предметная область – чтобы придумать тесты– Программирование – чтобы автоматизировать– Технологии тестирования

● Роли:– Тест дизайнер– Тест автоматизатор– Тест исполнитель

Тестирование вообще

Page 19: Александр Ильин, Oracle

Мы тестируем

Oracle JDK

Page 20: Александр Ильин, Oracle

● Необходимая экспертиза:– Предметная область = программирование– Программирование = предметная область– Технологии тестирования

● Роли:– Тест дизайнер = тест автоматизатор– Тест автоматизатор = тест дизайнер– Тест исполнитель = компьютер

Тестирование в JDK SQE

Page 21: Александр Ильин, Oracle

● Необходимая экспертиза:– Предметная область = программирование– Программирование = предметная область– Технологии тестирования

● Роли:– Тест дизайнер = автоматизатор– Тест автоматизатор = дизайнер– Тест исполнитель = компьютер

Тестирование в JDK SQE

Page 22: Александр Ильин, Oracle

● Необходимая экспертиза:– Предметная область = программирование– Программирование = предметная область– Технологии тестирования

● Роли:– Тест дизайнер = автоматизатор– Тест автоматизатор = дизайнер– Тест исполнитель = компьютер

программист

Тестирование в JDK SQE

Page 23: Александр Ильин, Oracle

Кто нам нужен

Программирование

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

Требуемаяэкспертизадля тестированияOracle JDK

Page 24: Александр Ильин, Oracle

Oracle JDK

в программистах

нуждается

Page 25: Александр Ильин, Oracle

Кто нам нужен

● Программисты● Программисты● Программисты

и конечно● Программистки

Java, C, C++, C#, shell, perl …

Page 26: Александр Ильин, Oracle

Открытые позиции

● VM – 2● Embedded – 4● Client – 4● Update releases – 9

http://oracle.com/careers

Page 27: Александр Ильин, Oracle

Оракл Девелопмент СПБ

● Возможность обучения и профессионального роста

● Участие в создании передовых технологий в области разработки программного обеспечения

● Гибкий график, дружный коллектив профессионалов

● Достойный компенсационный пакет, комфортные условия работы

● Бесплатные курсы английского языка.● Офис в центре города, в шаговой доступности от

м. Балтийская

Page 28: Александр Ильин, Oracle

Оракл Девелопмент СПБ

Page 29: Александр Ильин, Oracle

Оракл Девелопмент СПБ

Page 30: Александр Ильин, Oracle

Оракл Девелопмент СПБ

Хотите быть частью всемирной команды, которая непосредственно влияет на развитие

технологий в современном мире?

Тогда Оракл - ваша компания.

http://oracle.com/careers