UI自動化框架搭建(二):unittest模塊實現多個ui腳本自動化運行


unittest模塊實現多個ui腳本函數自動化運行(參考代碼示例)

第一步:導入unittest類

 

第二步:定義一個類繼承unittest.TestCase類,顧名思義這個TestCase類是測試用例類的意思

setUp和teardown都是TestCase中定義的方法

setUp用來做測試執行前的初始化工作:下面示例用來獲取瀏覽器驅動

teardown用來做測試執行后的清理工作:下面示例用來退出瀏覽器

 

第三步:編寫測試方法:示例2個方法(登錄百度操作搜索,登錄qq點擊新聞連接),注意只有方法名前面以test開頭才會執行,而且運行順序是按字符串大小所以定義了01,02做一個順序排列

 

第四步:加上if __name__ ==  "__main__":unittest.main()     作用:只有當前類本身運行的時候,才會執行這個類的test_01_search_baidu,test_02_search_qq_news測試方法,其他類不會運行

# -*- coding:utf-8 -*-
import unittest
from selenium import webdriver
import time

#QingQing類的名字任意命名,但命名()里的unittest.TestCase就是去繼承這個類,類的作用就是可以使runner.run識別
class QingQing(unittest.TestCase):
    #unittest.TestCase類定義的setUpClass和tearDownClass方法前一定要加@classmethod,
    #setUpClass在這個類里面是第一個執行的方法
    #tearDownClass在這個類里面是最后一個執行的方法
    #中間的執行順序是通過字符的大小進行順序執行,命名必須test_開頭

    #打開瀏覽器,獲取配置
    @classmethod
    def setUpClass(self):
        # 實例化ChromeOptions
        options = webdriver.ChromeOptions()
        # 關閉瀏覽器提示信息
        options.add_argument('disable-infobars')
        # 瀏覽器全屏
        options.add_argument('start-fullscreen')
        driverpath = r'D:\angel\angelauto\littlebee1\driver\chromedriver.exe'
        #driver驅動獲取后可以被其他方法調用
        self.driver = webdriver.Chrome(driverpath, options=options)

    def test_01_search_baidu(self):
        # 訪問百度首頁
        self.driver.get(r"http://www.baidu.com")
        # 百度輸入框輸入
        self.driver.find_element_by_id("kw").send_keys("懶勺")
        # 點百度一下
        self.driver.find_element_by_id("su").click()
        #等待時間只是為了讓你可以看到目前效果,可以省略
        time.sleep(2)


    #執行商品收費功能
    def test_02_search_qq_news(self):
        # 訪問qq首頁
        self.driver.get(r"http://www.qq.com")
        # 點新聞鏈接
        self.driver.find_element_by_xpath("//a[text()='新聞']").click()
        # 等待時間只是為了讓你可以看到目前效果,可以省略
        time.sleep(3)

    #退出瀏覽器
    @classmethod
    def tearDownClass(self):
        self.driver.quit()

if __name__ ==  "__main__":
    unittest.main()

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM