【问题标题】:Dredd - API Blueprint Testing Tool. "Undefined" issueDredd - API 蓝图测试工具。 “未定义”问题
【发布时间】:2014-02-19 13:31:00
【问题描述】:

我安装了 dredd - API 蓝图测试工具,并尝试针对实现测试我们的 APIary API。

在蓝图中,我只有一个在 somehost 上正确实现的资源...但测试失败:(

测试命令: dredd apiary.apib http://somehost.de:8443/imp-endpoint

输出: Info: Beginning Dredd testing... undefined

我还尝试了更多选项来获取更多信息什么是未定义的......像 -l verbose 和其他一些选项。但我没有得到更多关于失败的信息:(

有人有这方面的经验吗?谢谢!!! :)

【问题讨论】:

  • 您能否添加更多信息。你的平台(win、linux、mac)、版本dredd、示例apib?
  • platform - win,dredd - v0.2.1,一个测试apib:dropbox.com/s/p9zexrj3g6htzlq/apiary.apib thx 提前很多:)

标签: apiblueprint apiary.io apiary


【解决方案1】:

Answered on Github 但我将在此处复制要点以供参考:

我无法重现您的“未定义”问题,但有一些问题在更正后可以正常工作。

  1. 目前,基本 url 中不能包含路径(请参阅#43)。这已在#45 中解决,但尚未合并。所以你的命令应该是 'dredd apiary.apib http://somehost.de:8443/' 然后 '/imp-endpoint' 应该是网址上的前缀。

  2. 您的 apib 文件中的 URI 模板不正确。而不是/api/V0/Resources/CarSharing/Cars?{lat}&{lng}&{radius},它应该是/imp-endpoint/api/V0/Resources/CarSharing/Cars{?lat,lng,radius}。参考RFC6750

  3. 行尾应该是 Unix 风格,而不是 Windows(\n,而不是 \n\r)。当我第一次运行您提供的 apib 时,我得到了错误:the use of carriage return(s) '\r' in source data isn't currently supported, please contact makers(这实际上是由蓝图解析器强制执行的,请参阅snowcrash

希望对您有所帮助!我在运行测试时得到了 401,因此您需要提供 HTTP 基本身份验证信息(这可以在蓝图的标题部分或使用 dredd 上的-u 标志完成,如-u username:password

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-02-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-09-21
    • 2022-07-12
    相关资源
    最近更新 更多