Skip to content Skip to footer

ReplicTest

Strumento di automazione dei test end-to-end IBM i

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

Integrazione IO + navigazionePlug-in per IBM i Access Client Solutions (ACS)Velocità fino a 200 volte più rapida rispetto alla modalità manuale

Web Services

Integrazione IO con inizializzazione e comparazione (GET, POST)API REST, microservices

Tabelle DB dell'applicazione

Integrazione del DB automatizzato con dati di ripristino e comparazione dei dati per tutti gli ambienti di test (5250, web, batch)Integra RLA, SQL, ODBC, JDBC

Code Coverage

Dettagli sulle righe e sulla % di codice coperto da un singolo test o sulla fuzione complessiva di code coverage delle righe e % di più test (Unire la copertura del codice e disporre di informazioni in modo dinamico è essenziale per convalidare alti livelli di qualità e governare flussi di processi)

Call pgm IO parm

IO parm Integrazione con inizializzazione e confronto dei parametri

Shrink Data (riduzione dei dati)

Creazione di un sottoinsieme di dati con i soli record effettivamente utilizzati dal test case.(Abilita e aumenta la frequenza di riproduzione dei test con notevole riduzione dei tempi di esecuzione)

Abilita e automatizza i tuoi testIstituzionalizza la qualità e risparmia più dell'88% del tuo tempo

Accelera il time-to-market

Integrazione 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

Garantisce la qualità per tutte le versioni delle vostre app e accelera il Time To Value e Time To Market.

Test di workload

Garantisce una scalabilità all'uso dell'app con test paralleli differenziati. Il test permette di stressare le attività applicative del sistema al fine di poterne pianificare la capacità. On-premise & on-Cloud.

Test di sicurezza

Garantisce una protezione effettiva degli oggetti e dei dati dall'accesso di utenti non autorizzati. Integra le funzionalità RCAC e di autorizzazione del sistema.

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.”

Juan J. Ramirez
Product Design Lead @Netflix
Webinar - 30 Gennaio 2023

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

Metadati di copertura del codice completo e fusione della copertura del codice (generati direttamente in IFS e DB, nessuna dipendenza da RDi)

Crea varianti di test con gli stessi dati iniziali

Per ottenere una copertura efficace é spesso necessario eseguire lo stesso test con input diversi. Lo strumento integra una funzionalità per avviare un test con gli stessi dati iniziali e restituisce il controllo per continuare con input diversi e creare variazioni.

Facile da usare ed efficiente

Utenti finali (anche non programmatori) possono utilizzare ReplicTest per registrare scenari di test e un programmatore può implementarli. Un comando unico per registrare e riprodurre tutti scenari di test.

Integrazione IDE o DevOps

Il tool può essere integrato con qualsiasi struttura IDE o DevOps ed è monitorati attraverso dei comandi e interrogabile dal DB. Gli script ReplicTest possono anche essere integrati con VS Code o script SQL.

Reviews

"L'innovazione di ReplicTest è notevole perché rimuove ciò che rappresentava un ostacolo nel portare a termine i test per molte aziende che usano l'IBM i. Per la qualità del codice, la coerenza dei dati e un notevole risparmio di tempo.“
Birgitta Hauser
IBM i Champion
"Oltre ai tradizionali test di regressione automatizzati utilizzando la funzionalità di scripting SQL di ReplicTest per richiamare i processi dell'app, utilizziamo ReplicTest anche nel nostro progetto di refactoring. Il refactoring riguarda soprattutto i test: apportare piccole modifiche, testare, apportare modifiche aggiuntive, ripetere il test, ecc... Utilizzando i metadati di ReplicTest, il tool mette a disposizione degli sviluppatori la possibilità di confrontare facilmente la situazione prima e dopo. Tutti gli accessi al database vengono registrati, incluso lo stack di chiamate in corrispondenza di quell'accesso. Analizzando i dati forniti siamo in grado di tracciare eventuali sovraccarichi del processo. "Perché stiamo interrogando questa tabella?". Insieme alla funzionalità di Code-Coverage siamo stati in grado di rimuovere il codice obsoleto e rendere la nostra applicazione molto più veloce.

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.“
Rick Bovet
Development manager at ECI Software Solutions

CONTACT US

Get in Touch!

    Your request

    FAQ

    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.

    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.

    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.

    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.

    Polverini&Partners © 2024. P.IVA: IT02675510982 – All Rights Reserved