Ich würde gerne den genialen "Aufnahme/Wiedergabe" -Mechanismus von Ruby's VCR library oder Betamax for the JVM verwenden. Gibt es eine Python-Bibliothek, die genauso funktioniert? Wenn nicht, wie testen Sie Ihre REST-Client-Anrufe, ohne sich Gedanken darüber machen zu müssen, ob der Test langsam und flockig ist?Gibt es eine Python-Alternative zu Rubys VCR-Bibliothek?
17
A
Antwort
17
Das Projekt ist ziemlich neu (zu diesem Zeitpunkt ist es weniger als eine Woche alt), aber es gibt einen laufenden Python-Port von VCR namens VCR.py.
Wenn Sie bereits wissen, wie man VCR verwendet und sich damit auskennt, sollten Sie auch einen lokalen Ruby-Proxy-Server (mit Rack) mit VCR laden. Dann können Sie Code in jeder Sprache testen ... stellen Sie einfach sicher, dass die HTTP-Anfragen über Ihren lokalen Server weitergeleitet werden. Dies ist eine der Hauptanwendungen von VCR's rack middleware. Ich habe dies verwendet, um nicht-Ruby-Code vor zu testen, und es hat gut funktioniert.
0
Es gibt auch eine betamax für Python, die ich von ganzem Herzen empfehlen würde.
Können Sie einen Rat geben, wie Sie vorgehen sollten? oder ein Startpunkt? Dieses Test-Proxy-Zeug klingt großartig für meine Zwecke. Es ist ein großer Auftrag, den ich kenne. – mango
@mango: Hier ist ein Beispiel: https://gist.github.com/dkubb/1434673 –