Python+Selenium 自動化實現實例-模塊化調用

public 目錄存一些公共模塊,供用例調用。login.py 內容以下:css

# coding=utf-8
import time


# login

def login(driver):
    driver.find_element_by_class_name("ui-dialog-close").click()  # 關閉彈窗
    driver.find_element_by_xpath("//*[@id='topbar_nav']/li[1]/a[1]").click()  # 點擊登陸按鈕
    driver.find_element_by_id("username").clear()
    driver.find_element_by_id("username").send_keys("18055352262")
    driver.find_element_by_id("password").clear()
    driver.find_element_by_id("password").send_keys("hj123456")
    driver.find_element_by_xpath("//input[@class='btn']").click()  # 點擊確認登陸按鈕


# logout


def logout(driver):
    time.sleep(2)
    driver.find_element_by_link_text(u"退出").click()

接下來login_lizi_public 文件引用login.py 中所定義的函數,代碼以下:web

#coding=utf-8
from  selenium import webdriver
from public import login
import unittest

class LoginTest(unittest.TestCase):
    def setUp(self):
        self.driver = webdriver.Chrome()
        self.base_url = "http://www-test.lizi.com"
        self.driver.implicitly_wait(5)

    def test_lizi(self):
        driver = self.driver
        driver.get(self.base_url)
        #調用登陸函數
        login.login(driver)
        text = driver.find_element_by_css_selector('.name').text
        print text
        self.assertEqual(text,u"被風吹過的夏天",msg="error")
        #調用退出函數
        login.logout(driver)

    def tearDown(self):
        self.driver.quit()

if __name__ == "__main__":
    unittest.main()
相關文章
相關標籤/搜索