問題タブ [httpretty]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - セミコロンを処理する parse_qs に代わるものはありますか?
TL;DR
セミコロンを含むクエリ文字列を parse_qs とは異なる方法で処理するために利用できるライブラリ/呼び出しは何ですか?
完全な背景
タグ付けされた質問を検索するために StackExchange API を使用しています。
検索は次のようにレイアウトされ、タグはセミコロンで区切られています。
/2.1/search?order=desc&sort=activity&tagged=python;ruby&site=stackoverflow
APIとのやり取りは問題ありません。問題は、特にhttprettyを使用して HTTP をモックするときに、呼び出しをテストするときに発生します。
内部では、python 標準ライブラリをhttpretty
使用してクエリ文字列を解析しています。urlparse.parse_qs
明らかにそれはうまくいきません。これは小さな例です。ここに httpretty のスニペットがあります (テスト コンテキスト以外)。
httpretty の機構を使用したいのですが、回避策が必要ですparse_qs
。今のところ、httpretty にモンキー パッチを適用できますが、他に何ができるか見てみたいと思います。
client - HTTPretty を使用して Twisted Web クライアントの HTTP リクエストをモックする
Httpretty は Python ソケット レイヤーで動作するため、Twisted Web リクエストでさえモック アウトする必要があります。しかし、httpretty を使用すると奇妙な動作が見られます。何らかの方法で localhost に接続しようとします。以下の例は違いを示しています。
そして、応答は次のとおりです。
Twisted Web クライアントで httpretty を使用するにはどうすればよいですか?
python - httpretty/sure を使用して Python テストを実行する方法
私はPythonテストが初めてなので、明白な情報を提供することを躊躇しないでください.
基本的に、私は Python を使用していくつかの RESTful テストを行いたいと思っており、httpretty と確かなライブラリが非常に見栄えがすることを発見しました。
次を含むpythonファイルがあります。
これは、 https://github.com/gabrielfalcao/HTTPrettyで提供されているサンプル コードと基本的に同じです。
私の質問は; このテストを実行して、合格または不合格を確認するにはどうすればよいですか? を使用して実行しようとしまし./pythonFile
たが、うまくいきません。
python - Travis でハングする HTTPretty テスト
python-intercomをPython 3 に対応させているときに、Travisで問題が発生しました。
このnosetests
コマンドは、Python 3.4 で実行すると終了しないように見えます (Python 2.7 では期待どおりに動作します)。HTTPrettyを使用するテストに絞り込み、小さなプロジェクトを作成して問題を強調し、失敗したビルドの結果を公開しました。
現在、どのように進めればよいかわかりません。
python - httpretty を pytest tmpdir と組み合わせる
次の pytest-test は、httpretty を使用してリクエストをモックします。取得したデータをファイルに書き込みます。
私が今やりたいことは、pytest tmpdir機能を利用することです。これに到達するために、次のようなテストを作成しました (インポートは上記と同じです):
httpretty デコレーターが追加のパラメーターに問題があるように見えるため、失敗します。
これを修正する方法はありますか?