Quali tipi di bug software sono difficili da trovare durante il test?
doc-14728
Un problema fondamentale con i test del software è che non è possibile eseguire test in tutte le combinazioni di input e precondizioni (stato iniziale), nemmeno con un prodotto semplice. 17-18 Ciò significa che il numero di difetti in un prodotto software può essere molto elevato e che i difetti che si verificano raramente sono difficili da trovare nei test.
None
doc-14744
Il Beta test viene eseguito dopo il test alfa e può essere considerato una forma di test di accettazione da parte dell' utente esterno. Versioni del software, noto come versioni beta, sono rilasciate ad un pubblico limitato al di fuori del team di programmazione noto come beta tester. Il software viene rilasciato a gruppi di persone in modo che ulteriori test possano garantire che il prodotto abbia pochi difetti o bug. Le versioni beta possono essere messe a disposizione del pubblico aperto per aumentare il campo di feedback ad un numero massimo di futuri utenti e per fornire valore prima, per un periodo di tempo esteso o addirittura indefinito (beta perpetua).
None
doc-14743
Le prove di regressione si concentrano sul rilevamento dei difetti dopo che si è verificato un cambiamento importante del codice. In particolare, cerca di scoprire regressioni software, come caratteristiche degradate o perse, compresi i vecchi bug che sono tornati indietro. Tali regressioni si verificano ogni volta che la funzionalità del software che in precedenza funzionava correttamente, smette di funzionare come previsto. In genere, le regressioni si verificano come conseguenza involontaria dei cambiamenti di programma, quando la parte di nuovo sviluppo del software si scontra con il codice precedentemente esistente. I metodi comuni di prova di regressione comprendono la ripetizione di serie precedenti di casi di prova e la verifica del riemergere di guasti precedentemente corretti. La profondità dei test dipende dalla fase del processo di rilascio e dal rischio delle caratteristiche aggiunte. Possono essere completi, per modifiche aggiunte in ritardo nel rilascio o ritenute rischiose, oppure molto poco profonde, consistenti in test positivi su ciascuna caratteristica, se le modifiche sono precoci nel rilascio o considerate a basso rischio. La prova di regressione è in genere il più grande sforzo di prova nello sviluppo di software commerciale, a causa del controllo di numerosi dettagli nelle caratteristiche software precedenti, e anche nuovo software può essere sviluppato utilizzando alcuni vecchi test-cases per testare parti del nuovo design per garantire la funzionalità precedente è ancora supportato.
None
doc-14727
Anche se i test possono determinare la correttezza del software nell' ipotesi di alcune ipotesi specifiche (vedere la gerarchia delle difficoltà di test qui di seguito), i test non possono identificare tutti i difetti all' interno del software. Al contrario, fornisce una critica o un confronto che mette a confronto lo stato e il comportamento del prodotto con i principi oracoli o meccanismi attraverso i quali qualcuno potrebbe riconoscere un problema. Questi oracoli possono includere (ma non sono limitati a) specifiche, contratti, prodotti comparabili, versioni precedenti dello stesso prodotto, inferenze sullo scopo previsto o previsto, aspettative dell' utente o del cliente, standard pertinenti, leggi applicabili o altri criteri.
None
doc-14738
Ci sono generalmente quattro livelli riconosciuti di test: test unitari, test di integrazione, test dell' interfaccia dei componenti e test di sistema. I test sono spesso raggruppati in base a dove vengono aggiunti nel processo di sviluppo del software o al livello di specificità del test. I livelli principali durante il processo di sviluppo definiti dalla guida SWEBOK sono il test di unità, integrazione e di sistema che si distinguono per il target di test senza implicare uno specifico modello di processo. Altri livelli di prova sono classificati in base all' obiettivo del test.
None
doc-12943
Nel test di boundary scan, i circuiti di test integrati in vari circuiti integrati sulla scheda formano connessioni temporanee tra le tracce della PCB per verificare che i circuiti integrati siano montati correttamente. Il test di scansione perimetrale richiede che tutti i circuiti integrati da testare utilizzino una procedura standard di configurazione del test, la più comune delle quali è lo standard del Joint Test Action Group (JTAG). L' architettura di prova JTAG fornisce un mezzo per testare le interconnessioni tra circuiti integrati su una scheda senza utilizzare sonde di prova fisiche. I fornitori di strumenti JTAG forniscono vari tipi di stimoli e sofisticati algoritmi, non solo per rilevare le reti in avaria, ma anche per isolare i guasti a specifiche reti, dispositivi e pin.
None
doc-14746
Development Testing è un processo di sviluppo software che prevede l' applicazione sincronizzata di un ampio spettro di strategie di prevenzione e rilevamento dei difetti per ridurre i rischi, i tempi e i costi di sviluppo del software. Viene eseguito dallo sviluppatore o dall' ingegnere del software durante la fase di costruzione del ciclo di vita dello sviluppo software. Piuttosto che sostituire i tradizionali focus QA, li aumenta. Test di sviluppo mira ad eliminare gli errori di costruzione prima che il codice sia promosso a QA; questa strategia è intesa ad aumentare la qualità del software risultante così come l' efficienza del processo di sviluppo globale e QA.
None
doc-14733
I test di Black-box trattano il software come una "scatola nera", esaminando le funzionalità senza alcuna conoscenza dell' implementazione interna, senza vedere il codice sorgente. I tester sono consapevoli solo di ciò che il software deve fare, non di come lo fa. I metodi di prova Black-box includono: partizionamento equivalenza, analisi del valore limite, test di tutte le coppie, tabelle di transizione dello stato, test della tabella di decisione, test della tabella, fuzz test, test basati su modelli, test di caso d' uso, test esplorativi e test basati su specifiche.
None
doc-7940
In assenza di adeguate tecniche di coltura su placche, alcuni microbi richiedono la coltura all' interno di animali vivi. I batteri come il Mycobacterium leprae e il Treponema pallidum possono essere coltivati negli animali, anche se le tecniche sierologiche e microscopiche rendono inutile l' uso di animali vivi. I virus sono solitamente identificati anche utilizzando alternative alla crescita della cultura o degli animali. Alcuni virus possono essere coltivati in uova embrionate. Un altro metodo di identificazione utile è la Xenodiagnosi, o l' uso di un vettore per sostenere la crescita di un agente infettivo. La malattia di Chagas è l' esempio più significativo, perché è difficile dimostrare direttamente la presenza dell' agente causante, Trypanosoma cruzi in un paziente, il che rende quindi difficile fare una diagnosi definitiva. In questo caso, la xenodiagnosi prevede l' uso del vettore dell' agente Chagas T. cruzi, un bug di triatomina non infetto, che preleva un pasto di sangue da una persona sospettata di essere stata infettata. Il bug viene successivamente ispezionato per la crescita di T. cruzi all' interno del suo intestino.
None
doc-14734
I test basati sulle specifiche mirano a testare la funzionalità del software in base ai requisiti applicabili. Questo livello di test richiede di solito la fornitura di casi di test approfonditi al tester, che poi può semplicemente verificare che per un dato ingresso, il valore di uscita (o il comportamento), sia "è" o "non è" lo stesso valore specificato nel caso del test. I test case sono costruiti intorno a specifiche e requisiti, cioè ciò che l' applicazione deve fare. Utilizza descrizioni esterne del software, comprese specifiche, requisiti e design per ricavare i casi di test. Questi test possono essere funzionali o non funzionali, anche se solitamente funzionali.
None
doc-14736
Il Grey-box testing (scrittura americana: griy-box testing) implica la conoscenza delle strutture e degli algoritmi interni dei dati ai fini della progettazione dei test, durante l' esecuzione di tali test a livello dell' utente, o a livello di black-box. Il tester non deve avere accesso completo al codice sorgente del software. Non in citazione data] La manipolazione dei dati di ingresso e dell' uscita di formattazione non si qualificano come casella grigia, perché l' ingresso e l' uscita sono chiaramente al di fuori della "scatola nera" che stiamo chiamando il sistema in prova.
None