从servicestack api生成swagger规范

时间:2017-06-28 08:41:59

标签: servicestack swagger soapui

我使用servicestack作为REST框架。 swagger UI插件非常适合手动测试和调试。

现在我想使用像SoapUI这样的工具进行更多的自动测试,性能测试。

我的问题是,有没有办法从服务堆栈中生成swagger规范?所以我可以将它导入SoapUI。

我不想手动在SoapUI中创建所有请求。

谢谢!

1 个答案:

答案 0 :(得分:3)

Open API v2.0规范

ServiceStack在其OpenAPI v2.0 Specification中实现Open API Feature,您可以使用以下命令从NuGet安装:

PM> Install-Package ServiceStack.Api.OpenApi

然后在AppHost中注册:

Plugins.Add(new OpenApiFeature());

启用后,您可以在/openapi端点访问服务的Open API规范。这是/swagger-ui/用于为您的服务生成动态UI的方法。

使用Open API Spec生成REST客户端

您还可以将Azure's AutoRest client用于generate an AutoRest client from the spec

但我不知道Swagger / OpenAPI规范与SoapUI有什么关系?描述了Soap Web服务,可以使用WSDL生成客户端,而不是Open API规范。

SOAP支持

ServiceStack's SOAP Support还会为您的服务生成WSDL,您可以在Metadata Page上找到该链接。

较旧的Swagger 1.2 Spec

另外,ServiceStack还支持旧的Swagger 1.2规范及其Swagger Feature,你可以从NuGet安装它:

PM> Install-Package ServiceStack.Api.Swagger

然后在AppHost中注册:

Plugins.Add(new SwaggerFeature());