Internal Testing је затворени трацк тестирања у продавницама апликација, доступан само унутрашњем тиму програмера и QA инжењерима. У Google Play-у и App Store-у, Internal Testing омогућава објављивање билдова без модерисања и тренутно дистрибуирање међу ограниченим кругом учесника. Према подацима Google Android Developers, 2024, 60% тимова користи Internal Testing као прву фазу пре изласка на бета трацкове и продукцију. Ово је минимални праг уласка за проверу нових функција.
Главне тачке
Internal Testing је трацк тестирања у Google Play Console-у и TestFlight-у, намењен за дистрибуцију билдова међу члановима развојног тима. За разлику од отвореног бета тестирања, приступ Internal Testing-у је ограничен на листу имејл адреса које је одобрио власник налога програмера.
Главна предност је минимално време доставе билда тестерима. У Google Play-у Internal Testing не захтева модерисање — билд се појављује код учесника за 5–15 минута након учитавања. У App Store-у путем TestFlight-а билд се такође испоручује без претходног App Review-а, али подлеже аутоматској провери основних безбедносних захтева.
У Google Play-у постоје три трацка тестирања: Internal Testing, Closed Beta (Open Beta) и Production. Internal Testing је најбржи и најограниченији по броју учесника (до 100 људи). Closed Beta дозвољава до 10 000 учесника и захтева подешавање странице за тестирање. Production је финална фаза са потпуним модерисањем.
Internal Testing се користи за примарну проверу билдова пре прослеђивања на бета трацкове. Програмери учитавају дневне компилације за QA тим, проверавају интеграцију нових SDK-ова, тестирају компатибилност са различитим верзијама оперативних система и откривају регресионе грешке пре него што билд виде спољни тестери.
У Google Play Console-у, Internal Testing је засебан трацк, доступан у секцији Release → Testing. За додавање тестера довољно је навести његову имејл адресу — учесник добија позивницу и линк за придруживање путем Google Play-а. Билдови се учитавају кроз исти интерфејс као и продукциони реиздања.
Програмер учитава App Bundle или APK у секцију Internal Testing Google Play Console-а. Систем проверава основне захтеве: потпис, верзију кода и компатибилност са API-јем. Након 5–15 минута обраде, билд постаје доступан тестерима. Статус се прати у конзоли: Draft, In Review, Ready to Test.
// Fastlane — објављивање у Internal Testing трацк
lane :internal_testing do
gradle(task: ":app:assembleRelease")
upload_to_play_store(
track: "internal",
release_status: "completed",
rollout: 1.0
)
slack(
message: "Build uploaded to Internal Testing"
)
end
Додавање учесника се врши кроз секцију Testers у Google Play Console-у. Доступно је групно учитавање путем CSV фајла. Сваки тестер добија имејл са позивницом и упутством за инсталацију. За опозив приступа довољно је уклонити учесника из групе — инсталирана апликација наставља да ради, али нове исправке не стижу.
У Apple екосистему, улогу Internal Testing-а има TestFlight — платформа за дистрибуцију бета верзија. TestFlight подржава до 100 унутрашњих тестера, који се додају путем имејла у App Store Connect-у. За објављивање билда није потребно пролазити комплетан App Review, али се билд аутоматски проверава на минималне захтеве.
За разлику од Google Play-а, где Internal Testing уопште не захтева модерисање, Apple обавља аутоматски Basic Review. Провера траје 30–60 минута и укључује скенирање бинарног кода за злонамерне API-је и поштовање основних захтева. Након успешне провере, билд је доступан тестерима у року од 24 сата. Рок трајања билда је 90 дана.
У App Store Connect-у, Internal Testing се подешава у секцији TestFlight → Internal Testing. Власник налога додаје тестере путем имејла и додељује улоге. Након учитавања билда путем Xcode-а или Transporter-а, систем обавештава учеснике о доступности нове верзије. Тестери инсталирају апликацију путем TestFlight апликације на уређају.
Подешавање Internal Testing-а за обе платформе траје од 10 до 30 минута. Испод су упутства корак по корак за Google Play и App Store. Процес не захтева измене у коду апликације — довољно је једнократно подешавање конзоле програмера.
| Корак | Google Play | App Store (TestFlight) |
|---|---|---|
| 1 | Google Play Console → Testing → Internal | App Store Connect → TestFlight → Internal Testing |
| 2 | Креирај групу тестера | Додај имејлове тестера |
| 3 | Учитај App Bundle / APK | Учитај IPA путем Xcode / Transporter |
| 4 | Сачекај обраду 5–15 минута | Сачекај Basic Review 30–60 минута |
| 5 | Обавести тим о доступности | TestFlight обавештава учеснике |
Обе продавнице подржавају објављивање у Internal Testing путем API-ја. За аутоматизацију се користе Gradle Play Publisher (Google Play) и Fastlane (обе платформе). CI/CD пајплајн може учитавати билдове у Internal трацк након сваког успешног проласка unit тестова и UI тестова.
За апликације са ауторизацијом потребно је припремити тест налоге и проследити их QA тиму. Налози треба да имају приступ тест окружењу (staging/development) и да не утичу на продукционе податке. Препоручује се креирање засебне Firebase конфигурације за Internal трацк.
Internal Testing се уграђује у QA пајплајн након проласка аутоматских провера у CI-ју. Програмер или DevOps инжењер учитава билд у Internal трацк, након чега QA инжењери добијају обавештење и инсталирају исправку на тест уређајима путем продавнице апликација.
Препоручује се објављивање билдова у Internal Testing дневно или након сваке значајне промене у коду. QA тим тестира критичне сценарије: ауторизацију, главни ток корисника, интеграцију са API-јем и рад са локалним складиштем. Регресионо тестирање се врши на сваком трећем или четвртом билду.
За прикупљање извештаја о грешкама користите интеграцију са системима за праћење: Jira, YouTrack, Trello или GitHub Issues. Тестери шаљу снимке екрана, логове и кораке за репродукцију. TestFlight уграђено подржава прикупљање снимака екрана и логова са уређаја при протресању — подаци се шаљу програмеру путем App Store Connect-а.
За аутоматско објављивање билдова у Internal Testing трацк подесите CI/CD пајплајн. Након проласка unit тестова и UI тестова, скрипт учитава билд у Internal трацк и шаље обавештење QA тиму. Fastlane пружа готову акцију upload_to_play_store са параметром track: internal. За iOS користите Fastlane Pilot за учитавање у TestFlight.
Internal Testing има строга ограничења броја учесника: до 100 људи у Google Play-у и до 100 унутрашњих тестера у TestFlight-у. Google Play додатно ограничава број група — максимално 1 група за Internal трацк. App Store не ограничава број билдова, али рок трајања сваког билда је 90 дана.
Google Play не ограничава број учитаних билдова у Internal трацк, али након 90 дана неактивности трацк може бити аутоматски суспендован. TestFlight има строжа ограничења: до 30 активних билдова истовремено, до 10 000 спољних тестера (не Internal). За уклањање ограничења потребно је учешће у програму Apple Developer Enterprise.
Након стабилизације билда на Internal трацку, он се преноси у Closed или Open Beta за тестирање на спољној публици. Google Play омогућава копирање подешавања трацка и пренос билда без поновног учитавања. TestFlight захтева креирање засебног спољног трацка са додавањем нових група тестера.
Билдови у Internal трацку су заштићени од спољног приступа: апликацију могу преузети само учесници овлашћени путем Google Play Console-а или App Store Connect-а. Чак и знајући линк апликације, спољна особа неће моћи да инсталира билд. Ово обезбеђује поверљивост нових функција и заштиту интелектуалне својине у фази развоја.
Често постављана питања
У Google Play-у — до 100 људи. У TestFlight-у — такође до 100 унутрашњих тестера. За проширење публике потребно је прећи на Closed Beta (до 10 000 у Google Play-у) или External Testing (до 10 000 у TestFlight-у).
У Google Play-у модерисање није потребно — билд је доступан за 5–15 минута након учитавања. У TestFlight-у се обавља аутоматски Basic Review (30–60 минута), који незнатно одлаже објављивање. Комплетан App Review није потребан.
Не, Internal Testing је намењен само унутрашњем тиму програмера. За клијенте и спољне тестере користите Closed Beta (Google Play) или External Testing (TestFlight). Ови трацкови подржавају већи број учесника и јавну страницу за тестирање.
У Google Play-у нема ограничења учесталости — билдови се могу објављивати дневно или више пута дневно. TestFlight ограничава рок трајања билда на 90 дана, али број нових билдова није ограничен. Препоручује се ажурирање не више од 1–2 пута дневно ради стабилности тестирања.
Internal Testing је ограничен на 100 учесника, не захтева модерисање и нема јавну страницу. Closed Beta подржава до 10 000 учесника, има јавни линк за придруживање и може се подесити за земљу или регион. Closed Beta се такође приказује у претрази Google Play-а.
Резиме
Развићемо мобилну апликацију под кључ
IT Sectr креира iOS и Android апликације за стартапе и предузећа од 2017. године. Саветоваћемо вас и предложити најбоље решење.
Прочитајте такође