Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΎΠ½Π»Π°ΠΉΠ½ Π½Π° Bookidrom.ru! БСсплатныС ΠΊΠ½ΠΈΠ³ΠΈ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠ»ΠΈΠΊΠ΅

Π§ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ½Π»Π°ΠΉΠ½ «Как Ρ‚Π΅ΡΡ‚ΠΈΡ€ΡƒΡŽΡ‚ Π² GoogleΒ». Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° 19

Автор ДТСймс Π£ΠΈΡ‚Ρ‚Π°ΠΊΠ΅Ρ€

ВСстированиС Π½Π° скоростях ΠΈ Π² ΠΌΠ°ΡΡˆΡ‚Π°Π±Π°Ρ… Google

ΠŸΡƒΠ΄ΠΆΠ° Π“ΡƒΠΏΡ‚Π°, ΠœΠ°Ρ€ΠΊ Айви ΠΈ Π”ΠΆΠΎΠ½ ПСникс

БистСмы Π½Π΅ΠΏΡ€Π΅Ρ€Ρ‹Π²Π½ΠΎΠΉ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ β€” Π³Π»Π°Π²Π½Ρ‹Π΅ Π³Π΅Ρ€ΠΎΠΈ обСспСчСния работоспособности ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π° Π²ΠΎ врСмя Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ. Випичная схСма Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π° систСм Π½Π΅ΠΏΡ€Π΅Ρ€Ρ‹Π²Π½ΠΎΠΉ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ такая.

1. ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ послСднюю копию ΠΊΠΎΠ΄Π°.

2. Π’Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ всС тСсты.

3. Π‘ΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ ΠΎ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π°Ρ….

4. ΠŸΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ ΠΊ ΠΏΡƒΠ½ΠΊΡ‚Ρƒ 1.

РСшСниС ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎ справляСтся с нСбольшой ΠΊΠΎΠ΄ΠΎΠ²ΠΎΠΉ Π±Π°Π·ΠΎΠΉ, ΠΏΠΎΠΊΠ° Π΄ΠΈΠ½Π°ΠΌΠΈΡ‡Π½ΠΎΡΡ‚ΡŒ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΊΠΎΠ΄Π° Π½Π΅ Π²Ρ‹Ρ…ΠΎΠ΄ΠΈΡ‚ Π·Π° Ρ€Π°ΠΌΠΊΠΈ, Π° тСсты ΠΏΡ€ΠΎΠ³ΠΎΠ½ΡΡŽΡ‚ΡΡ быстро. Π§Π΅ΠΌ большС становится ΠΊΠΎΠ΄Π°, Ρ‚Π΅ΠΌ сильнСС ΠΏΠ°Π΄Π°Π΅Ρ‚ ΡΡ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Ρ… систСм. Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°Π΅Ρ‚ врСмя «чистого» запуска, ΠΈ Π² ΠΎΠ΄ΠΈΠ½ ΠΏΡ€ΠΎΠ³ΠΎΠ½ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ всС большС ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ. Если Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ сломаСтся, Π½Π°ΠΉΡ‚ΠΈ ΠΈ ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ становится всС слоТнСС.

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΎΠ² Π² Google происходит быстро ΠΈ с Ρ€Π°Π·ΠΌΠ°Ρ…ΠΎΠΌ. ΠœΡ‹ добавляСм Π² Π±Π°Π·Ρƒ ΠΊΠΎΠ΄Π° всСго Google большС 20 ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² ΠΌΠΈΠ½ΡƒΡ‚Ρƒ, ΠΈ 50% Ρ„Π°ΠΉΠ»ΠΎΠ² Π² Π½Π΅ΠΉ ΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ мСсяц. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΈ выпуск всСх ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΎΠ² ΠΎΠΏΠΈΡ€Π°ΡŽΡ‚ΡΡ Π½Π° автотСсты, ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡŽΡ‰ΠΈΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π°. Π•ΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹ΠΏΡƒΡΠΊΠ°ΡŽΡ‚ΡΡ нСсколько Ρ€Π°Π· Π² дСнь, Π΄Ρ€ΡƒΠ³ΠΈΠ΅ β€” Ρ€Π°Π· Π² нСсколько нСдСль.

