# TestFlight: testare un'app iPhone prima dell'invio

> Tester interni ed esterni, beta review, link pubblico, build valide 90 giorni: TestFlight spiegato in modo semplice, con la checklist prima di Apple.

Pagina originale: [TestFlight: testare un'app iPhone prima dell'invio](https://devoria.fr/it/blog/testflight-testare-app-iphone-prima-invio)
Autore: [Mehdi Azizi](https://devoria.fr/it/mehdi-azizi)
Pubblicazione: 2026-09-23
Ultima revisione dei contenuti: 2026-10-09


## Che cos'è TestFlight e a cosa serve?

TestFlight è il servizio di Apple che ti permette di installare la tua app su iPhone veri prima che esca sull'App Store. Carichi una build su App Store Connect, inviti dei tester e loro la installano con l'app TestFlight, gratuita sull'App Store. Ci sono due tipi di tester: gli interni, fino a 100 membri del tuo team, senza revisione di Apple; e gli esterni, fino a 10.000 persone, invitate via e-mail o con un link pubblico, dopo una beta review della tua prima build. Ogni build resta testabile per 90 giorni.

| Criterio               | Tester interni                   | Tester esterni         |
| ---------------------- | -------------------------------- | ---------------------- |
| Numero massimo         | 100                              | 10.000                 |
| Accesso al tuo account | Sì, con un ruolo                 | No                     |
| Invito                 | Aggiunta al gruppo interno       | E-mail o link pubblico |
| Beta review di Apple   | Nessuna                          | Sulla prima build      |
| Per chi                | Tu, un socio, una persona vicina | Amici, primi utenti    |

Per usare TestFlight ti serve un [account Apple Developer a pagamento](https://devoria.fr/it/blog/account-sviluppatore-apple-prezzo): [il servizio non è disponibile con un account gratuito](https://developer.apple.com/support/compare-memberships/). Tutto il resto di questa guida dà per scontato che tu ne abbia uno, con il programma standard: il programma Enterprise di Apple non dà accesso a TestFlight.

Sulle mie app, ogni build inviata con EAS Submit passa da TestFlight e dal mio iPhone prima di andare in revisione. È lì che trovo i problemi che in sviluppo non si vedono.

## Caricare una build su TestFlight

Una build è una versione compilata e firmata della tua app: se la firma è sbagliata, Apple la rifiuta all'invio con ITMS-90034. Perché compaia in TestFlight, devi inviarla ad App Store Connect. Con Expo si fa con `eas build --platform ios` e poi `eas submit --platform ios`, usando un'immagine di build abbastanza recente da evitare ITMS-90725. [Secondo la documentazione di Expo](https://docs.expo.dev/submit/ios/), la build compare in TestFlight dopo l'elaborazione da parte di Apple, di solito in 10-15 minuti. Puoi fare tutto da un PC: la guida [pubblicare un'app iOS senza Mac](https://devoria.fr/it/blog/pubblicare-app-ios-senza-mac-expo-eas) spiega l'intero processo.

Due dettagli bloccano spesso la prima volta:

- **Il numero di build deve cambiare a ogni invio.** Apple rifiuta due build con lo stesso numero per la stessa versione. Con EAS, attiva l'incremento automatico e non ci pensi più.
- **La domanda sulla crittografia.** Finché non hai risposto alla domanda sull'uso della crittografia, la build resta bloccata con lo stato Missing Compliance. Puoi rispondere ogni volta su App Store Connect, oppure dichiararlo una volta per tutte nella configurazione della tua app.

## Tester interni: il tuo team, senza attese

I tester interni sono utenti del tuo account App Store Connect, con un ruolo assegnato. [Apple ne consente fino a 100](https://developer.apple.com/help/app-store-connect/test-a-beta-version/testflight-overview), e ognuno può [installare l'app su più dispositivi](https://developer.apple.com/testflight/), fino a 30.

Il loro grande vantaggio: niente beta review. Appena la build ha finito l'elaborazione, senza errori automatici come ITMS-90717, la aggiungi al tuo gruppo interno ed è disponibile. È il gruppo giusto per te, e per un socio o una persona vicina a cui dai accesso al tuo account.

Il loro limite: devi aggiungerli come utenti del tuo account App Store Connect. Non va bene per degli sconosciuti.

## Tester esterni e beta review

I tester esterni non hanno bisogno di alcun accesso al tuo account. [Puoi invitarne fino a 10.000](https://developer.apple.com/help/app-store-connect/test-a-beta-version/testflight-overview), via e-mail o con un link pubblico. È il gruppo giusto per amici, primi utenti, una community.

In cambio, Apple controlla la build prima di aprirla a loro. [Quando aggiungi la prima build di una versione a un gruppo esterno](https://developer.apple.com/help/app-store-connect/test-a-beta-version/invite-external-testers), parte la beta review. Le build successive della stessa versione non richiedono per forza una revisione completa.

Prima di questo invio, App Store Connect ti chiede alcune informazioni di test:

- **una descrizione della beta**, che dice ai tester cosa devono guardare;
- **un indirizzo e-mail per i feedback**;
- **i tuoi recapiti**, così Apple può contattarti.

> La beta review non è la revisione dell'App Store. Una build accettata in TestFlight può ancora essere rifiutata alla pubblicazione.

La beta review verifica che la build rispetti le regole, ma la revisione finale guarda anche la tua scheda, i tuoi abbonamenti, i tuoi testi legali e l'esperienza completa. Tieni a mente i motivi di rifiuto classici, raccontati in [perché Apple rifiuta un'app](https://devoria.fr/it/blog/app-rifiutata-da-apple-perche-casi-reali).

## Invitare tester con un link pubblico

Il link pubblico è il modo più semplice per far provare la tua app a persone che ancora non conosci. Ecco [la procedura di Apple](https://developer.apple.com/help/app-store-connect/test-a-beta-version/invite-external-testers), con le etichette dell'interfaccia in inglese:

1. In App Store Connect, apri la tua app e poi la scheda **TestFlight**.
2. Sotto **External Testing**, seleziona il tuo gruppo esterno.
3. Clicca su **Create Public Link**.
4. Scegli **Open to Anyone** per aprire il link a tutti, oppure **Filter by Criteria** per limitarlo a certi dispositivi e versioni di iOS.
5. Se vuoi, imposta un limite di tester con **Set Limit**.

Poi condividi il link dove vuoi: messaggio, social, e-mail. La persona installa l'app TestFlight, apre il link e accetta l'invito.

Due cose da sapere prima di diffonderlo su larga scala:

- **Imposta un limite.** Se il link gira più del previsto, mantieni il controllo sul numero di tester.
- **I tester via link pubblico sono anonimi.** Per loro App Store Connect mostra solo la data di installazione, le sessioni e i crash. Se vuoi sapere chi ha testato cosa, invitali piuttosto via e-mail.

## Quanto dura una build TestFlight?

[Una build resta disponibile per i tester per 90 giorni](https://developer.apple.com/help/app-store-connect/test-a-beta-version/testflight-overview). Dopo scade e i tuoi tester non possono più aprirla. Se la tua beta dura di più, basta inviare una nuova build prima della scadenza.

In pratica invierai nuove build molto più spesso: a ogni correzione importante. Ogni nuova build aggiunta al gruppo viene proposta ai tuoi tester, che la scaricano dall'app TestFlight.

## Raccogliere i feedback dei tester

TestFlight include un sistema di feedback: [il tester fa uno screenshot nella tua app, può annotarlo e te lo invia](https://developer.apple.com/testflight/). Se l'app va in crash, ricevi un report del crash, e il tester può aggiungere del contesto. Trovi tutto in App Store Connect.

È utile, ma non basta per capire un crash preciso. Sulle mie app aggiungo Sentry, che segnala l'errore con la riga di codice colpevole, e PostHog, che mostra dove gli utenti abbandonano. Funzionano entrambi in una build TestFlight come in produzione.

## Testare gli abbonamenti in TestFlight

Se la tua app vende un abbonamento, TestFlight è il posto dove verifichi che funzioni davvero. [Gli acquisti fatti in una build TestFlight passano dall'ambiente di test di Apple](https://developer.apple.com/help/app-store-connect/test-a-beta-version/testing-subscriptions-and-in-app-purchases-in-testflight/): ai tuoi tester non viene addebitato nulla. I rinnovi sono accelerati: ogni abbonamento si rinnova una volta al giorno, al massimo sei volte in una settimana, qualunque sia la sua durata reale.

Controlla almeno che i prezzi mostrati siano quelli giusti, che l'acquisto sblocchi davvero l'app e che il pulsante di ripristino ritrovi l'abbonamento dopo una reinstallazione. Uso RevenueCat per gestire gli abbonamenti delle mie app; tutto il setup, dai prodotti in App Store Connect al paywall, è descritto nella pagina [abbonamenti in-app iOS](https://devoria.fr/it/expertise/abbonamento-in-app-ios).

## Cosa testare prima dell'invio ad Apple

Questa è la lista che seguo prima di ogni invio in revisione. Ogni punto corrisponde a un motivo di rifiuto o a un crash evitabile.

### Il primo avvio

- Elimina l'app, reinstallala da TestFlight, aprila. È quello che farà il reviewer.
- Completa tutto l'onboarding, senza saltare niente.
- Nega ogni permesso (notifiche, fotocamera, posizione) e verifica che l'app continui a funzionare.

### I soldi

- Il paywall mostra i prezzi, la durata e i link ai termini d'uso e all'informativa sulla privacy.
- L'acquisto funziona, e anche il ripristino.
- Tutti i prodotti configurati sono visibili al reviewer: [la guideline 2.1](https://developer.apple.com/app-store/review/guidelines/) chiede che gli acquisti in-app siano completi, visibili e funzionanti.

### Le condizioni difficili

- Modalità aereo e rete lenta: un messaggio chiaro, non una schermata bianca.
- L'iPhone più piccolo che supporti e quello più grande: niente di tagliato, niente coperto dalla tastiera. È stata una schermata tagliata su un iPhone piccolo a costarmi un rifiuto su Solys.
- I testi lunghi, se la tua app è tradotta.

### Il materiale per il reviewer

- Se la tua app richiede un login, un account demo nelle note di revisione, con il backend acceso. La guideline 2.1 lo chiede esplicitamente.
- Note di revisione che spiegano in due frasi cosa fa l'app e dove trovare la funzione principale.

Se nonostante tutto la tua app viene rifiutata, la pagina [app rifiutata da Apple](https://devoria.fr/it/expertise/app-rifiutata-da-apple) spiega come rispondere senza perdere una settimana. E per una visione d'insieme della pubblicazione, dalla scheda all'uscita, leggi [pubblicare un'app sull'App Store](https://devoria.fr/it/expertise/pubblicare-app-su-app-store).

## Una griglia di collaudo da compilare sulla tua build

[Scarica la griglia di 16 scenari in formato CSV](https://devoria.fr/ressources/recette-premiere-app-ios.csv). Distingue la preparazione, l'azione da eseguire, il risultato atteso e la prova osservata. Importala in Numbers, Excel o Google Sheets, poi compila la versione, il dispositivo e il risultato di ogni prova.

Per un diario di lettura fittizio, «salvare una pagina» non basta: annota pagina 24, chiudi completamente l'app, riaprila e ritrova il valore. Un test che non è stato eseguito resta «Da testare». Se la tua app non ha abbonamenti, indica «Non applicabile» per gli scenari di acquisto, con questa motivazione.

La griglia è un punto di partenza da adattare, non una certificazione. Trovi anche le [note App Review e gli altri modelli gratuiti](https://devoria.fr/it/resources) per spiegare al reviewer il percorso che hai davvero verificato.

## Passare da TestFlight all'App Store

TestFlight è il momento in cui la tua app diventa reale: gira su un vero iPhone, nelle mani di persone vere. Nel percorso dell'[iOS Kit](https://devoria.fr/it/kits/ios) è la seconda tappa: costruire il cuore dell'app e testarla sul tuo iPhone con TestFlight, prima di collegare gli abbonamenti e poi preparare la pubblicazione.

Dopo TestFlight arriva la revisione di Apple: l'[Apple Review Kit](https://devoria.fr/it/kits/review-apple) raccoglie la mia checklist prima dell'invio e le note per il tester. La home mostra le quattro tappe per [creare la tua app mobile](https://devoria.fr/it) con Claude Code.

Nessuno può garantirti che Apple accetterà la tua app: decide Apple.

## Domande frequenti

### Come si testa un'app iPhone con TestFlight?

Invia una build ad App Store Connect, poi aggiungila a un gruppo di tester. Con Expo la compili con EAS Build e la invii con [EAS Submit](https://devoria.fr/it/blog/eas-submit-ios-pubblicare-app-expo-app-store): compare in TestFlight dopo l'elaborazione da parte di Apple, di solito in 10-15 minuti secondo Expo. I tuoi tester la installano con l'app TestFlight, gratuita sull'App Store. Ti serve un account Apple Developer a pagamento.

### Come si genera un link TestFlight per invitare i tester?

In App Store Connect, apri la scheda TestFlight della tua app, seleziona il tuo gruppo sotto External Testing e clicca su Create Public Link. Scegli Open to Anyone o Filter by Criteria, poi imposta un limite con Set Limit. I tester via link pubblico restano anonimi: se vuoi sapere chi ha testato cosa, invitali piuttosto via e-mail.

### La beta review di TestFlight sostituisce la revisione dell'App Store?

No. La beta review verifica che la build rispetti le regole, ma la revisione finale guarda anche la tua scheda, il tuo age rating, i tuoi abbonamenti, i tuoi testi legali e l'esperienza completa. Una build accettata in TestFlight può quindi ancora essere rifiutata alla pubblicazione. Solo i tester esterni fanno scattare una beta review, sulla prima build di una versione: i tester interni non ne richiedono nessuna.

### Quanti tester si possono invitare su TestFlight?

Puoi invitare fino a 100 tester interni e fino a 10.000 tester esterni. Gli interni sono membri del tuo account App Store Connect, senza beta review, e ognuno può installare l'app su un massimo di 30 dispositivi. Gli esterni vengono invitati via e-mail o con un link pubblico, dopo una beta review della prima build. Ogni build resta testabile per 90 giorni.

### Si può testare un abbonamento in TestFlight senza pagare?

Sì, gli acquisti fatti in una build TestFlight passano dall'ambiente di test di Apple: ai tuoi tester non viene addebitato nulla. I rinnovi sono accelerati: ogni abbonamento si rinnova una volta al giorno, al massimo sei volte in una settimana, qualunque sia la sua durata reale. Controlla almeno i prezzi mostrati, lo sblocco dell'app e il ripristino dopo una reinstallazione. Il setup completo è descritto in [abbonamenti in-app iOS](https://devoria.fr/it/expertise/abbonamento-in-app-ios).

### Cosa bisogna verificare in TestFlight prima di inviare l'app ad Apple?

Reinstalla l'app da TestFlight, come farà il reviewer, e completa tutto l'onboarding. Nega ogni permesso, prova l'acquisto e il ripristino, poi prova la modalità aereo, l'iPhone più piccolo e quello più grande che supporti. Se l'app richiede un login, prepara un account demo nelle note di revisione, con il backend acceso.


## Il tuo progetto

[Apple Review Kit](https://devoria.fr/it/kits/review-apple): La checklist review App Store che uso, i miei rifiuti di Apple corretti, le note per il revisore e due skill Claude Code che rileggono la tua app. 29 €.

[iOS Kit](https://devoria.fr/it/kits/ios): Crea la tua app iPhone con Claude Code: lo Starter Code delle mie app, gli skill che verificano il suo lavoro, e l'Apple Review Kit, l'App Store Screenshots Kit e l'ASO Kit. 129,99 €.
