etl vs db testing closer look etl testing need
Il test del software ha una varietà di aree da concentrare. Le principali varietà sono test funzionali e non funzionali. Il test funzionale è il modo procedurale per garantire che la funzionalità sviluppata funzioni come previsto. Il test non funzionale è l'approccio mediante il quale è possibile garantire aspetti non funzionali come il miglioramento o la prestazione a un livello accettabile.
C'è un altro tipo di test chiamato Test DB . I dati sono organizzati nel database sotto forma di tabelle. Per le imprese, ci possono essere flussi dove i dati di più tabelle possono essere uniti o elaborati in un'unica tabella e viceversa.
Test ETL è un altro tipo di test preferito nel caso aziendale in cui i clienti cercano una sorta di esigenza di reporting. Il reporting è ricercato al fine di analizzare le richieste, i bisogni e l'offerta in modo che i clienti, le imprese e gli utenti finali siano molto ben serviti e beneficiati.
Cosa imparerai in questo tutorial?
In questo tutorial imparerai cos'è il test del database, cos'è il test ETL, una differenza tra test del database e test ETL e maggiori dettagli sulle necessità, sui processi e sulla pianificazione dei test ETL con esempi reali.
Abbiamo anche trattato i test ETL in modo più dettagliato nella pagina seguente. Inoltre, dai un'occhiata.
=> Suggerimenti e tecniche per test ETL / Data Warehouse
Cosa imparerai:
- Test DB vs. test ETL
- Studio comparativo di test ETL e DB
- Perché l'azienda dovrebbe optare per ETL?
- Pianificazione del test ETL
- Esigenze ETL critiche
- Problemi di base nei test ETL
- Punti da ricordare durante la pianificazione e l'esecuzione del test ETL
- Strumenti ETL e loro utilizzo significativo
- Conclusione
- Lettura consigliata
Test DB vs. test ETL
La maggior parte di noi è un po 'confusa considerando che sia il test del database che il test ETL sono simili e uguali. Il fatto è che sono simili ma non uguali.
Test DB:
Il DB Testing viene solitamente utilizzato ampiamente nei flussi aziendali in cui sono presenti più flussi di dati che si verificano nell'applicazione da più origini dati su una singola tabella. L'origine dati può essere una tabella, un file flat, un'applicazione o qualsiasi altra cosa che possa produrre alcuni dati di output.
A loro volta, i dati di output ottenuti possono ancora essere utilizzati come input per il flusso aziendale sequenziale. Quindi, quando eseguiamo il test del DB, la cosa più importante che deve essere acquisita è il modo in cui i dati possono essere trasformati dall'origine insieme a come vengono salvati nella posizione di destinazione.
La sincronizzazione è una delle cose principali ed essenziali da considerare quando si esegue il test DB. A causa del posizionamento dell'applicazione nel flusso dell'architettura, potrebbero esserci pochi problemi con i dati o la sincronizzazione del database. Quindi durante l'esecuzione del test, questo deve essere curato in quanto ciò può superare il potenziale difetti non validi o insetti.
Esempio 1:
Il progetto 'A' ha un'architettura integrata in cui la particolare applicazione utilizza i dati provenienti da diverse altre fonti di dati eterogenee. Quindi l'integrità di questi dati con la posizione di destinazione deve essere eseguita insieme alle convalide per quanto segue:
- Convalida della chiave esterna primaria
- Integrità dei valori delle colonne
- Valori nulli per qualsiasi colonna
Cos'è il test ETL?
Il test ETL è un tipo speciale di test che il cliente desidera che venga eseguito per la previsione e l'analisi della propria attività. Viene utilizzato principalmente per scopi di reporting. Ad esempio, se i clienti devono aver segnalato i clienti che utilizzano o scelgono il loro prodotto in base al giorno in cui acquistano, devono utilizzare i rapporti ETL.
Inviare analisi e reporting , questi dati sono data warehoused in un data warehouse in cui è necessario spostare i vecchi dati aziendali storici.
modello di report di riepilogo del test in Excel
Si tratta di un test a più livelli poiché i dati dall'origine vengono trasformati in più ambienti prima di raggiungere la posizione finale destinata.
Esempio n. 2:
Considereremo un gruppo 'A' che fa affari con i clienti al dettaglio attraverso un mercato dello shopping in cui il cliente può acquistare tutti gli articoli per la casa necessari per la loro sopravvivenza quotidiana. Qui a tutti i clienti che visitano viene fornito un ID di iscrizione univoco con il quale possono guadagnare punti ogni volta che vengono ad acquistare cose dal mercato dello shopping.
Il regolamento fornito dal gruppo dice che i punti guadagnati scadono ogni anno. E a seconda del loro utilizzo, l'abbonamento può essere aggiornato a un membro di grado superiore o declassato a un membro di grado inferiore rispetto al grado attuale.
Dopo 5 anni di creazione del mercato dello shopping, ora la direzione sta cercando di espandere la propria attività insieme alle entrate.
Quindi hanno richiesto pochi rapporti aziendali in modo da poter promuovere i propri clienti.
In Database Testing eseguiamo quanto segue:
# 1) Convalide sulle tabelle di destinazione create con colonne con calcoli logici come descritto nel foglio di mappatura logica e nel documento di instradamento dei dati.
#Due) Manipolazioni come l'inserimento, l'aggiornamento e l'eliminazione dei dati del cliente possono essere eseguite su qualsiasi applicazione POS dell'utente finale in un sistema integrato insieme al database back-end in modo che le stesse modifiche si riflettano nel sistema finale.
# 3) Il test DB deve garantire che non vi siano dati dei clienti interpretati erroneamente o addirittura troncati. Ciò potrebbe portare a problemi seri come la mappatura errata dei dati dei clienti con la loro fedeltà
In ETL Testing controlliamo quanto segue:
# 1) Supponendo che ci siano 100 clienti nell'origine, verificherai se tutti questi clienti insieme ai loro dati dalle 100 righe sono stati spostati dal sistema di origine alla destinazione. Questo è noto come verifica di Controllo della completezza dei dati.
#Due) Verifica se i dati del cliente sono stati manipolati correttamente e dimostrati nelle 100 righe. Questa è semplicemente chiamata verifica di Controllo dell'accuratezza dei dati .
# 3) Rapporti per i clienti che hanno guadagnato punti più di x valori in un determinato periodo.
Studio comparativo di test ETL e DB
I test ETL e DB hanno pochi degli aspetti che differiscono in se stessi che è più essenziale essere compresi prima di eseguirli. Questo ci aiuta a comprendere i valori e il significato del test e il modo in cui aiuta l'azienda.
Di seguito è riportato un modulo tabulare che descrive il comportamento di base di entrambi i formati di test.
Test DB | Test ETL | |
---|---|---|
Natura dei dati | I dati normalizzati vengono utilizzati qui | I dati denormalizzati vengono utilizzati qui |
Obbiettivo primario | Integrazione dei dati | Reporting BI |
Luogo applicabile | Nel sistema funzionale in cui si verifica il flusso aziendale | Esterno all'ambiente del flusso aziendale. input sono i dati aziendali storici |
Strumento di automazione | QTP, selenio | Informatica, QuerySurge, COGNOS |
Impatto aziendale | Impatti gravi possono portare in quanto è l'architettura integrata dei flussi aziendali | Potenziali impatti come quando i clienti vogliono avere la previsione e l'analisi da fare |
Modellazione utilizzata | Relazione tra entità | Dimensionale |
Sistema | Elaborazione delle transazioni online | Processo di analisi online |
Perché l'azienda dovrebbe optare per ETL?
Sono disponibili molte esigenze aziendali per prendere in considerazione i test ETL. Ogni azienda deve avere la sua missione unica e la sua linea di business. Ogni azienda ha il suo ciclo di vita del prodotto che assume la forma generica:
È molto chiaro che qualsiasi nuovo prodotto entra nel mercato con un'enorme crescita delle vendite e fino a una fase chiamata maturità e successivamente diminuisce nelle vendite. Questo graduale cambiamento testimonia un netto calo della crescita aziendale. Quindi è più importante analizzare le esigenze del cliente per la crescita del business e altri fattori necessari per rendere l'organizzazione più redditizia.
Quindi, in realtà, i clienti vogliono analizzare i dati storici e elaborare alcuni rapporti strategicamente.
Pianificazione del test ETL
Uno dei passaggi principali nel test ETL riguarda la pianificazione del test che verrà eseguito. Sarà simile al file Piano di test per il test del sistema di solito viene eseguito tranne pochi attributi come requisiti e casi di test.
Qui i requisiti non sono altro che a foglio di mappatura che avrà una sorta di mappatura tra i dati all'interno di database diversi. Poiché siamo consapevoli che il test ETL avviene su più livelli, sono necessarie varie mappature per convalidarlo.
La maggior parte delle volte i dati vengono acquisiti dai database di origine non direttamente. Tutti i dati di origine avranno la vista delle tabelle da cui possono essere utilizzati i dati.
Esempio: Di seguito è riportato un esempio di come possono essere fornite le mappature. Le due colonne VIEW_NAME e TABLE_NAME possono essere utilizzate per rappresentare le viste per la lettura dei dati dall'origine e dalla tabella rispettivamente nell'ambiente ETL.
Si consiglia di mantenere la convenzione di denominazione che può aiutarci durante la pianificazione dell'automazione. La notazione generica che può essere utilizzata è solo il prefisso del nome dell'ambiente.
quale VPN usare in Cina
La cosa più significativa in ETL riguarda l'identificazione dei dati essenziali e delle tabelle dalla fonte. Il passaggio essenziale successivo è la mappatura delle tabelle dall'origine all'ambiente ETL.
Di seguito è riportato un esempio di come la mappatura tra le tabelle dei vari ambienti può essere correlata allo scopo ETL.
La mappatura precedente presuppone i dati dalla tabella di origine alla tabella di staging. E da allora in poi ai tavoli in EDW e poi a OLAP che è l'ambiente di reporting finale. Pertanto, in qualsiasi momento, la sincronizzazione dei dati è molto importante per il bene dell'ETL.
Esigenze ETL critiche
Come sappiamo, ETL è la necessità di prevedere, generare rapporti e analizzare il business al fine di catturare le esigenze del cliente in modo più successivo. Ciò consentirà all'azienda di avere richieste più elevate rispetto al passato.
Di seguito sono elencate alcune delle esigenze critiche senza le quali non è possibile ottenere i test ETL:
- Identificazione dati e tabelle : Questo è importante in quanto possono esserci molti altri dati irrilevanti e non necessari che possono essere di minore importanza durante la previsione e l'analisi delle esigenze del cliente. Quindi i dati rilevanti e le tabelle devono essere selezionati prima di avviare i lavori ETL.
- Foglio di mappatura : Questa è una delle esigenze critiche durante l'esecuzione di lavori ETL. La mappatura della tabella corretta dall'origine alla destinazione è obbligatoria e qualsiasi problema o dato errato in questo foglio potrebbe influire sull'intero deliverable ETL.
- Disegni e dati della tabella, tipo di colonna : Questo è il passaggio principale successivo quando si considera la mappatura delle tabelle di origine nelle tabelle di destinazione. Il tipo di colonna deve corrispondere alle tabelle in entrambi i punti ecc.
- Accesso al database : La cosa principale è l'accesso al database in cui ETL va avanti. Qualsiasi restrizione all'accesso avrà un impatto equivalente.
Reporting e test ETL
Il reporting in ETL è più importante in quanto spiega e indirizza i clienti alle esigenze del cliente. In questo modo, possono prevedere e analizzare le esatte esigenze dei clienti
Esempio n. 3:
Una società che produce tessuti di seta ha voluto analizzare le vendite annuali. Dopo aver esaminato le loro vendite annuali, hanno riscontrato durante il mese di agosto e settembre un enorme calo delle vendite con l'uso del rapporto che hanno generato.
Quindi hanno deciso di lanciare l'offerta promozionale come scambio, sconti, ecc., Che ha migliorato le loro vendite.
Problemi di base nei test ETL
Ci possono essere una serie di problemi durante l'esecuzione di test ETL come i seguenti:
- L'accesso alle tabelle di origine o alle visualizzazioni non sarà valido.
- Il nome della colonna e il tipo di dati dall'origine al livello successivo potrebbero non corrispondere.
- Un numero di record dalla tabella di origine alla tabella di destinazione potrebbe non corrispondere.
E potrebbe esserci molto di più.
Di seguito è riportato un esempio di foglio di mappatura in cui sono presenti colonne come VIEW_NAME, COLUMN_NAME, DATA_TYPE, TABLE_NAME, COLUMN_NAME, DATA_TYPE e TRANSFORMATION LOGIC presenti.
Le prime 3 colonne rappresentano i dettagli del database di origine e le 3 successive sono i dettagli del database immediatamente precedente. L'ultima colonna è molto importante. La logica di trasformazione è il modo in cui i dati dall'origine vengono letti e archiviati nel database di destinazione. Questo dipende dalle esigenze aziendali e di ETL.
Punti da ricordare durante la pianificazione e l'esecuzione del test ETL
La cosa più importante nei test ETL è il caricamento dei dati in base ai criteri di estrazione dal DB di origine. Quando questo criterio non è valido o obsoleto, non ci saranno dati nella tabella per eseguire test ETL che comportano davvero più problemi.
Di seguito sono riportati alcuni dei punti da considerare durante la pianificazione e l'esecuzione dei test ETL:
# 1) I dati vengono estratti da origini dati eterogenee
#Due) Gestione dei processi ETL nell'ambiente integrato che hanno diversi:
- DBMS
- VOI
- Hardware
- Protocolli di comunicazione
# 3) Necessità di avere un foglio logico di mappatura dei dati prima che i dati fisici possano essere trasformati
# 4) Comprensione ed esame delle fonti di dati
# 5) Caricamento iniziale e carico incrementale
# 6) Colonne di audit
# 7) Caricamento dei fatti e delle dimensioni
Strumenti ETL e loro utilizzo significativo
Gli strumenti ETL sono fondamentalmente utilizzati per creare e convertire il file logica di trasformazione prendendo i dati dalla sorgente in un'altra applicando la logica di trasformazione. È inoltre possibile mappare gli schemi dall'origine alla destinazione in modi unici, trasformare e ripulire i dati prima che possano essere spostati nella destinazione, oltre a caricarli a destinazione in modo efficiente.
Ciò può ridurre notevolmente gli sforzi manuali poiché è possibile eseguire la mappatura utilizzata per quasi tutte le operazioni di convalida e verifica ETL.
- Informatica – PowerCenter - è uno dei popolari strumenti ETL introdotto da Informatica Corporation. Questo ha una base di clienti molto buona che copre vaste aree. I componenti principali dello strumento sono i suoi strumenti per i client e gli strumenti del repository e i server. Per saperne di più sullo strumento, fare clic su Qui
- IBM - Infosphere Information Server - IBM, leader di mercato in termini di tecnologia informatica, ha sviluppato il server di informazioni Infosphere che viene utilizzato per l'integrazione e la gestione delle informazioni nel 2008. Per saperne di più sullo strumento, fare clic su Qui
- Oracle - Data Integrator - Oracle Corporation ha sviluppato il suo strumento ETL nel nome di Oracle - Data Integrator. Il loro crescente supporto clienti li ha fatti aggiornare i loro strumenti ETL in varie versioni. Per saperne di più sullo strumento, fare clic su Qui
Altri esempi di utilizzo dei test ETL:
migliore app spia mobile per iphone
Considerando alcune compagnie aeree che vogliono lanciare promozioni e offerte per attirare i clienti in modo strategico. In primo luogo cercheranno di comprendere le richieste e le esigenze delle specifiche del cliente. A tal fine, richiederanno i dati storici, preferibilmente i dati dei 2 anni precedenti. Utilizzando i dati analizzeranno e prepareranno alcuni report che saranno utili per comprendere le esigenze dei clienti.
Le segnalazioni possono essere del seguente tipo:
- Clienti della regione A che viaggiano nella regione B in determinate date
- I clienti con un criterio di età specifico viaggiano nella città XX
E possono esserci molti altri rapporti.
L'analisi di questi rapporti aiuterà i clienti a identificare il tipo di promozioni e offerte che andranno a vantaggio dei clienti e allo stesso tempo potranno avvantaggiare le aziende in cui questa può diventare una situazione vantaggiosa per tutti. Ciò può essere facilmente ottenuto mediante test e rapporti ETL.
Parallelamente, il segmento IT deve affrontare un grave problema di DB che è stato notato che ha interrotto più servizi, a sua volta, ha il potenziale per causare impatti nel business. Durante le indagini, è stato rilevato che alcuni dati non validi hanno danneggiato alcuni database che dovevano essere corretti manualmente.
Nel primo caso, saranno richiesti i rapporti e i test ETL.
Considerando che quest'ultimo caso è dove il test del DB deve essere eseguito correttamente per superare i problemi con dati non validi.
Conclusione
Spero che il tutorial di cui sopra abbia fornito una panoramica semplice e chiara di cos'è il test ETL e perché deve essere eseguito insieme agli impatti o ai vantaggi aziendali che producono. Questo non si ferma qui, ma può estendersi alla previsione della crescita del business.
Circa l'autore: Questo tutorial è stato scritto da Nagarajan. È un Test Lead con oltre 6 anni di esperienza nel Software Testing in varie aree funzionali come Banking, Airlines e Telecom sia in termini di manuale che di automazione.
Fateci sapere i vostri pensieri / domande nei commenti qui sotto.
Lettura consigliata
- Domande e risposte al colloquio di prova ETL
- Esercitazione sul test del data warehouse di test ETL (una guida completa)
- I 10 migliori strumenti di test ETL nel 2021
- Come eseguire test ETL utilizzando Informatica PowerCenter Tool
- 31 Top Database Testing Intervista Domande e risposte
- Oltre 40 migliori strumenti di test di database - Soluzioni di test di dati popolari
- Guida completa al test del database (perché, cosa e come testare i dati)
- Test del database del selenio (utilizzando WebDriver e API JDBC)