首先 - 我不确定黄瓜是否支持此功能,但是可以在不同模块中定义功能而不是包含功能文件的功能吗?
鉴于现实生活中的例子: 让我们说我想要一个名为“carcore'”的模块, 然后让我们说我想要一个名为“Volkswagen'”的模块, 和其他一个名为“福特”的人。
我是否有可能将功能定义文件放在' carcore'模块,但在他们自己的模块中保留特定于vokswagen或ford的特征元文件?
我正在使用gradle将这些模块缝合在一起。它或多或少都很简单。虽然引入Cucumber注释时并不容易。 Cucumber无法在其他模块中找到功能定义。我无法找到任何相关和有用的阅读,所以如果有人可以帮助我或指出我正确的方向,我会很高兴。
答案 0 :(得分:1)
Cucumber的设计使您拥有一个适合您的功能的世界,而在这个世界中,您所谈论的每件事都应该具有唯一的名称和单一的定义。它故意选择不具有任何名称间距。这背后的基本原理是,Cucumber是一种描述商业行为而非编程的工具。
您正在使用模块进行编程,您似乎反映的是您的程序是如何实现的,但是在Cucumber场景中没有任何地方;在你想到如何做事之前,应该先写出来。情景应该只是关于企业想要什么,为什么他们想要这个。
你可以用你的模块想法做什么就是把它压缩到你的堆栈,进入步骤定义或更好的模块,定义你的步骤定义可以使用的调用。现在因为你使用编程语言,你有能力以你需要的任何方式进行编程。
最后,福特和大众都是Car的品牌。虽然您可能会使用这些名称作为示例,但在任何级别上都有一个单独品牌的模块。
答案 1 :(得分:0)
与其他任何类一样,它会自动完成。 Cucumber将自动获取任何已定义依赖项的功能定义文件。
我的IDE没有找到功能定义文件和功能本身之间的关系,所以让我感到困惑。