По ΠΈΠ΄Π΅Π΅, ΠΏΡ€ΠΈ Ρ‚Π°ΠΊΠΎΠΉ ΠΎΠ³Ρ€ΠΎΠΌΠ½ΠΎΠΉ ΠΈ Π΄ΠΈΠ½Π°ΠΌΠΈΡ‡Π½ΠΎΠΉ Π±Π°Π·Π΅ ΠΊΠΎΠ΄Π° ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Ρ‚Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ ΠΊΡƒΡ‡Ρƒ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅ сборки Π² состоянии Β«Π·Π΅Π»Π΅Π½ΠΎΠ³ΠΎ свСта». БистСма Π½Π΅ΠΏΡ€Π΅Ρ€Ρ‹Π²Π½ΠΎΠΉ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ Π΄ΠΎΠ»ΠΆΠ½Π° ΠΏΠΎΠΌΠΎΠ³Π°Ρ‚ΡŒ с этим. Она Π΄ΠΎΠ»ΠΆΠ½Π° сразу Π²Ρ‹Π΄Π΅Π»ΡΡ‚ΡŒ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅, приводящСС ΠΊ сбою тСста, Π° Π½Π΅ просто ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ Π½Π° Π½Π°Π±ΠΎΡ€ ΠΏΠΎΠ΄ΠΎΠ·Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΈΠ»ΠΈ, Ρ‡Ρ‚ΠΎ Π΅Ρ‰Π΅ Ρ…ΡƒΠΆΠ΅, ΠΏΠ΅Ρ€Π΅Π±ΠΈΡ€Π°Ρ‚ΡŒ ΠΈΡ… всС Π² поисках Π½Π°Ρ€ΡƒΡˆΠΈΡ‚Π΅Π»Ρ.

Π§Ρ‚ΠΎΠ±Ρ‹ Ρ€Π΅ΡˆΠΈΡ‚ΡŒ эту ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ, ΠΌΡ‹ построили систСму Π½Π΅ΠΏΡ€Π΅Ρ€Ρ‹Π²Π½ΠΎΠΉ сборки (рис. 2.6), которая Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅Ρ‚ зависимости ΠΈ выдСляСт Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚Π΅ тСсты, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ связаны с ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΌ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ, Π° ΠΏΠΎΡ‚ΠΎΠΌ выполняСт Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΈΡ…. И Ρ‚Π°ΠΊ для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ измСнСния. БистСма построСна Π½Π° инфраструктурС ΠΎΠ±Π»Π°Ρ‡Π½Ρ‹Ρ… вычислСний Google, которая позволяСт ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ большоС количСство сборок ΠΈ Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ Π·Π°Ρ‚Ρ€ΠΎΠ½ΡƒΡ‚Ρ‹Π΅ тСсты сразу ΠΆΠ΅ послС ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠΌ Π½ΠΈΠΆΠ΅ ΠΌΡ‹ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅ΠΌ, ΠΊΠ°ΠΊ наша систСма Π΄Π°Π΅Ρ‚ Π±ΠΎΠ»Π΅Π΅ Π±Ρ‹ΡΡ‚Ρ€ΡƒΡŽ ΠΈ Ρ‚ΠΎΡ‡Π½ΡƒΡŽ ΠΎΠ±Ρ€Π°Ρ‚Π½ΡƒΡŽ связь, Ρ‡Π΅ΠΌ типичная нСпрСрывная сборка. Π’ нашСм сцСнарии ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π΄Π²Π° тСста ΠΈ Ρ‚Ρ€ΠΈ измСнСния, Π·Π°Ρ‚Ρ€Π°Π³ΠΈΠ²Π°ΡŽΡ‰ΠΈΠ΅ эти тСсты. ВСст gmail_server_tests ΠΏΠ°Π΄Π°Π΅Ρ‚ ΠΈΠ·-Π·Π° измСнСния 2. Випичная систСма Π½Π΅ΠΏΡ€Π΅Ρ€Ρ‹Π²Π½ΠΎΠΉ сборки сообщила Π±Ρ‹, Ρ‡Ρ‚ΠΎ ΠΊ сбой случился ΠΈΠ·-Π·Π° измСнСния 2 ΠΈΠ»ΠΈ 3, Π½Π΅ уточняя. ΠœΡ‹ ΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ выполнСния, поэтому запускаСм тСсты нСзависимо, Π½Π΅ доТидаясь Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ Ρ†ΠΈΠΊΠ»Π° «сборка–тСстированиС». Анализ зависимостСй сузит Π½Π°Π±ΠΎΡ€ тСстов для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ измСнСния, поэтому Π² нашСм ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΎΠ±Ρ‰Π΅Π΅ количСство Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΉ тСста Ρ‚ΠΎ ΠΆΠ΅ самоС.

