Ho un'app che sto scrivendo che autentica contro un server di autorizzazione Oauth 2.0. Mi piacerebbe testare le parti accessibili solo dopo aver effettuato l'accesso, ma il server Oauth è una dipendenza esterna che complica e rende fragile i miei test.Mocking dei provider Oauth durante il test
Qualche suggerimento su come dovrei fare questo? Cosa pratica l'industria per qualcosa di simile? Il mio istinto è di prendere in giro in qualche modo il server in modo che consenta l'accesso alle risorse protette.
Se è importante, questa è una webapp Python scritta utilizzando Flask.
Sto utilizzando un server oauth personalizzato che verrà eseguito sul mio dominio e mentre è possibile aggiungere alcune funzionalità di sandboxing come suggerito da FoxMask, preferirei molto poter eseguire il test senza richiedere un server aggiuntivo in esecuzione.
in genere, l'Oauth "esterno" (come per il servizio Twitter, Evernote, ecc.) Fornisce un sanbox per i nostri test. Non ne hai trovato uno per quello scopo? –
Ma avrebbero ancora bisogno di autenticarsi contro di loro? Solo che ti inviano false credenziali per il test? –
sì certo che lo richiedono.si hanno restituito credenziali fittizie o equivalenti. Evernote, ad esempio, fornisce chiavi speciali solo a scopo di test. E questo fa il trucco per completare il nostro sviluppo con l'API. Una volta che arricherai il tuo dev per avviare la produzione, otterrai una nuova chiave API per la produzione. –