在我们公司中,我们正在通过实现graphQL创建一个应用程序。 我想测试和自动化用于CI / CD的API。
我尝试了REST保证,但是由于graphQL查询与Json不同, 如here所述,REST保证的对graphQL查询没有适当的支持。
我们如何使用REST保证的发送graphQL查询?
请提出测试和自动化graphQL API的最佳方法 以及可用于测试和自动化的工具。
答案 0 :(得分:1)
所以我遇到了同样的问题,并且能够以一种非常简单的方式使其工作。
所以我一直在努力尝试与Restassured一起提出这个graphQL请求,以验证响应(分析有关此信息的稀缺程度),从昨天开始,我就能够使它工作,并在这里共享思想可能会帮助别人。
怎么了?仅通过在请求上复制并粘贴我的Graphql请求(不是json格式)无法正常工作。我不断收到错误消息“ JSON中的意外令牌t在该位置”。所以我认为这是因为graphql不是JSON或没有保证的某种验证。就是说,我尝试将请求转换为JSON,导入的库以及许多其他功能,但它们均无效。
我的grahql查询请求:
String reqString = "{ trade { orders { ticker } }}\n";
我如何解决它?通过使用邮递员来格式化我的请求。是的,我只是粘贴在邮递员的QUERY窗口中,然后单击右侧的代码按钮(图1)。这样一来,我就可以在其他格式上查看我的请求,该格式可以放心使用(图2)。 PS:请记住要配置邮递员,我用红色箭头指出。
我的grahql查询请求已格式化:
String reqString = {"query":"{ trade { orders { ticker } }}\r\n","variables":{}}
希望它可以帮助您,保重!
答案 1 :(得分:0)
你可以用apitest测试
public function up()
{
Schema::create('courts', function (Blueprint $table) {
$table->id();
$table->foreignId('event_id')->constrained()->cascadeOnDelete();
$table->string('name')->nullable();
$table->timestamps();
});
}
Apitest 是声明式 api 测试工具,具有类似 JSON 的 DSL。