Рис. 2.6. Π‘Ρ€Π°Π²Π½Π΅Π½ΠΈΠ΅ систСм Π½Π΅ΠΏΡ€Π΅Ρ€Ρ‹Π²Π½ΠΎΠΉ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ

Наша систСма Π±Π΅Ρ€Π΅Ρ‚ Π΄Π°Π½Π½Ρ‹Π΅ ΠΎ зависимостях ΠΈΠ· спСцификаций сборки, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚, ΠΊΠ°ΠΊ компилируСтся ΠΊΠΎΠ΄ ΠΈ ΠΊΠ°ΠΊΠΈΠ΅ Ρ„Π°ΠΉΠ»Ρ‹ входят Π² сборку прилоТСния ΠΈ тСста. ΠŸΡ€Π°Π²ΠΈΠ»Π° сборки ΠΈΠΌΠ΅ΡŽΡ‚ Ρ‡Π΅Ρ‚ΠΊΠΈΠ΅ Π²Ρ…ΠΎΠ΄Π½Ρ‹Π΅ ΠΈ Π²Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅, объСдинив ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ Ρ‚ΠΎΡ‡Π½ΠΎΠ΅ описаниС процСсса сборки. Наша систСма строит Π² памяти Π³Ρ€Π°Ρ„ΠΈΠΊ зависимостСй сборки, ΠΊΠ°ΠΊ Π½Π° рис. 2.7, ΠΈ обновляСт Π΅Π³ΠΎ с ΠΊΠ°ΠΆΠ΄Ρ‹ΠΌ Π½ΠΎΠ²Ρ‹ΠΌ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ. На основании этой схСмы ΠΌΡ‹ опрСдСляСм всС тСсты, связанныС прямо ΠΈΠ»ΠΈ косвСнно с ΠΊΠΎΠ΄ΠΎΠΌ, вошСдшим Π² ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅. ИмСнно эти тСсты Π½ΡƒΠΆΠ½ΠΎ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ·Π½Π°Ρ‚ΡŒ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π΅ состояниС сборки. Π”Π°Π²Π°ΠΉΡ‚Π΅ посмотрим Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€.

Рис. 2.7. ΠŸΡ€ΠΈΠΌΠ΅Ρ€ зависимостСй сборки

ΠœΡ‹ Π²ΠΈΠ΄ΠΈΠΌ, ΠΊΠ°ΠΊ Π΄Π²Π° ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… измСнСния Π² ΠΊΠΎΠ΄Π΅, находящихся Π½Π° Ρ€Π°Π·Π½Ρ‹Ρ… уровнях Π΄Π΅Ρ€Π΅Π²Π° зависимостСй, Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΡƒΡŽΡ‚ΡΡ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ΄ΠΎΠ±Ρ€Π°Ρ‚ΡŒ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ тСстов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚, Π΄Π°Ρ‚ΡŒ Π»ΠΈ Π·Π΅Π»Π΅Π½Ρ‹ΠΉ свСт ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°ΠΌ Gmail ΠΈ Buzz.

Π‘Ρ†Π΅Π½Π°Ρ€ΠΈΠΉ 1: ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π² ΠΎΠ±Ρ‰Π΅ΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ΅

Для ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ сцСнария возьмСм ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΠ΅Ρ‚ Ρ„Π°ΠΉΠ»Ρ‹ Π² common_collections_util, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½Π° рис. 2.8.

