Come preparare il caso di test per la migrazione di sistema del sistema legacy mentre la funzionalità esistente non è chiara?

0

Sto migrando un sistema legacy da Oracle Form a Web Application. La migrazione è condotta con lo studio del codice e l'intervista.

Come requisito è necessario migrare il sistema esistente all'applicazione Web e conservare tutte le funzionalità esistenti.

Ci sono alcune differenze nel comportamento tra l'applicazione Web e il sistema in uscita a causa dell'architettura completamente diversa. Inoltre, le funzionalità del sistema esistente non sono ben note.

In questa situazione, come devo preparare il caso di test al fine di garantire la qualità del sistema e anche soddisfare i requisiti del progetto?

Modifica: vorrei menzionare che questo progetto utilizza la metodologia Agile.

Domanda simile : Scrivere test per codice il cui scopo non capisco

Differenza : il tester di " Scrivere test per codice il cui scopo non capisco " conoscere bene l'input e l'output del sistema. Ma in questa situazione, i tester non conoscono l'input e l'output del sistema e anche le funzionalità del sistema.

    
posta Ben Cheng 11.12.2017 - 13:47
fonte

1 risposta

4

Per rispondere alla tua ultima domanda ("come dovrei preparare il test case per garantire la qualità del sistema?") devi rispondere alle tue prime due domande:

There are some differences in behaviour between Web application and exiting system because of completely different architecture.

Quali sono queste differenze? Devi identificarli e documentarli.

In addition, the functionalities of existing system is not well known.

Devi anche dedicare più tempo ad analizzare il sistema esistente per rispondere a queste domande, il che probabilmente richiede più analisi del codice, interviste a sviluppatori passati o presenti e stakeholder commerciali --- utenti regolari, se necessario.

Quindi ...

Scrivi script di test automatici usando uno strumento come Cucumber (o SpecFlow per le applicazioni .NET) per descrivere il comportamento --- molti test. Una volta che l'applicazione web sta facendo passare i test, allora hai una buona idea che il sistema legacy sia stato trasferito sull'applicazione web.

La chiave qui è rendere questi test automatizzati. Affidarsi agli umani per fare sempre la stessa identica cosa è soggetto ad errori. Siamo bravi a fare le cose in modo diverso ogni volta. Configura un server di integrazione continua che esegue questi test automatizzati ogni volta che controlli il codice. Il robot insensato può eseguire questi test ripetibili.

Ora liberi gli umani per fare test esplorativi per vedere se possono rompere il sistema (sia vecchi che nuovi).

Fondamentalmente, garantire la qualità per la migrazione di un sistema legacy è esattamente lo stesso che per la creazione di un nuovo sistema, tranne per il fatto che si ha un sistema esistente a cui fare riferimento quando si crea il nuovo.

    
risposta data 11.12.2017 - 14:43
fonte