3

誰も知らない統合テスト(リアクション)フロントエンドのDjango RESTバックエンド。私はNightwatch.jsと偽のサーバAPIを使ってフロントエンドの機能テストを書くことができました。私はDjango REST APIを個別にテストすることもできます.Djangoは、テストデータベースでテストサーバーを起動し、最後に破棄することができるLiveServerTestCaseを提供しています。私はフロントエンド(すなわちNightwatchテスト)によって呼び出せるDjangoのテストサーバを何らかの方法で使用/設定することが可能かどうか疑問に思っています。 私はこの問題にどのように取り組むことができるかについて他のアイデアを公開しています。ReactフロントエンドとDjango RESTバックエンドの統合テスト

+0

同じNightwatch.jsフロントエンドテストを使用して、単にテストを実行するようにインスタンシエートされ構成されたdjangoバックエンドと対話できないのはなぜですか? –

+0

あなたは正しいです、明らかな解決策のようです。 – foobar

答えて

2

統合テストの重いクライアントサイドのjavascriptアプリケーションは、常にちょっと難しいです。このシナリオで私が選択するツールは、javascript enabled driverと一緒に、Capybara - ウェブページとやりとりするための素晴らしいRuby DSLを使用することです。私はwebkitdriverとpoltergeistの両方を使いました。両方ともヘッドレスなので、ブラウザを妨害することなくバックグラウンドでテストを実行できます。 (セレンの場合....)いくつかのケースで私は今覚えていない問題があります。

Djangoを使用しているので、testing in Pythonを実行している可能性があります。上記の2つのドライバのいずれかをサポートすることをお勧めします。また、node.jsコミュニティにはこれに便利なものがあります。

+0

@froderikありがとう、私はカピバラについては知らなかった、間違いなく見て:)あなたの問題は、バックエンドのREST APIを呼び出すフロントエンドの統合テストを行っていた、別のサーバー上で実行されます。だから、私はフロントエンド側(すなわち、いくつかのJSフレームワークを使用する)で、またはバックエンド側でDjangoツールを使用して統合テストを行うべきかどうかを検討していました。私は他の人々がこれをどうやって行うのか興味があった。 – foobar

+1

私は、ほとんどの人がJSテストのフロントエンドを統合テストに含める気にしないと言います。彼らは、維持するには時間がかかりすぎると信じています。私の意見では、これはあなたが継続的な安定のために支払わなければならない時です。私はJSのテストを行い、何らかの理由であまりにも不安定であるか難しいと判明したら、私はバックエンドのアプローチに落ちるだろう。考慮すべきもう1つのパラメータは、異なるパーツの単位テストカバレッジの程度です。 – froderik

+0

私はそれを試してみる、洞察力ありがとう! – foobar

関連する問題