我想对我的GraphQL突变进行整合测试。我可以在GraphiQL中很好地运行查询,但是我真的不知道如何使用xunit集成测试的输入将其转换为查询字符串。
以上是我的GraphiQL,可以正常返回数据。我已经按照StarWars git hub项目进行了集成测试。通过传递graphql查询字符串来查询GraphQL可以正常工作,但是由于缺乏知识和文档,我无法将上述GraphiQL突变转换为查询字符串。
以下是我到目前为止的集成测试代码,其中缺少查询变量部分,并且不知道如何将其引入
//Arrange
const string query = @"{
""query"": "" mutation CreateMutation($input: InputType!) {
addNewItem(myInput: $input) {
col1
col2
col3
col4
col5
}
} ""
}";
var content = new StringContent(query, Encoding.UTF8, "application/json");
// Act
var response = await client.PostAsync("/graphql", content);
//Assert
response.EnsureSuccessStatusCode();
答案 0 :(得分:0)
我已经弄清楚了查询字符串的语法,如下所示
const string query = @"{
""query"": "" mutation CreateMutation($input: InputType!) { addNewItem(myInput: $input) { col1 col2 col3 col4 col5 }} "",
""variables"": { input :{ col1: 100, col2: 'starwars' }}
}";