[PYTHON] So schreiben Sie einen Komponententest für den URL-Abruf in GAE / P.

Kopie unten

http://stackoverflow.com/questions/9943996/how-to-mock-ndb-get-context-urlfetch

import unittest
from google.appengine.ext import testbed, ndb
from mock import patch, Mock

class MyTestCase(unittest.TestCase):

    def setUp(self):
        self.testbed = testbed.Testbed()
        self.testbed.activate()
        self.testbed.init_urlfetch_stub()

        # mock urlrfetch service
        uf = self.testbed.get_stub('urlfetch')
        uf._Dynamic_Fetch = Mock()

    @patch('google.appengine.api.urlfetch.urlfetch_service_pb.URLFetchResponse')
    def test_make_request(self, URLFetchResponse):
        # mocking rpc response object
        response = URLFetchResponse.return_value
        response.contentwastruncated.return_value = False
        response.statuscode.return_value = 200
        response.content.return_value = 'Hello world!'        

        ctx = ndb.get_context()
        fut = ctx.urlfetch('http://google.com')
        result = fut.get_result()

        self.assertEquals(result.content, 'Hello world!')

    def tearDown(self):
        self.testbed.deactivate()

Recommended Posts

So schreiben Sie einen Komponententest für den URL-Abruf in GAE / P.
Hinweise zum Schreiben von require.txt
Ich weiß nicht, wie ich Abfrageparameter in GAE / P erhalten soll
So schreiben Sie in Error Repoting in Python auf GAE
XPath-Grundlagen (2) - So schreiben Sie XPath
So registrieren Sie sich bei pypi
[ROS] So schreiben Sie Publisher und Subscriber auf einen Knoten
So installieren Sie mysql-connector-python auf einem Mac
Wie man nüchtern mit Pandas schreibt
Verwendung von Dataiku unter Windows
Wiederverwendung von Flaschen Wie schreibe ich HTML?
Hinweise zur Verwendung von Pywinauto
So installieren Sie das Graph-Tool unter macOS
So installieren Sie VMware-Tools unter Linux
So stellen Sie den Django-Kompressor unter Windows bereit
Hinweise zur Verwendung von featuretools
So installieren Sie OpenCV auf einem Mac
Wie man Matplotlib auf Heroku ausführt
So installieren Sie PyPy unter CentOS
Wie benutzt man Homebrew in Debian?
Missverständnisse beim Verbinden von cnn
So installieren Sie TensorFlow unter CentOS 7
In GAE / P häufig verwendete Befehle
So schreiben Sie ein Docker-Basis-Image
Wie schreibe ich Django1.9 umweltunabhängig wsgi.py
So installieren Sie Maven unter CentOS
So installieren Sie Musik 21 unter Windows
So schreiben Sie Code für den Zugriff auf Python dashDB auf Bluemix oder lokal
Unterschied in der Ausführungsgeschwindigkeit abhängig vom Schreiben der Cython-Funktion
Eine Geschichte darüber, wie man in GAE / P über verstümmelte Charaktere nachdenken möchte
So installieren Sie das aws-session-manager-Plugin unter Manajro Linux
Qiita (1) Wie schreibe ich einen Codenamen?
Wie man pydoc auf Python Interpreter liest
So installieren Sie drobertadams / toggl-cli auf einem Mac
Wie man optuna einstellt (wie man einen Suchraum schreibt)
[Kivy] So installieren Sie Kivy unter Windows [Python]
Wie man Mecab, neologd-ipadic auf Colab verwendet
So schreiben Sie Python-Dokumentkommentare (Docstrings)
Wie man Hello, World mit #Nix baut
So aktualisieren Sie PHP unter Amazon Linux 2
So verwenden Sie Google Assistant unter Windows 10
So löschen Sie Python 2.x auf einem Mac.
So zeigen Sie Piktogramme unter Manjaro Linux an
Memorandum über die Verwendung von Gremlin Python
So installieren Sie Pakete unter Alpine Linux
[Python2.7] Zusammenfassung der Verwendung von unittest
So installieren Sie Richzhang / Colorization unter Windows 10
So aktualisieren Sie die Sicherheit unter CentOS Linux 8
So installieren Sie Apache (httpd) unter CentOS7
Wie installiere ich php7.4 unter Linux (Ubuntu)
So installieren Sie Eclipse GlassFish 5.1.0 unter CentOS7
So installieren Sie Apache (httpd) unter CentOS8
So testen Sie auf einer von Django authentifizierten Seite
Hinweise zum Ausführen von Cython unter OSX
So finden Sie große Dateien unter Linux