0
カスタムリゾルバを持つgraphqlノードjsアプリケーションを開発しました。誰かが私のサービスの単体テストを正しく記述する方法を示すいくつかの文書を私に指摘できますか?または誰かがそれを前にやっていると私が正しい方向に向けることができればそれは素晴らしいだろう!GraphQLノードのユニットテストJS App
カスタムリゾルバを持つgraphqlノードjsアプリケーションを開発しました。誰かが私のサービスの単体テストを正しく記述する方法を示すいくつかの文書を私に指摘できますか?または誰かがそれを前にやっていると私が正しい方向に向けることができればそれは素晴らしいだろう!GraphQLノードのユニットテストJS App
サービスの各エンドポイントをテストするには、適切なペイロードで指定されたURLに対してPOST
操作を実行する必要があります。ペイロードは、3つの属性
GET
、POST
のような要求を実行することができますsupertest
のようなモジュールを使用することができ、あなたのエンドポイントを試験するために、クエリで、PUT
など
query
と
mutation
あなたのサービスをテストすることができ、このような方法で
import request from 'supertest';
let postData = {
query: `query returnUser($id: Int!){
returnUser(id: $id){
id
username
email
}
}`,
operationName 'returnUser',
variables: {
id: 1
}
};
request(graphQLEndpoint)
.post('?')
.send(postData)
.expect(200) // status code that you expect to be returned
.end(function(error, response){
if (error) console.log(error);
// validate your response
});
は、適切な属性を持つ同等のpostData
オブジェクトとPOST
リクエストを実行することにより、含まれています。これらのテストをまとめてラップするには、アサーションライブラリを使用してMocha
のようなNode.jsで動作するテストフレームワークを使用できます。