Puoi verificare automaticamente se le dipendenze esterne (ad esempio un sito Web) si comportano come previsto?

1

Sono in una situazione in cui una parte della mia applicazione dipende da un sito Web di cui non ho alcun controllo. Il sito Web potrebbe cambiare in modo imprevisto e senza preavviso e le modifiche possono o non possono inficiare una parte nella mia applicazione. Quando ciò accade, devo sempre capire cosa è cambiato e come ho bisogno di cambiare la mia applicazione per capire il cambiamento.

Ora pensavo, non sarebbe stato logico in qualche modo testare questo sito per le modifiche, in modo simile a come i test unitari indicano comportamenti contrari alle specifiche? Ho potuto vedere immediatamente cosa è cambiato e probabilmente lo noterei prima di aspettare che la mia app fallisse.

    
posta Namnodorel 04.04.2017 - 22:33
fonte

2 risposte

4

Certo. Anche se ho dimenticato il nome di questo, scrivere una suite di test per capire come si comporta un componente di terze parti e per garantire che questo comportamento non cambi è difficoltoso.

Naturalmente, dal momento che stai testando una scatola nera, ci possono essere diversi problemi, come

  • causando effetti collaterali che non vuoi,
  • nel caso di siti Web, carico sul server
  • in alcuni casi, l'utilizzo di un servizio può costare denaro.
risposta data 04.04.2017 - 22:57
fonte
0

La domanda originale era: puoi testare le dipendenze esterne? Risposta originale: No, testare le dipendenze esterne è chiamato test di integrazione

Dopo aver letto i tuoi commenti, credo che ciò che stai cercando si chiami "test del contratto"! verificarlo, servono a garantire che la risposta sia nella forma corretta e che il "contratto" non sia stato modificato / interrotto ...

Ho detto che tu "non puoi" testare un'unità di dipendenza esterna perché se dici che l'intero sistema che viene esposto come endpoint è un'UNITÀ, che qualsiasi altra cosa che hai sotto test di unità regolari è più piccola di un'unità! puoi vedere la discrepanza nella definizione?!?

Ma puoi farlo? si, puoi. Dovresti trattare una dipendenza esterna come un'unità? no non dovresti ...

    
risposta data 04.04.2017 - 22:35
fonte

Leggi altre domande sui tag