rstudner が irc で私に連絡し、この問題の解決を手伝ってくれました。grunt server
基本的な考え方は、実行を維持し、config/environments/test.js
このサーバーにヒットするようにテスト API 要求を構成するために使用することです。
うまくいったのは次のとおりです。
構成可能なホストを指すように変更app/adapters/application.js
します。
export default DS.RESTAdapter.extend({
namespace: 'api',
host: window.ENV.host
});
編集config/environments/test.js
して、次のように実行されているアプリのインスタンスをヒットするようにテストを構成しますgrunt server
。
window.ENV.host = 'http://localhost:8000'
その後、CORS の問題が発生します。これらを解決するには、依存関係"cors": "2.2.0",
を追加してpackage.json
から実行しますnpm install
。それで ..
8tasks/express-server.js
行目に次を追加します。
var cors = require('cors');
25行目に次を追加します。
app.use(cors());
更新された作業バージョンはhttps://github.com/tomclose/minimal_eak_test_stub_problemにあります。
rstudner はまたsinon.js
、このアプローチに従うのではなく、実際には 100% の確率でサーバーを偽造するために使用していると述べました (そして、一部のフルスタック テストには Selenium を使用します)。