what is localization testing
esempi di analisi della causa principale sviluppo di software
Scopri cosa sono i test di localizzazione e i test di internazionalizzazione:
È molto comune trovare siti Web che ora sono disponibili in più lingue. I marchi globali hanno ormai riconosciuto che l'unico modo per connettersi e creare valore è presentare la propria attività alla gente del posto nella lingua che è veramente locale.
Questo processo di adattamento di un prodotto a una lingua, una regione e una locale diverse è chiamato localizzazione. Un prodotto localizzato crea maggiori opportunità di business e soddisfa la crescita e l'espansione.
Tuttavia, molte organizzazioni commettono l'errore di adattare la localizzazione verso la fine del processo di sviluppo o subito prima del lancio del prodotto.
Per localizzare un prodotto, è molto importante scoprire se è internazionalizzato.
Confuso? Un design di prodotto / applicazione internazionalizzato è quello che può ospitare contenuti localizzati come caratteri in lettere non occidentali, lingue a doppio byte, una capacità per il testo di espandersi come nelle lingue europee e contrarsi come nelle lingue asiatiche, visualizzare caratteri Unicode e avere un database che supporta caratteri Unicode ecc.
Discuteremo in dettaglio sia la localizzazione che l'internazionalizzazione qui.
Cosa imparerai:
- Che cos'è il test di localizzazione?
- Cos'è l'internazionalizzazione?
- Scopo del test
- Testare le migliori pratiche per testare l'internazionalizzazione
- È possibile l'automazione?
- Conclusione
- Lettura consigliata
Che cos'è il test di localizzazione?
Localizzazione è definito come rendere un prodotto, un'applicazione o un contenuto di un documento adattabile per soddisfare i requisiti culturali, linguistici e di altro tipo di una specifica regione o locale.
La localizzazione è abbreviata come l10n, dove 10 è il numero di lettere tra le n. Quando si pensa alla localizzazione, ciò che viene in mente è che l'interfaccia utente e la documentazione di un'applicazione sono in una lingua o locale specifica. Ma la localizzazione è più di questo.
Quando si localizza un'applicazione, è necessario personalizzare le seguenti aree importanti:
- Formati di data e ora (inclusi i formati numerici)
- Valuta utilizzata
- Utilizzo della tastiera
- Ordinamento, allineamento e confronto dei dati
- Combinazioni di colori, simboli e icone
- Testo e grafica che, in una data cultura, possono essere considerati sensibili o possono essere interpretati male.
- Diversi requisiti legali
Lo scopo principale della localizzazione è quello di far sembrare il prodotto tale che, per il pubblico di destinazione, sembri creato appositamente per soddisfare le loro esigenze.
Strumento consigliato:
# 1) Digivante
I test approfonditi di localizzazione di Digivante coprono controlli linguistici, tecnici e visivi specialistici, utilizzando la loro comunità di test professionali di trusted tester che corrispondono al tuo target demografico globale.
Diffusa in 149 paesi, la soluzione di localizzazione di Digivante ti offre la conoscenza locale di cui hai bisogno per essere veramente globale. Contattali per maggiori informazioni.
=> Visita il sito di Digivante
La localizzazione e l'internazionalizzazione vengono chiamate insieme globalizzazione. La globalizzazione è a un livello più ampio. L'internazionalizzazione sta rendendo l'applicazione tale da supportare più lingue / localizzazioni. La localizzazione sta facendo in modo che un'applicazione supporti una particolare locale e lingua.
La figura seguente ti aiuterà a capire come la localizzazione e l'internazionalizzazione insieme rendono un'applicazione software globalizzata.
Cos'è l'internazionalizzazione?
Internazionalizzazione è il processo di progettazione e sviluppo di un prodotto, applicazione o contenuto di un documento in modo tale da consentire la localizzazione per una determinata cultura, regione o lingua.
Internazionalizzazione si scrive anche i18n, dove 18 è il numero di lettere tra me en nella parola internazionalizzazione.
L'internazionalizzazione comporta tipicamente:
- Progettare e sviluppare l'applicazione in modo tale da semplificare la distribuzione della localizzazione e dell'internazionalizzazione dell'applicazione. Ciò include la cura del rendering corretto dei caratteri in varie lingue, la concatenazione di stringhe ecc. Che può essere eseguita utilizzando Unicode durante lo sviluppo
- Prendendo cura del quadro generale durante lo sviluppo dell'applicazione per supportare il testo bidirezionale o per identificare le lingue, dobbiamo aggiungere markup nella DTD esterna. Inoltre, utilizziamo i CSS per supportare il testo verticale o altre caratteristiche tipografiche non latine.
- Il codice dovrebbe essere in grado di supportare la lingua locale e regionale e anche altre preferenze culturali. Ciò implica l'utilizzo di dati e funzionalità di localizzazione predefiniti dalle librerie esistenti. Formati di data e ora, festività del calendario locale, formati numerici, presentazione dei dati, ordinamento, allineamento dei dati, formato di visualizzazione di nome e indirizzo ecc.
- Rendere gli elementi localizzabili separati dal codice sorgente in modo che il codice sia indipendente. Quindi, secondo le esigenze dell'utente, il contenuto localizzato può essere caricato in base alle sue preferenze.
L'internazionalizzazione consiste fondamentalmente nella progettazione e nello sviluppo di un'applicazione per renderla pronta per la localizzazione. Non è necessario che avvenga la traduzione in base alla lingua, alla cultura e alla regione. Serve per rendere un'applicazione pronta per la migrazione in una fase successiva, se la localizzazione deve avvenire.
Il diagramma seguente aiuterà a spiegare il file differenza tra nazionalizzazione e internazionalizzazione.
(Clicca sull'immagine per ingrandirla)
(Immagine fonte )
Riassumiamo il differenza tra localizzazione e internazionalizzazione nella tabella sottostante:
Test di localizzazione | Test di internazionalizzazione |
---|---|
1. La localizzazione è definita come rendere un prodotto, un'applicazione o un contenuto di un documento adattabile per soddisfare i requisiti culturali, linguistici e di altro tipo di una specifica regione o locale. | 1. L'internazionalizzazione è il processo di progettazione e sviluppo di un prodotto, applicazione o contenuto di un documento in modo tale da consentire la localizzazione. |
2. La localizzazione è indicata come l10n | 2. L'internazionalizzazione è indicata come i18n |
3. La localizzazione si concentra su guida in linea, contesto GUI, finestre di dialogo, messaggi di errore, read me / tutorial, manuali utente, note di rilascio, guida all'installazione ecc. | 3. L'internazionalizzazione si concentra su test di compatibilità, test di funzionalità, test di interoperabilità, test di usabilità, test di installazione, test di convalida dell'interfaccia utente. |
4. Per localizzazione si intende una lingua locale specifica per una determinata regione | 4. Il codice dell'applicazione è indipendente dalla lingua |
5. La localizzazione non è a livello di interfaccia utente | 5. L'internazionalizzazione è a livello di progettazione |
Scopo del test
I principali punti focali da considerare per i test di localizzazione e internazionalizzazione sono i seguenti:
1) Lingua
- Testo Unicode per soddisfare la codifica dei caratteri
- Sistemi numerici
- Scrivere indicazioni
- Varianti ortografiche
- Capitalizzazione e regole di ordinamento
- Scelte rapide da tastiera e layout
Due) Cultura e regione
- Nomi e titoli
- Numeri governativi (il numero di previdenza sociale è gli Stati Uniti) e passaporti
- Colori e immagini
- Numeri di telefono, codici postali, formati di indirizzi
- Dimensioni della carta
- Pesi e misure
- Simbolo di valuta e posizione sul mercato valutario
3) Date ed eventi importanti
- Formati di data e ora
- Tipi di calendario (gregoriano, lunare ecc.)
- Formati numerici (separatori decimali, raggruppamento di cifre ecc.)
Testare le migliori pratiche per testare l'internazionalizzazione
Diverse aree sono interessate quando un'applicazione viene internazionalizzata. Al fine di garantire completa test di copertura , dobbiamo concentrare i nostri test sui seguenti aspetti importanti.
# 1) Localizzazione dei contenuti
Il contenuto localizzato include grafica e testo. Contenuto statico e dinamico visualizzato nell'interfaccia. Contenuti statici come schede, pulsanti, etichette e nomenclature di elementi web, messaggio di benvenuto, testo della guida, descrizione comando ecc.
Contenuti dinamici come il messaggio visualizzato quando viene compilato un modulo, il messaggio di convalida in caso di errori o il campo obbligatorio non popolano altri messaggi specifici dell'utente ecc. Questo tipo di test linguistico viene eseguito da esperti linguistici o viene verificato rispetto al file delle proprietà specifico della lingua inviato dal client che contiene l'inglese in un'altra parola di lingua che significa mappature.
# 2) Basato sulle funzionalità
A seconda della regione, alcune funzionalità sono disponibili e altre no. I tester devono assicurarsi che la funzione sia nascosta per la regione a cui non è applicabile e dovrebbe essere visualizzata e funzionante per gli utenti regionali a cui è applicabile.
# 3) Consapevolezza locale / culturale
La consapevolezza locale / culturale include la comprensione della differenza tra le date e la formattazione dei numeri utilizzati in varie regioni. Ciò include differenze di calendario, festività e festival, formattazione della data, formattazione dell'ora, valuta, formattazione del numero, indirizzo, numeri di telefono, codici postali o nessun codice postale, unità di misura ecc.
Poiché abbiamo a che fare con diversi dati locali, la conversione da un formato di codifica ad un altro deve avvenire. Una buona conoscenza dei formati di codifica e della conversione da e verso un formato è fondamentale in quanto può anche provocare la perdita di dati.
# 4) Interfaccia utente
L'interfaccia utente dovrebbe essere testata per l'adattabilità a tutti i contenuti linguistici. Dovrebbe cambiare di conseguenza per adattare il testo con lunghezze maggiori senza distorcere l'allineamento.
Alcuni testi specifici di una lingua richiedono più spazio di altri, quindi l'interfaccia dovrebbe essere in grado di adattarsi a questo cambiamento senza essere distorta. Ad esempio, il testo tedesco richiede più spazio per trasmettere le stesse informazioni rispetto all'inglese. Quindi, un'interfaccia dovrebbe essere adattabile.
come dichiarare la lista in java
Dobbiamo testare l'interfaccia utente di un'applicazione per assicurarci che non contenga difetti come stringhe troncate, controlli sovrapposti o disallineati, tasti di scelta rapida duplicati, ecc. Inoltre, tutto deve essere tradotto nella rispettiva lingua.
Ciò include quanto segue:
- Menu nella barra dei menu
- Messaggio di richiesta, avviso e avviso
- Finestre di dialogo (titoli, pulsanti e messaggi di aiuto)
- immagini
- Barre degli strumenti (descrizione comando per gli strumenti nella barra degli strumenti)
- Informazioni sullo stato nella barra di stato
# 5) Rendering
È importante verificare se tutti gli script supportati sono visualizzati correttamente in base ai caratteri specifici della lingua ad essi associati. Quando si visualizza una pagina in una lingua specifica, gli script dovrebbero essere eseguiti correttamente, ovvero non dovrebbe essere visualizzato alcun errore di script e tutti i caratteri dovrebbero essere visualizzati nella lingua specifica.
Varie caratteristiche del rendering dei personaggi includono la bidirezionalità, la modellazione secondo il contesto, il riordino e la combinazione dei personaggi. Altri includono interruzione di parola, interruzione di riga, formattazioni come una giustificazione o allineamento sinistra / destra ecc.
# 6) Trasferimento di file
Se l'applicazione include un'operazione di trasferimento file, è necessario verificare se un'interfaccia di trasferimento file è localizzata in base alla lingua selezionata. Il file viene trasferito correttamente o meno e il file trasferito non è danneggiato.
È importante specificare il formato di codifica durante la lettura di un file che contiene caratteri Unicode. La codifica predefinita è UTF-8 quando non viene specificato nulla. I file di testo che vengono salvati nel formato di codifica UTF-16 quando vengono letti utilizzando UTF -8 visualizzeranno un testo incomprensibile. Quindi la codifica gioca un ruolo molto importante nei trasferimenti di file.
# 7) Database
Test di database per applicazioni internazionalizzate consisterà nel supporto dei caratteri Unicode nel database. A tale scopo sono disponibili tipi di dati speciali. I tipi di dati come nchar, nvarchar e ntext sono definiti da SQL Server che aiuta a memorizzare i caratteri Unicode.
Quindi il prefisso sta per i tipi di dati National Unicode. Questi tipi di dati con prefisso n vengono utilizzati allo stesso modo dei tipi di dati char, varchar e text originali. L'unica differenza è che il tipo di dati del prefisso n supporta anche quanto segue:
- È necessario più spazio su disco
- Sono supportati più caratteri
- La dimensione massima di nchar e nvarchar è 4000, ma per char e varchar è 8000
Lavorare con i tipi di dati N-prefix è uguale a quelli normali. È necessario prestare attenzione durante la migrazione del database. I tipi di dati corretti dovrebbero essere mappati alla migrazione o i dati andranno persi.
Vantaggi dei test di internazionalizzazione
- Visibilità internazionale al prodotto
- Aumento della qualità del prodotto, se costruito per supportare l'internazionalizzazione
- Raggiungi un pubblico più ampio in tutto il mondo
- Prodotto rilasciato a livello globale con una spesa relativamente minore
È possibile l'automazione?
Testare un'applicazione internazionalizzata è sempre una sfida per l'organizzazione. Ogni lingua supportata dall'applicazione potrebbe moltiplicare il numero di casi di test richiesti per il test. Se l'organizzazione utilizza ampiamente l'automazione, è possibile creare e mantenere script di automazione per un prodotto con ambito e tipo così ampio?
Ciò che è veramente necessario per risolvere questo problema è creare script di test che possano essere estesi facilmente per supportare più lingue.
Come discusso in precedenza, se l'applicazione viene creata utilizzando le pratiche di I18N e L10N per creare una versione principale non sensibile alla lingua, in cui il file delle proprietà viene utilizzato per soddisfare i requisiti della lingua. L'applicazione legge dal rispettivo file delle proprietà in fase di esecuzione per renderlo nella lingua selezionata. In questo modo, la versione base di un'applicazione è solo una, che ha la possibilità di cambiare la lingua dell'interfaccia utente quando richiesto.
Ciò ha reso possibile automatizzare l'applicazione internazionalizzata, poiché gli script di test sono scritti solo per la versione base ed eseguiti facilmente per tutte le lingue.
Prima di iniziare con l'automazione, dobbiamo confermare che i nomi o gli ID assegnati a tutti gli elementi nelle finestre non cambiano con il cambio di lingua. Tutti gli oggetti sulla pagina web come campi di testo, pulsanti di opzione, menu a discesa, caselle di controllo, collegamenti ipertestuali, pop-up, caselle di riepilogo ecc. Dovrebbero avere un ID univoco (come nome o ID) che dovrebbe essere indipendente dalla lingua.
Se siamo certi che tutti gli elementi web non siano specifici del linguaggio, allora possiamo creare uno script di automazione estremamente efficiente per un'applicazione internazionalizzata.
Questo link ti aiuterà a capire come automatizzare un'applicazione internazionalizzata utilizzando lo strumento open source più popolare, ovvero il driver web al selenio.
Strumenti di test della localizzazione:
È difficile eseguire test di localizzazione solo utilizzando uno strumento di automazione. Ci sono alcuni strumenti che possono automatizzare molto bene alcune delle attività. Ecco l'elenco:
- Automatizza la localizzazione dell'interfaccia utente utilizzando IBM Rational Functional Tester
- melanzana
- Strumento di localizzazione di applicazioni .NET http://www.redpin.eu
- Applitools
Casi test
Per favore riferisci a questo link per conoscere i casi di test applicabili per i test di localizzazione e internazionalizzazione.
Conclusione
Testare la localizzazione e l'interiorizzazione è una sfida e una conoscenza approfondita dei suoi concetti di sviluppo è importante per testarli in modo efficiente.
Anche la scrittura e la manutenzione di script di test di automazione per software internazionalizzato non è noioso poiché lo script scritto per automatizzare il test della versione base dell'applicazione può essere utilizzato per testare qualsiasi linguaggio supportato.
Scrivici di seguito per farci sapere i tuoi commenti, domande ed esperienze con i test di localizzazione / globalizzazione / internazionalizzazione.
Lettura consigliata
- Migliori strumenti di test del software 2021 (Strumenti di automazione del test QA)
- Alpha test e beta test (una guida completa)
- Download dell'eBook Testing Primer
- Test funzionale vs test non funzionale
- Guida completa al test di verifica della costruzione (test BVT)
- Che cos'è il test di globalizzazione (una guida completa)
- Guida al test di sicurezza delle applicazioni Web
- Tipi di test del software: diversi tipi di test con dettagli