Come scrivere una buona simulazione per il test

0

Codice in Python e sto iniziando a utilizzare la libreria Mock .

Anche se ho letto tutta la documentazione, qualcosa che trovo difficile da capire è "Ciò che rende un buon mock".

Ad esempio, supponiamo di avere una funzione che effettua una richiesta HTTP:

def fetch_url(url, method=urlfetch.GET, data=''):
    """Send a HTTP request"""

    result = urlfetch.fetch(url=url, method=method, payload=data,
                            headers={'Access-Control-Allow-Origin': '*'})

    return result.content

Come sarebbe una buona simulazione di questa funzione? Inoltre, cosa sarebbe stato testato?

Da quanto ho capito, le caratteristiche di un buon test sono le verifiche di test:

  1. Che il codice non è rotto
  2. Che il codice funzioni come previsto
  3. Che il codice restituisce l'output previsto se restituisce qualcosa

Detto questo, quali sarebbero le caratteristiche di un buon mock?

    
posta Ben 22.05.2014 - 20:45
fonte

1 risposta

1

Un buon mock:

  1. funge da supporto per una dipendenza dell'oggetto dall'unità sotto test.
  2. fornisce un comportamento "fasullo" significativo per la dipendenza da tale oggetto.
  3. Isola l'unità sotto test dalla vera dipendenza (che ha i suoi test).

Non molto eccitante, vero?

I migliori mock sono quelli che si scrivono da soli, con l'aiuto di una libreria derisoria come Moq o Rhino Mocks. La documentazione di queste librerie offre una buona panoramica di come, quando e dove usare al meglio i mock.

    
risposta data 22.05.2014 - 22:33
fonte

Leggi altre domande sui tag