Рис. 2.8. ИзмСнСниС в common_collections_util.h

ΠžΡ‚ΠΏΡ€Π°Π²ΠΈΠ² ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅, ΠΌΡ‹ пСрСмСщаСмся ΠΏΠΎ линиям зависимостСй Π²Π²Π΅Ρ€Ρ… ΠΏΠΎ Π³Ρ€Π°Ρ„ΠΈΠΊΡƒ. Π’Π°ΠΊ ΠΌΡ‹ Π½Π°ΠΉΠ΄Π΅ΠΌ всС тСсты, зависящиС ΠΎΡ‚ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ. Когда поиск Π·Π°Π²Π΅Ρ€ΡˆΠΈΡ‚ΡΡ, Π° это Π·Π°ΠΉΠΌΠ΅Ρ‚ лишь Π΄ΠΎΠ»ΠΈ сСкунды, Ρƒ нас Π±ΡƒΠ΄ΡƒΡ‚ всС тСсты, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½ΡƒΠΆΠ½ΠΎ ΠΏΡ€ΠΎΠ³Π½Π°Ρ‚ΡŒ, ΠΈ ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Π΅ статусы Π½Π°ΡˆΠΈΡ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² (рис. 2.9).

Рис. 2.9. ВСсты, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ влияСт ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅

Π‘Ρ†Π΅Π½Π°Ρ€ΠΈΠΉ 2: ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π² зависимом ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅

Π’ΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ возьмСм ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΠ΅Ρ‚ Ρ„Π°ΠΉΠ»Ρ‹ Π² youtube_client (рис. 2.10).

Рис. 2.10. ИзмСнСниС в youtube_client

ΠŸΡ€ΠΎΠ²Π΅Π΄Ρ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½Ρ‹ΠΉ Π°Π½Π°Π»ΠΈΠ·, ΠΌΡ‹ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΠΌ, Ρ‡Ρ‚ΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ влияСт Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π° buzz_client_tests ΠΈ Ρ‡Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ Π°ΠΊΡ‚ΡƒΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ статус ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Buzz (рис. 2.11).

Рис. 2.11. Buzz Π½ΡƒΠΆΠ½ΠΎ ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚, ΠΊΠ°ΠΊ ΠΌΡ‹ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΡƒΠ΅ΠΌ количСство тСстов, прогоняСмых для ΠΎΠ΄Π½ΠΎΠ³ΠΎ измСнСния, Π±Π΅Π· ΠΏΠΎΡ‚Π΅Ρ€ΠΈ Π² точности Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ². УмСньшСниС количСства тСстов для ΠΎΠ΄Π½ΠΎΠ³ΠΎ измСнСния позволяСт Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ всС Π½ΡƒΠΆΠ½Ρ‹Π΅ тСсты для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ зафиксированного измСнСния. Нам становится Π»Π΅Π³Ρ‡Π΅ Π²Ρ‹ΡΠ²Π»ΡΡ‚ΡŒ ΠΈ ΠΎΡ‚Π»Π°ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ Π² ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ½ΠΎΠΌ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ.

Π£ΠΌΠ½Ρ‹Π΅ инструмСнты ΠΈ возмоТности инфраструктуры ΠΎΠ±Π»Π°Ρ‡Π½Ρ‹Ρ… вычислСний сдСлали систСму Π½Π΅ΠΏΡ€Π΅Ρ€Ρ‹Π²Π½ΠΎΠΉ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ быстрой ΠΈ Π½Π°Π΄Π΅ΠΆΠ½ΠΎΠΉ. И ΠΌΡ‹ постоянно стараСмся Π΅Π΅ ΡƒΠ»ΡƒΡ‡ΡˆΠΈΡ‚ΡŒ, хотя ΠΎΠ½Π° ΡƒΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² тысячах ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² Google, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Ρ‹ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹ быстрСС ΠΈ ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΡ‚ΡŒ большС ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ. И β€” Ρ‡Ρ‚ΠΎ Π²Π°ΠΆΠ½ΠΎ β€” наш прогрСсс Π·Π°ΠΌΠ΅Ρ‡Π°ΡŽΡ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ.

ВСст-сСртификация

Π’ Π½Π°Ρ‡Π°Π»Π΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠŸΠ°Ρ‚Ρ€ΠΈΠΊ ΠšΠΎΡƒΠΏΠ»Π΅Π½Π΄ Π·Π°ΠΌΠ΅Ρ‡Π°Π΅Ρ‚, ΠΊΠ°ΠΊ слоТно Π±Ρ‹Π»ΠΎ ΠΏΡ€ΠΈΠ²Π»Π΅Ρ‡ΡŒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΊ Ρ‚Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ. ΠŸΠ΅Ρ€Π²Ρ‹ΠΌ Π΄Π΅Π»ΠΎΠΌ ΠΌΡ‹ создали ΠΈΠΌ ΠΎΡ‚Π»ΠΈΡ‡Π½ΡƒΡŽ компанию ΠΈ наняли тСхничСски ΠΏΠΎΠ΄ΠΊΠΎΠ²Π°Π½Π½Ρ‹Ρ… тСстировщиков. А Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Ρ‚ΡΠ½ΡƒΡ‚ΡŒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² Π² процСсс, ΠΌΡ‹ ΠΏΡ€ΠΈΠ΄ΡƒΠΌΠ°Π»ΠΈ «ВСст-ΡΠ΅Ρ€Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡŽΒ». ΠžΠ³Π»ΡΠ΄Ρ‹Π²Π°ΡΡΡŒ Π½Π°Π·Π°Π΄, ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°Ρ‚ΡŒ, эта ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° сыграла Π²Π°ΠΆΠ½ΡƒΡŽ Ρ€ΠΎΠ»ΡŒ Π² становлСнии ΠΊΡƒΠ»ΡŒΡ‚ΡƒΡ€Ρ‹ тСстирования Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌΠΈ Π² Google.

ВСст-сСртификация Π½Π°Ρ‡ΠΈΠ½Π°Π»Π°ΡΡŒ ΠΊΠ°ΠΊ сорСвнованиС. Π‘ΡƒΠ΄ΡƒΡ‚ Π»ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΡΠ΅Ρ€ΡŒΠ΅Π·Π½ΠΎ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚ΡŒΡΡ ΠΊ Ρ‚Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ, Ссли ΠΌΡ‹ сдСлаСм эту Ρ€Π°Π±ΠΎΡ‚Ρƒ прСстиТной? Π§Ρ‚ΠΎ, Ссли Π½Π°Π³Ρ€Π°ΠΆΠ΄Π°Ρ‚ΡŒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‚ тСстовым ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ°ΠΌ? А Ρ‡Ρ‚ΠΎ, Ссли ΠΌΡ‹ скаТСм, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ сСртифицированныС ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€Ρ‹? А ΠΌΠΎΠΆΠ΅Ρ‚, Π΅Ρ‰Π΅ ввСсти систСму Π½Π°Π³Ρ€Π°Π΄Π½Ρ‹Ρ… Π±Π΅ΠΉΠ΄ΠΆΠ΅ΠΉ (рис. 2.12), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡ‰Π΅Π³ΠΎΠ»ΡΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π΄ ΠΊΠΎΠ»Π»Π΅Π³Π°ΠΌΠΈ?

Рис. 2.12. Π‘Π΅ΠΉΠ΄ΠΆΠΈ тСст-сСртификации ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ Π½Π° Π²ΠΈΠΊΠΈ-страницах ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ²

