1

単体テストをキュー構成ファイルに向ける方法がわかりません。

単体テストのスニペット

// TaskQueue setup
LocalTaskQueueTestConfig tqConfig = new LocalTaskQueueTestConfig();
tqConfig.setQueueXmlPath("/war/WEB_INF/queue.xml");

スタックトレース

java.lang.IllegalStateException: 指定されたキューが不明です: com.google.appengine.api.labs.taskqueue.QueueApiHelper.translateError(QueueApiHelper.java:56) で com.google.appengine.api.labs.taskqueue で zip-fetch .QueueApiHelper.translateError(QueueApiHelper.java:111) com.google.appengine.api.labs.taskqueue.QueueApiHelper.makeSyncCall(QueueApiHelper.java:32) com.google.appengine.api.labs.taskqueue.QueueImpl.add で(QueueImpl.java:310) com.google.appengine.api.labs.taskqueue.QueueImpl.add(QueueImpl.java:282) で com.google.appengine.api.labs.taskqueue.QueueImpl.add(QueueImpl.java) :267) で ...

4

3 に答える 3

4
LocalTaskQueueTestConfig tqConfig = new LocalTaskQueueTestConfig();
tqConfig.setQueueXmlPath("war/WEB-INF/queue.xml");

プロジェクトのルートまたは絶対パスに対する相対パスです。
ハイフンの代わりにアンダースコアがありました。

于 2010-05-18T22:57:45.310 に答える
1

javadoc によると、setQueueXmlPath はフル パスである必要があります

public LocalTask​​QueueTestConfig setQueueXmlPath(java.lang.String queueXmlPath) queue.xml の場所をオーバーライドします。/usr/local/dev/myapp/test/queue.xml などのフル パスである必要があります。

https://developers.google.com/appengine/docs/java/tools/localunittesting/javadoc/com/google/appengine/tools/development/testing/LocalTask​​QueueTestConfig#setQueueXmlPath(java.lang.String )

于 2012-03-29T15:18:16.117 に答える
0

これを私の Maven プロジェクト (GAE 1.7.3 を使用) で動作させるには、テスト場所のフル パスを指定する必要がありました。

LocalTaskQueueTestConfig tqConfig = new LocalTaskQueueTestConfig();
tqConfig.setQueueXmlPath("src/test/resources/queue.xml");
于 2012-11-27T04:47:55.320 に答える