2013-10-12 51 views
1

我想在萵苣的不同功能之間分享一些步驟。將它們放在某個模塊中,然後在步驟定義之前導入此模塊根本不起作用。我收到的消息中沒有定義步驟。如何從其他模塊導入生菜步驟?

是否有任何直接的方法來共享生菜中不同功能之間的步驟定義?

+0

真奇怪因爲你嘗試的方式應該工作(它對我有效)。你能否給你的項目結構? – PukeCloud

+0

http://pastebin.com/UTSM1PeP - 這裏是項目目錄樹。 我從common_steps導入模塊到每個功能測試 - 它們是導入的,功能也是如此,但生菜沒有看到它們。由於這是一個商業項目,因此無法提供更多細節。 – Siekacz

回答

0

在app目錄內定義的步驟是否正常工作?我想知道他們是否這樣做,因爲導入一個函數基本上與在同一個文件中定義它相同。

lettuce docs所述,您的所有生菜文件(功能和步驟)必須位於app/features目錄中。我建議你將你的步驟和功能文件移動到應用程序內的「功能」目錄中。我認爲這將解決問題。

0

創建的目錄結構是這樣的:

root: 
    __init__.py 
    features: 
     __init__.py 
     steps.py: # global steps 
     some_features: 
      __init__.py 
      file.feature 
      steps.py # specific steps 

定義root/features/steps.pyroot/features/some_features

全局的步驟做:from root.features.steps import *

含義:對於some_features的步驟some_features/steps.py

相關問題