我想在萵苣的不同功能之間分享一些步驟。將它們放在某個模塊中,然後在步驟定義之前導入此模塊根本不起作用。我收到的消息中沒有定義步驟。如何從其他模塊導入生菜步驟?
是否有任何直接的方法來共享生菜中不同功能之間的步驟定義?
我想在萵苣的不同功能之間分享一些步驟。將它們放在某個模塊中,然後在步驟定義之前導入此模塊根本不起作用。我收到的消息中沒有定義步驟。如何從其他模塊導入生菜步驟?
是否有任何直接的方法來共享生菜中不同功能之間的步驟定義?
在app目錄內定義的步驟是否正常工作?我想知道他們是否這樣做,因爲導入一個函數基本上與在同一個文件中定義它相同。
如lettuce docs所述,您的所有生菜文件(功能和步驟)必須位於app/features目錄中。我建議你將你的步驟和功能文件移動到應用程序內的「功能」目錄中。我認爲這將解決問題。
創建的目錄結構是這樣的:
root:
__init__.py
features:
__init__.py
steps.py: # global steps
some_features:
__init__.py
file.feature
steps.py # specific steps
定義root/features/steps.py
和root/features/some_features
全局的步驟做:from root.features.steps import *
含義:對於some_features的步驟some_features/steps.py
真奇怪因爲你嘗試的方式應該工作(它對我有效)。你能否給你的項目結構? – PukeCloud
http://pastebin.com/UTSM1PeP - 這裏是項目目錄樹。 我從common_steps導入模塊到每個功能測試 - 它們是導入的,功能也是如此,但生菜沒有看到它們。由於這是一個商業項目,因此無法提供更多細節。 – Siekacz