ユニットテストは行っていません。
私はPython2.7を使用してWindows10マシンで次の2つのコマンドを実行していますが、悪名高いアサーションエラーが発生しています:
No api proxy found for service "memcache"
これはコードです:
import cloudstorage as cstorage
cstorage.copy2("/nosuchbucket/nosuchfile1","/nosuchbucket/nosuchfile2")
何が間違っている可能性があるのか?
環境:
- Google Cloud SDK 202.0.0
- app-engine-python 1.9.70
- app-engine-python-extras 1.9.69
- Python 2.7.14
回答 2 件
また、昨日、テスト目的で使用できる回避策を見つけました。
テストベッドをインポートし、必要なスタブ(またはそれらすべて)を初期化するだけです
google.appengine.ext import testbedから testbed = testbed.Testbed()
testbed.activate()
testbed.init_datastore_v3_stub()
testbed.init_memcache_stub()
testbed.init_urlfetch_stub()
testbed.init_app_identity_stub()
testbed.init_blobstore_stub()
これでエラーはなくなり、cloudstorage APIを使用できます。
その特定のライブラリは、GAEアプリケーションコードで使用するように設計されたAppEngine Google Cloud Storageクライアントライブラリです。
そのようなコードは、あなたがやろうとしたようにスタンドアロンで実行することはできません。GAEサンドボックス環境(ローカル開発サーバーまたはデプロイ時に実際のGAEインフラのいずれか)内で実行する必要があります。
関連するimport cloudstorage、ImportError:google.appengine.apiという名前のモジュールも参照してください。