Application Testing: You Need It When You Need It
Charlie Guarino, President of Central Park Data Systems, IBM Champion, Podcaster at Tech Talk SMB presents:
Polverini & Partners CTO Pascal Polverini on the critical role of testing in IBM i application development
Semplicità ed efficienza come fattori predominanti di questo "engine" di Testing per le vostre applicazioni IBM i
Schermo verde nativo 5250
Web Services
Tabelle DB dell'applicazione
Code Coverage
Call pgm IO parm
Shrink Data (riduzione dei dati)
Abilita e automatizza i tuoi testIstituzionalizza la qualità e risparmia più dell'88% del tuo tempo
Accelera il time-to-marketIntegrazione completa del database
Gestione automatizzata dell'identificazione delle tabelle DB e dei file per il ripristino e il confronto delle immagini dati.
I test devono essere replicabili, il che significa che i dati devono essere reimpostati ogni volta che un test viene riprodotto e strumenti di test, come il nostro, includono questa funzionalità. Ma il prerequisito è che tutti i file di dati o le tabelle vengano identificati per primi. Questo prerequisito è spesso lasciato all’utente finale oppure alcuni strumenti copiano semplicemente intere librerie con tutti i file e le tabelle. ReplicTest lo fa automaticamente e solo per i file e le tabelle effettivamente utilizzati dallo specifico caso di test. Ciò ottimizza tutti i processi del vostro IBM i (i.e. AS400), dall’identificazione dei prerequisiti all’esecuzione, eseguendo e automatizzando tutte le attività complesse per voi.
Automatizzato per programmi batch, web o interattivi
Lo stesso comando viene utilizzato per elaborare la registrazione o la riproduzione del test case. Per impostazione predefinita, il comando rileva automaticamente in quale modalità deve essere eseguito, dunque o in registrazione o in riproduzione e, a seconda della modalità, vengono elaborati comportamenti diversi per copiare, ripristinare o confrontare le immagini dei dati.
Olistico
Test completi in modo olistico con il nostro motore di incapsulamento dei test, inter/batch/web (incapsulando DB, UI, IO parm, body parm e code coverage – con ripristini e comparazioni)
Il nostro “Encapsulation Engine” è “onnivoro”: può anche integrare qualsiasi oggetto come spoolfiles dtaara, dtaq, oggetti IFS, il joblog, ecc… e altro ancora, quando cambi un oggetto nel tuo sistema, saprai quali test lo hanno coinvolto e rilanciarli tutti.
Richiamabile come wrapper per Call, API REST, richieste SQL singole o in serie.
Autonoma o plugabile a ACS, SQL Scripts, VS Code, Cypress o Selenium, PEX, iDoctor.
Test funzionale & di regressione
Test di workload
Test di sicurezza
Test di regressione & di workload, implementazione e monitoraggio
I test possono essere pianificati automaticamente, in sequenza o in parallelo, con lo stesso login o con login diversi
Guidati da comandi, i test possono essere avviati automaticamente tramite diverse opzioni, altri comandi o script in modi modulari.
Lo stato dei test viene registrato includendo gli stack di chiamate. In caso di fallimento, la configurazione del monitoraggio può lasciare il job aperto, o terminarlo (e passare/non passare al test successivo), registrando tutti i messaggi rilevanti e i metadati contestuali.
È possibile cambiare il login per testare l’accesso di diverse autorità utente (ReplicTest preserva completamente la proprietà e le autorità di tutti gli oggetti in modalità di replay).
Esperienza utente, KPI (Key Performance Indicator) e miglioramento
L’esperienza dell’utente è stata valorizzata, ad esempio con la flessibilità di correggere le registrazioni già effettuate. Se, ad esempio, si è registrato un caso di test che coinvolge 30 schermate e ci si accorge di aver inserito dei dati sbagliati nella schermata 25, lo strumento offre la flessibilità necessaria per correggere senza dover ripetere l’intera registrazione. Lo stesso vale per i servizi web e l’integrazione dei messaggi body. Un altro esempio è rappresentato dai timestamp che possono essere automaticamente aggirati durante la comparazione dei test replay o come nel caso della copertura del codice che può essere recuperata dinamicamente tramite una UDF SQL e anche in un flusso di lavoro automatizzato basato sul test.
I compiti possono essere divisi tra utente finale e programmatore.
Un utente finale non programmatore può facilmente registrare un caso di test, quindi un programmatore può integrarlo e distribuirlo.
Il reporting può integrare molte informazioni, dalle tendenze dello stato dei test al log dei messaggi con istruzioni sulle righe, dalla percentuale di copertura del codice al tempo guadagnato. Tutte le informazioni sono disponibili in un database completo da cui è possibile personalizzare il reporting dei test.
Infine, possiamo anche offuscare i set di dati e presentare i risultati in una dashboard.
“Often, people ask what a realistic metric to measure design impact could be, and I’m convinced that metric is “time to value.” If your design influence isn’t decreasing overall time to value, you’re doing something wrong.”
Abilita e automatizza i tuoi testGuarda il webinar per scoprire tutte le caratteristiche principali di una soluzione moderna di test automatizzati per le tue applicazioni IBM i
Integra KPI, metriche e tendenze nel ciclo di sviluppo del software
Caso di studio
Lo strumento consente una governance dei test di elevata precisione in correlazione con l’analisi dell’impatto delle righe di codice da modificare per progetti specifici, come ad esempio il Field Resize.
È inoltre totalmente integrabile con la nostra Soluzione DevOps.
Copertura del codice potenziata
Crea varianti di test con gli stessi dati iniziali
Facile da usare ed efficiente
Integrazione IDE o DevOps
Reviews
Informazioni sul nostro prodotto: EasyOrder di ECI è una soluzione Web di e-commerce e gestione degli ordini basata su IBM i ed è utilizzata in una varietà di settori. Copre l'intera catena di fornitura e la soluzione coinvolge una varietà di sistemi di approvvigionamento elettronico fino a sistemi di acquisto con molte personalizzazioni.“
CONTACT US
Get in Touch!
FAQ
Cos'è il test di regressione?
Il test di regressione (a volte chiamati test di non regressione) consiste nell’eseguire nuovamente test funzionali e non funzionali per garantire che il software sviluppato e testato in precedenza funzioni ancora come previsto dopo una modifica. In caso contrario, ciò si chiamerebbe regressione.
Cos'è il test end-to-end?
Il test end-to-end è una metodologia di test del software che verifica il comportamento e la funzionalità di un’intera applicazione o sistema dall’inizio alla fine. Si concentra sul test del flusso di dati e processi attraverso vari componenti, sottosistemi e interfacce, garantendo che il sistema funzioni come previsto e soddisfi i requisiti desiderati. Nei test end-to-end, il sistema viene testato nel suo complesso, simulando scenari del mondo reale e interazioni con l’utente per convalidarne funzionalità, prestazioni e affidabilità. Implica il test di più moduli o componenti interconnessi per garantire una perfetta integrazione e il corretto funzionamento del sistema completo.
Perché spesso è difficile testare un'applicazione interattiva IBM i con schermi 5250?
Le schermate tradizionali del 5250 sono basate su testo e mancano di elementi dell’interfaccia utente ben definiti. Ciò può rendere difficile automatizzare il processo di test utilizzando strumenti convenzionali di automazione dell’interfaccia utente basati su pixel di immagine. Interagire con gli schermi 5250 spesso richiede l’emulazione dell’input del terminale e l’acquisizione dell’output basato su testo, che viene fornito automaticamente con il nostro strumento ReplicTest.
Qual è il ROI dei test in un progetto di trasformazione digitale?
In un processo di sviluppo, il test rappresenta almeno il 20% del budget e in alcuni casi può arrivare fino a più della metà del budget stabilito.
Per quanto riguarda il ritorno sull’investimento (ROI) dei test, questo può essere sostanziale in un progetto di trasformazione digitale. Sebbene il ROI esatto varierà a seconda del progetto e dell’organizzazione, ecco diversi modi in cui i test possono contribuire al ROI:
Identificazione precoce dei problemi e riduzione dei costi: i test aiutano a identificare difetti, bug o lacune funzionali nelle prime fasi del processo di sviluppo. Individuando e affrontando tempestivamente i problemi, le organizzazioni possono evitare costose rilavorazioni, ridurre al minimo l’impatto sui processi a valle e ridurre i costi complessivi del progetto.
Esperienza del cliente migliorata: i progetti di trasformazione digitale spesso mirano a migliorare l’esperienza del cliente. Attraverso test approfonditi, le organizzazioni possono garantire che i sistemi, le applicazioni o le interfacce trasformati forniscano un’esperienza semplice e intuitiva. Ciò può comportare una maggiore soddisfazione e fidelizzazione del cliente e una generazione di entrate potenzialmente più elevata.
Riduzione dei tempi di inattività e delle interruzioni del business: test efficaci riducono al minimo il rischio di guasti del sistema, tempi di inattività o interruzioni durante la trasformazione o dopo il go-live. Identificando e affrontando in anticipo potenziali problemi, le organizzazioni possono evitare interruzioni dell’attività, mantenere la continuità operativa e prevenire perdite di ricavi.
Prestazioni e scalabilità del sistema migliorate: le attività di test delle prestazioni e di test del carico aiutano a identificare e risolvere i colli di bottiglia delle prestazioni, i problemi di scalabilità o le potenziali limitazioni del sistema trasformato. Garantire che il sistema sia in grado di gestire maggiori carichi di lavoro o richieste degli utenti migliora le prestazioni complessive del sistema, la soddisfazione degli utenti e la capacità dell’organizzazione di gestire la crescita.
Conformità e mitigazione del rischio: i progetti di trasformazione digitale spesso implicano la conformità alle normative di settore, agli standard di sicurezza e ai requisiti sulla privacy dei dati. Test efficaci garantiscono che il sistema trasformato soddisfi queste esigenze di conformità, riducendo al minimo il rischio di sanzioni normative, danni alla reputazione o problemi legali.
Maggiore efficienza e produttività: test approfonditi aiutano a identificare le aree di miglioramento dei processi, opportunità di automazione o miglioramenti dell’usabilità. Semplificando i flussi di lavoro, eliminando le attività manuali e migliorando l’efficienza del sistema, le organizzazioni possono ottenere guadagni di produttività, risparmi sui costi e una maggiore soddisfazione dei dipendenti.
Costi di manutenzione e supporto ridotti: test adeguati aiutano a identificare e correggere i problemi prima che il sistema entri in produzione. Ciò può portare a una diminuzione del supporto post-produzione e dei costi di manutenzione poiché si verificano meno difetti o problemi, con conseguente miglioramento della stabilità del sistema e riduzione degli sforzi di supporto continuo.
È importante notare che il ROI dei test in un progetto di trasformazione digitale è influenzato da vari fattori, come la portata del progetto, la complessità, il settore e l’efficacia dei processi di test implementati. Le organizzazioni dovrebbero considerare questi fattori durante la pianificazione e l’assegnazione delle risorse per i test, con l’obiettivo di massimizzare il ROI e garantire il successo del progetto di trasformazione.