【问题标题】:Dredd Apiary contract driven test - Is there any way to access private apiary documentation blueprint format from local dredd config?Dredd Apiary 合同驱动测试 - 有没有办法从本地 dredd 配置访问私有养蜂场文档蓝图格式?
【发布时间】:2018-10-24 11:22:35
【问题描述】:

我正在使用 dredd 运行合同驱动的开发测试。

给定一个蓝图 apib 文件,我知道如何配置 dredd 测试以针对本地或远程服务器运行。通常,我的 dredd 配置文件中的相关字段将如下所示

blueprint: myblueprintfile.apib
endpoint: localhost:3000 <or any remote server>

不过,我没有找到一种方法来自动引用托管在 apiary 上的远程蓝图。我想要实现的是类似于

blueprint: <remote apiary apib file>
endpoint: localhost:3000 <or any remote server>

在运行实际的 dredd 测试之前,通过使用 apiary CLI 手动获取蓝图并将其保存到本地文件,我基本上可以达到相同的结果

export APIARY_API_KEY=<key>
apiary fetch --api-name=<name>

有没有办法直接从dredd配置文件中实现这一步?

注意:

  • 我正在使用经过身份验证的养蜂场私人帐户
  • 我不担心上面的 endpoint 字段,我的问题是 blueprint 字段自动指向远程养蜂场源

也许这个问题是重复的,但我查看了以前相关的问题并没有找到任何东西

【问题讨论】:

    标签: apiblueprint apiary.io dredd


    【解决方案1】:

    虽然可以指向远程存储的 .apib 文件,但它不适用于私人文档。此时,您可以:

    • 使用GitHub Sync 在您的机器上获取文档
    • 在使用Apiary CLI 进行测试之前自动获取文档

    【讨论】:

    • 谢谢达莉亚。我已经编写了一个简单的 bash 脚本,它使用 apiary CLI 从远程 apiary 下载 .apib 文件(在我的问题中使用 apiary fetch),然后使用本地文件运行 dredd 。我希望将此作为 dredd 配置的一部分,而不需要编写 bash 脚本以实现自动化的进一步样板,但如果 dredd 不支持私有文档的这种行为,我可以使用此选项。我会等着看其他人是否想为这个问题做出贡献,否则我很想将其标记为答案
    • 据我所知,将这个功能添加到 Dredd 是长期计划。您可以在这里关注问题:github.com/apiaryio/dredd/issues希望对您有所帮助。
    • 您实际上可以投票和跟踪这个现有问题:github.com/apiaryio/dredd/issues/366
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-09
    相关资源
    最近更新 更多