2017-08-05 69 views
1

這裏是我的代碼: 在功能add_new_employee我越來越employee_id,然後我想用在我的下一個函數employee_idnew_employee_added 有人可以幫我嗎?謝謝Python中使用的功能輸出的另一個功能

employee_id=() 
def add_new_employee(driver, first_name, last_name): 
    driver.find_element_by_css_selector("#menu_pim_viewPimModule").click() 
    driver.find_element_by_css_selector("[name='btnAdd']").click() 
    driver.find_element_by_css_selector("#firstName").send_keys(first_name) 
    driver.find_element_by_css_selector("#lastName").send_keys(last_name) 
    driver.find_element_by_css_selector("#photofile").\ 
     send_keys(os.path.abspath("cloud-computing-IT.jpg")) 
    global employee_id 
    employee_id = 
    driver.find_element_by_css_selector("#employeeId").get_attribute("value") 
    return employee_id 

def new_employee_added(driver): 
    global employee_id 
    driver.find_element_by_css_selector("#menu_pim_viewPimModule").click() 
    for i in range(1, 50): 
     try: 
      driver.find_element_by_link_text("%s" % employee_id).click() 
      break 
     except NoSuchElementException: 
      driver.find_element_by_link_text("%s" % i).click() 

def test_new_employee(driver, first_name="Patrick", last_name="Patterson"): 
    login(driver, username="Admin", password="Password") 
    # add new user with First Name, Last Name and Photo 
    add_new_employee(driver,first_name, last_name) 
    #verify that new employee added 
    new_employee_added(driver) 
    #ckeck if we got the right employee page 
    logout(driver) 

在功能add_new_employee我越來越employee_id,然後我想使用employee_id在我的下一個功能new_employee_added 有人能幫助我嗎?謝謝

+0

def new_employee_added(driver,employee_id):? –

回答

0

只需保存add_new_employee的輸出在局部變量,然後把它作爲參數傳遞給你的new_employee_added功能。

+0

我該如何在另一個函數中使用局部變量?我試過全球,它的工作 –

+1

@Ihor Harmatii,是的,你是對的,但我的意思是在你的test_new_employee函數中使用它,並保存爲本函數的變量。全局變量也很好,但儘量避免使用它們,因爲它可能會帶來一團糟。你可以添加額外的參數到你的new_employee_added函數,如new_employee_added(driver,employee_id)。 –

1

的參數添加到函數定義,然後通過它,當你調用它:

def new_employee_added(driver, employee_id): 
    ... 

def test_new_employee(driver, first_name="Patrick", last_name="Patterson"): 
    login(driver, username="Admin", password="Password") 
    # add new user with First Name, Last Name and Photo 
    employee_id = add_new_employee(driver,first_name, last_name) 
    #verify that new employee added 
    new_employee_added(driver, employee_id) 
    #ckeck if we got the right employee page 
    logout(driver) 
+0

當我這樣做功能'add_new_employee'運行兩次,我只需要它的輸出 –

+0

@IhorHarmatii不,它不。看到我的編輯,希望更清楚。 –

+0

它被毀了2次,我想知道爲什麼,所以我試過使用全局變量的那個,看看我的代碼,我編輯它 –