3

私はこの問題を抱えていて、気が狂いそうです!

それで、私は初めての実際の G​​oogle App Engine アプリケーションを開発しています。テストを書いている間、常に何かを発見するのが好きです。

したがって、次のセットアップがあります
。nose、nosegae、webtest、およびgaetestbedを備えたvirtualenvがあります。それはpokesvrと呼ばれます。

次のように virtualenv をアクティブにします。

source porksvr/bin/activate

ノーズを実行するには、次のコマンドを使用します。

nosetests --with-gae --gae-lib-root /home/fs/gae

これにより、次のエラーが表示されます

DEBUG: Access to module file denied: 
/home/fs/work/gaecode/porksvr/lib/python2.6/site-packages/webtest

そのため、最初は「ノーズは dev_appserver の「コンテキスト」でアプリケーションを実行しているため、webtest を認識していない」と考えました。

ただし、新しいディレクトリを作成し、小さな GAE アプリケーションを追加したことを確認してください。-main.py -app.yaml -test_huh.py (
webtest モジュールをインポートします。)

今、私を本当に混乱させたのは、これがうまくいくということです。私はnosetestsコマンドを実行しましたが、実際にテストに合格しています。

そこで私は自分のアプリケーションを掘り下げて何が違うのかを調べ始めましたが、本当に壁にぶつかりました。

エラーに「アクセス...拒否」と表示されているため、最初は許可の問題である可能性があると考えましたが、特別なことは何も見つかりませんでした。次に、virtualenv の前にアプリケーションを作成したことが原因ではないかと考えましたが、これがどのように問題になるかは実際にはわかりませんでした。

ですから、なぜこれが起こるのか、誰かが手がかりを持っているなら、私は本当に感謝しています.

4

2 に答える 2

6

virtualenv を使用している場合、 Nose-GAE には文書化された問題がいくつかあります。

--without-sandbox鼻の旗を使ってみてください。

于 2010-08-29T15:54:32.033 に答える
2

素晴らしいので、何時間も試した後、この質問をした直後に実際に問題を解決しました。

それを修正したのは、次のスイッチで virtualenv を作成することでした--no-site-packages。どうやら私のシステムの Python に webtest のコピーがあり、何らかの形で virtualenv に問題が発生したようです。virtualenv で pip install webtest を実行しようとしたときに、既に存在していることに気付いたはずです。

一部のアプリが機能し、他のアプリが機能しなかった理由はまだ 100% わかりません。

于 2010-08-26T23:07:47.083 に答える