Cucumber:是否可以从远程位置读取 .feature 文件?

Cucumber: is it possible to read .feature files from a remote location?

我知道指定特征文件的本地路径(例如 Java 中的 @CucumberOptions(features = "<feature_path>")),但是是否可以从远程位置读取特征文件,即从 Github ?

动机:我有几个 API 不同语言的客户端库,它们需要遵守同一组核心规范。我使用 Cucumber 功能文件作为规范的语言不可知基础,然后为每个库编写步骤定义。为每个项目复制功能文件似乎很愚蠢,但到目前为止我还无法找到如何从远程位置读取它们。

例如,设置 @CucumberOptions(features = "https://github.com/<repo_path>/features") 会产生以下错误:

Tests in error:
  initializationError(com.<package_name>.feature.RunCukesTest): 
    Not a file or directory: /<local_path>/https://github.com/<repo_path>/features

请注意,我以 Java 为例,但我很想听听 Java/PHP/Ruby/Javascript 中任何一个的答案。

Cucumber 很新,所以如果这是一个钝问题,请原谅我。

据我所知,您不能指定远程位置来读取功能文件。我想象远程位置是您通过网络而不是文件系统找到的东西。

您可以指定功能文件的路径,从而在许多情况下使用相同的功能文件。但这要求您始终将代码保持在彼此相对的位置。一种方法是使用所谓的单声道回购。这是您所有实现的一个存储库。 Mono repos 被一些成功的团队使用。 Cucumber 团队正朝这个方向努力,以便更轻松地保持常见事物的同步。所有 Gherkin 实现,独立于实现语言,都存在于一个单一的 repo 中。

为什么不使用 Linux FuseFS 来完成这样的任务? curlftpfs,例如