ΠœΡ‹ ΠΈΠ·ΠΎΠ±Ρ€Π΅Π»ΠΈ тСст-ΡΠ΅Ρ€Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡŽ β€” это систСма Π·Π°Π΄Π°Π½ΠΈΠΉ ΠΏΠΎ Ρ‚Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄ΠΎΠ»ΠΆΠ½Π° Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Π°, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΡ‚Π°Ρ‚ΡŒ сСртифицированной. ВсС ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‚ с Π½ΡƒΠ»Π΅Π²ΠΎΠ³ΠΎ уровня. Если ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ мастСрство Π±Π°Π·ΠΎΠ²ΠΎΠΉ Π³ΠΈΠ³ΠΈΠ΅Π½Ρ‹ ΠΊΠΎΠ΄Π°, Π΅ΠΉ даСтся ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ. Π£Ρ€ΠΎΠ²Π΅Π½ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ постСпСнно растСт с Ρ‚Π΅ΠΌ, ΠΊΠ°ΠΊ ΠΎΠ½Π° учится ΠΏΠΈΡΠ°Ρ‚ΡŒ всС Π±ΠΎΠ»Π΅Π΅ чистый ΠΊΠΎΠ΄. Π’ ΠΈΠ³Ρ€Π΅ Π² ΡΠ΅Ρ€Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡŽ всСго ΠΏΡΡ‚ΡŒ ΡƒΡ€ΠΎΠ²Π½Π΅ΠΉ, ΠΊΠ°ΠΊ ΠΈ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ… ΡΠ΅Ρ€ΡŒΠ΅Π·Π½Ρ‹Ρ… модСлях зрСлости Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ПО.


ΠšΡ€Π°Ρ‚ΠΊΠΎΠ΅ описаниС ΡƒΡ€ΠΎΠ²Π½Π΅ΠΉ ВСст-сСртификации

Π£Ρ€ΠΎΠ²Π΅Π½ΡŒ 1

β€” Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ тСстового покрытия.

β€” Π£ΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ систСму Π½Π΅ΠΏΡ€Π΅Ρ€Ρ‹Π²Π½ΠΎΠΉ сборки.

β€” Π Π°Π½ΠΆΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ тСсты Π½Π° ΠΌΠ°Π»Ρ‹Π΅, срСдниС ΠΈ большиС.

β€” ΠžΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ Π½Π΅Π΄Π΅Ρ‚Π΅Ρ€ΠΌΠΈΠ½ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ тСсты.

β€” Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒ Π½Π°Π±ΠΎΡ€ смоук-тСстов.

Π£Ρ€ΠΎΠ²Π΅Π½ΡŒ 2

β€” НС Π²Ρ‹ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ, ΠΏΠΎΠΊΠ° Π½Π΅ ΠΏΡ€ΠΎΠΉΠ΄ΡƒΡ‚ всС тСсты.

β€” ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ смоук-тСсты Π΄ΠΎ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ ΠΊΠΎΠ΄Π°.

β€” Π˜Π½ΠΊΡ€Π΅ΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½ΠΎΠ΅ ΠΏΠΎΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅ всСми тСстами Π½Π΅ мСньшС 50%.

β€” Π˜Π½ΠΊΡ€Π΅ΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½ΠΎΠ΅ ΠΏΠΎΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅ ΠΌΠ°Π»Ρ‹ΠΌΠΈ тСстами Π½Π΅ мСньшС 10%.

β€” Π₯отя Π±Ρ‹ ΠΎΠ΄Π½Π° Ρ„ΠΈΡ‡Π° ΠΏΠΎΠΊΡ€Ρ‹Ρ‚Π° ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹ΠΌ тСстом.

Π£Ρ€ΠΎΠ²Π΅Π½ΡŒ 3

β€” Π‘ΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ тСсты для всСх Π½Π΅Ρ‚Ρ€ΠΈΠ²ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ

β€” ΠžΠ±Ρ‰Π΅Π΅ ΠΏΠΎΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅ ΠΌΠ°Π»Ρ‹ΠΌΠΈ тСстами Π½Π΅ мСньшС 50%.

β€” Π’Π°ΠΆΠ½Ρ‹Π΅ Π½ΠΎΠ²Ρ‹Π΅ Ρ„ΠΈΡ‡ΠΈ ΠΏΠΎΠΊΡ€Ρ‹Ρ‚Ρ‹ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹ΠΌΠΈ тСстами.

Π£Ρ€ΠΎΠ²Π΅Π½ΡŒ 4

β€” Π‘ΠΌΠΎΡƒΠΊ-тСсты Π·Π°ΠΏΡƒΡΠΊΠ°ΡŽΡ‚ΡΡ автоматичСски ΠΏΠ΅Ρ€Π΅Π΄ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΎΠΉ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°.

