下記、"user_id": "test1"のテストユーザーを数十人と作ってリクエストを送り、テストしたいのですがpayloadを長くして書くのはコードの可読性をさげるなとおもっており、何か他の書き方はないか探しています。
そこで、parametrizerが使えるのではないかとおもったのですが、果たしてこの書き方でよいのかどうか、どう組み合わせてつかっていけばよいのかどうか、模索しております。
何か、こういうふうにかけばよいのではないか?(parametrizerを使う書き方でも使わなくない書き方でも)
というご提案頂けませんでしょうか?
pytest
1xxx_id = 'xxxx' 2 3url = 'http://localhost/v1/xxx' 4test = "xxxxx" 5headers = {'Authorization': 'Bearer %s' % test, 'Content-Type': 'application/json'} 6payload = {"requests": 7 [{"method": "post", 8 "url": "/accounts", 9 "body": {"user_id": "test1"}}, 10 { "method": "post", 11 "url": "/accounts", 12 "body": {"user_id": "test2"}}, 13 {"method": "post", 14 "url": "/accounts", 15 "body": {"user_id": "test3"}}]} 16 17with app.test_request_context(url, method="POST") as req: 18 req.request.args = payload 19 req.request.headers = headers 20 21r = req.request
parametrizerのサンプル
pytest
1 import pytest 2 3 @pytest.mark.parametrize('a,b,ans', [ 4 (2, 3, 4), 5 (1, 1, 3), 6 (3, -1, 2), 7 ]) 8 def test_add(a, b, ans): 9 assert add(a, b) == ans 10
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/07/13 00:26