J'ai un code Boto3 hérité qui utilise beaucoup la session Boto3 par défaut, par ex.Utilisation de la session par défaut dans Placebo pour tester le code Boto3
import boto3
client = boto3.client('ec2')
client.describe_images(DryRun=False)
...
Je souhaite écrire des tests unitaires pour ce code existant en utilisant placebo.
Cependant, docs il semble impliquer que le code sous test devrait toujours gérer la session Boto3 explicitement, à savoir
import boto3
import placebo
session = boto3.Session()
pill = placebo.attach(session, data_path='/path/to/response/directory')
pill.record()
client = session.client('ec2')
client.describe_images(DryRun=False)
...
Ma lecture du code (e.g.) est que cela est tout à fait une limitation du framework Placebo Mock, bien que je ne sois pas un programmeur expert Python. Suis-je en train de mal comprendre quelque chose de fondamental - y a-t-il un moyen de contourner ce problème, ou devrais-je refactoriser tout mon code existant pour transmettre explicitement une session?
Oh wow. Merci beaucoup. Si cela fonctionne, je vais envoyer un PR pour clarifier les docs. –
Non, cela ne fonctionne pas - Je vais mettre à jour le problème dans votre projet montrant les détails. –