β€” Π‘ΠΌΠΎΡƒΠΊ-тСсты проходят Π·Π° врСмя мСньшС 30 ΠΌΠΈΠ½ΡƒΡ‚.

β€” НСт Π½Π΅Π΄Π΅Ρ‚Π΅Ρ€ΠΌΠΈΠ½ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… тСстов.

β€” ΠžΠ±Ρ‰Π΅Π΅ тСстовоС ΠΏΠΎΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅ Π½Π΅ мСньшС 40%.

β€” ВСстовоС ΠΏΠΎΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΌΠ°Π»Ρ‹ΠΌΠΈ тСстами Π½Π΅ мСньшС 25%.

β€” ВсС Π²Π°ΠΆΠ½Ρ‹Π΅ Ρ„ΠΈΡ‡ΠΈ ΠΏΠΎΠΊΡ€Ρ‹Ρ‚Ρ‹ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹ΠΌΠΈ тСстами.

Π£Ρ€ΠΎΠ²Π΅Π½ΡŒ 5

β€” Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ тСст ΠΊ ΠΈΡΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΡŽ всСх Π½Π΅Ρ‚Ρ€ΠΈΠ²ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… Π±Π°Π³ΠΎΠ².

β€” Активно ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ доступныС срСдства Π°Π½Π°Π»ΠΈΠ·Π°.

β€” ΠžΠ±Ρ‰Π΅Π΅ тСстовоС ΠΏΠΎΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅ Π½Π΅ мСньшС 60%.

β€” ВСстовоС ΠΏΠΎΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΌΠ°Π»Ρ‹ΠΌΠΈ тСстами Π½Π΅ мСньшС 40%.

Π‘Π½Π°Ρ‡Π°Π»Π° ΠΌΡ‹ ΠΎΠ±ΠΊΠ°Ρ‚Π°Π»ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ… Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈ Ρ‚Π°ΠΊ Π±Ρ‹Π»ΠΈ ΠΏΠΎΠ·ΠΈΡ‚ΠΈΠ²Π½ΠΎ настроСны ΠΏΠΎ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡŽ ΠΊ Ρ‚Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ. Они Ρ…ΠΎΡ‚Π΅Π»ΠΈ ΡƒΠ»ΡƒΡ‡ΡˆΠΈΡ‚ΡŒ свои Π½Π°Π²Ρ‹ΠΊΠΈ. Когда ΠΌΡ‹ сбалансировали ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ Π½Π°Π³Ρ€Π°Π΄, ΠΌΡ‹ объявили ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌ большоС сорСвнованиС Π·Π° Π±Π΅ΠΉΠ΄ΠΆΠΈ ΠΏΠΎ всСй ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ. Наша ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π±Ρ‹Π»Π° принята Π½Π° ΡƒΡ€Π°.

ΠŸΡ€ΠΎΠ΄Π°Ρ‚ΡŒ Π½Π°ΡˆΡƒ идСю оказалось Π½Π΅ Ρ‚Π°ΠΊ слоТно, ΠΊΠ°ΠΊ казалось. ΠšΠΎΠΌΠ°Π½Π΄Ρ‹ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²Ρ‹ΠΈΠ³Ρ€Ρ‹Π²Π°Π»ΠΈ ΠΎΡ‚ этого:

β€” Они ΠΏΠΎΠ»ΡƒΡ‡Π°Π»ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ ΠΎΡ‚ ΠΎΠΏΡ‹Ρ‚Π½Ρ‹Ρ… тСстировщиков, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ согласились ΡΡ‚Π°Ρ‚ΡŒ наставниками тСст-сСртификации. РСсурсы тСстирования всСгда Π² Π΄Π΅Ρ„ΠΈΡ†ΠΈΡ‚Π΅, Π° ΠΏΡ€ΠΈΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΠ²ΡˆΠΈΡΡŒ ΠΊ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅, ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΏΠΎΠ»ΡƒΡ‡Π°Π»Π° большС тСстировщиков, Ρ‡Π΅ΠΌ Π΅ΠΉ Π±Ρ‹Π»ΠΎ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΎ ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎ.