タイトルと同じように。手動でテストできるモデルがあります。ブラウザにURLを入力すると、ビューの1つから結果が表示されます。ユニットテストはそれを行う必要があります。
リクエストを作成してアプリケーションに送信し、その代わりにコンテキストを受信する方法があるはずだと思います。
タイトルと同じように。手動でテストできるモデルがあります。ブラウザにURLを入力すると、ビューの1つから結果が表示されます。ユニットテストはそれを行う必要があります。
リクエストを作成してアプリケーションに送信し、その代わりにコンテキストを受信する方法があるはずだと思います。
WebTestパッケージを使用して機能テストを作成できます。これにより、、などをサポートするでWSGIアプリケーションをラップできますTestApp
。.get()
.post()
後世のためにここに貼り付けられたPyramidの詳細については、 http://docs.pylonsproject.org/projects/pyramid/1.0/narr/testing.html#creating-functional-testsを参照してください。
import unittest
class FunctionalTests(unittest.TestCase):
def setUp(self):
from myapp import main
app = main({})
from webtest import TestApp
self.testapp = TestApp(app)
def test_root(self):
res = self.testapp.get('/', status=200)
self.failUnless('Pyramid' in res.body)
Pyramidは、実際のリクエストをテストし、内部に関する情報を受け取るためのメソッドを実際には公開していません。以下を使用して、トラバーサーを自分で実行できます。
from pyramid.traversal import traverse
app = get_app(...)
root = get_root(app)
out = traverse(root, '/my/test/path')
context = out['context']
ただし、テストは少し工夫されています。返されたページが期待どおりかどうかをチェックする機能テストを使用する方が適切です。