2016-12-08 13 views
0

2つの異なるpythonファイルの間でパラメータを使用しようとしています。このファイルには2つの異なるPythonファイル内のパラメータを使用する

locators.py

from selenium.webdriver.common.by import By 

    class MainPageLocatars(object): 
     ELEMENT = (By.XPATH, "//label[text() = '%s']"%(i)) 

、私は定義されたiを持っている:私はロケータを定義したlocators.pyを、持っています。私はこのコードを実行すると

main.py

import locators 
from locators import * 
from locators import MainPageLocatars 

def __selectCheckbox(self, checkbox, locater): 
     if checkbox == "All": 
      if self.driver.find_element_by_id(locater).is_selected() == False: 
       self.execute_script_click(MainPageLocatars.CHECKBOX) 
     else: 
      if self.driver.find_element_by_id(locater).is_selected() == False: 
       self.execute_script_click(MainPageLocatars.CHECKBOX) 
       self.execute_script_click(MainPageLocatars.CHECKBOX) 
      elif self.driver.find_element_by_id(locater).is_selected() == True: 
       self.execute_script_click(MainPageLocatars.CHECKBOX) 
      for i in checkbox: 
       # only this element is not defined in locators.py 
       self.execute_script_click(*MainPageLocatars.ELEMENT) 

、私はエラーがiが定義されていないと言い得ます。私はロケータをインポートしていますが、なぜ動作していないのかわかりません。

答えて

0

クラス内に値を入れる必要はありません。私は、私がここに持っている問題があることがmain.pyである

from MainPageLocatars import * 

print param1 
+0

:MainPageLocatars.pyあなたmain.py

param1 = "locator1" param2 = "locator2" . . . 

そして

:あなたはこのようなファイルを持つことができますループで変数iを使用しています。それからlocatars.pyで私は "i"を使用していますが、テストを実行するときには定義されていません。 – user7242550

+0

@ user7242550 'locators.py'ファイルの設定を試しましたか? –

+0

はい、私のケースではparam1は単なるテキストではないので動作しません。それは私のmain.py – user7242550

関連する問題