中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁 > news >正文

廣西中國建設(shè)銀行網(wǎng)站首頁百度網(wǎng)站收錄提交

廣西中國建設(shè)銀行網(wǎng)站首頁,百度網(wǎng)站收錄提交,WordPress導(dǎo)航菜單不顯示,官方網(wǎng)站新聞推送如何做滾動(dòng)圖片unittest框架 1)測試固件 1)setUp()是用來初始化測試環(huán)境所做的工作 2)tearDown()是用來清理環(huán)境所做的工作 2)測試套件 把不同的測試腳本,不同類中的測試用例給組織起來放到一個(gè)測試套中執(zhí)行 3)測試用例的要以test_開頭 4)如何使用unittest框架 只需要在腳本中定義…

unittest框架

1)測試固件

1)setUp()是用來初始化測試環(huán)境所做的工作

2)tearDown()是用來清理環(huán)境所做的工作

2)測試套件

把不同的測試腳本,不同類中的測試用例給組織起來放到一個(gè)測試套中執(zhí)行

3)測試用例的要以test_開頭

4)如何使用unittest框架

只需要在腳本中定義一個(gè)類,繼承于unittest.TestCase即可

verbosity是一個(gè)選項(xiàng),表示測試結(jié)果的信息復(fù)雜度,有0、1、2 三個(gè)值
0 (靜默模式): 你只能獲得總的測試用例數(shù)和總的結(jié)果 比如 總共10個(gè) 失敗2 成功8
1 (默認(rèn)模式): 非常類似靜默模式 只是在每個(gè)成功的用例前面有個(gè)“.” 每個(gè)失敗的用例前面有個(gè) “F”
2 (詳細(xì)模式):測試結(jié)果會(huì)顯示每個(gè)測試用例的所有相關(guān)的信息

創(chuàng)建兩個(gè)類進(jìn)行測試:

from selenium import webdriver
import unittest
import time
import os
class Baidu1(unittest.TestCase):
# 測試固件def setUp(self):print("-----setUp----")self.driver=webdriver.Edge("C://Users//18947//AppData//Local//Programs//Python//Python310//msedgedriver.exe")self.url="http://www.baidu.com/"self.driver.maximize_window()time.sleep(3)def tearDown(self):print("------tearDown----")self.driver.quit()#     測試用例 忽略測試用例的執(zhí)行#     @unittest.skip("skipping")def test_hao(self):driver=self.driverurl=self.urldriver.get(url)driver.find_element_by_link_text("hao123").click()time.sleep(3);def test_hbaidu(self):driver=self.driverurl=self.urldriver.get(url)driver.find_element_by_id("kw").send_keys("突如其來的假期")time.sleep(3)driver.find_element_by_id("su").submit()print(driver.title)self.savescreenAsPhoto(driver,".jpg")time.sleep(5)def savescreenAsPhoto(self,driver,file_name):if not os.path.exists("./image"):os.makedirs("./image")now=time.strftime("%Y%m%d-%H%M%S",time.localtime(time.time()))driver.get_screenshot_as_file("./image/"+now+"-"+file_name)time.sleep(3)if __name__ == "__main":unittest.main()
# coding = utf8
from selenium import webdriver
import unittest
import time
# 導(dǎo)入By模塊
from selenium.webdriver.common.by import By
from selenium.common.exceptions import NoAlertPresentException
from selenium.common.exceptions import NoSuchElementException
class TestBaiduTwo(unittest.TestCase):def setUp(self):#獲得瀏覽器的驅(qū)動(dòng)self.driver=webdriver.Chrome()#讓瀏覽器窗口最大化self.driver.implicitly_wait(3)self.base_url="http://www.baidu.com/"self.driver.maximize_window()self.array=[]self.flag = Truedef tearDown(self):self.driver.quit()self.assertEqual([],self.array)def test_hao(self):driver=self.driverdriver.get(self.base_url)driver.find_element_by_link_text("新聞").click()time.sleep(3)def test_baidusearch(self):driver=self.driverdriver.get(self.base_url)driver.find_element_by_id("kw").clear()driver.find_element_by_id("kw").send_keys("慶余年")driver.find_element_by_id("su").click()#選擇通過什么方式來進(jìn)行獲取元素,value是什么屬性self.is_element_present(By.ID, "su").click()time.sleep(3)def is_element_present(self,how,what):try:element=self.driver.find_element(by=how,value=what)except NoSuchElementException as e:return elementreturn elementdef is_alert_present(self):try:self.driver.switch_to.alert()except NoAlertPresentException as e:return Falsereturn Truedef close_alert_and_get_its_text(self):try:#獲取到alert彈出框alert=self.driver.switch_to_alert()#獲取到alert彈出框中的文字alert_text=alert.textif self.flag:alert.accept()else:alert.dismiss()return alert_textfinally:self.flag = Trueif __name__ == "__main__":unittest.main(verbosity=2)

1)以test_開頭命名的方法,是測試方法,在運(yùn)行整個(gè)類的時(shí)候會(huì)默認(rèn)執(zhí)行。
2)unittest提供了全局的main()方法,使用它可以方便地將一個(gè)單元測試模塊變成可以直接運(yùn)行的測試腳本main()方法搜索所有包含在該模塊中以”test"命名的測試方法,并自動(dòng)執(zhí)行他們

unittest里面有四個(gè)很重要的概念,test fixture,test case,test suite,test runner
Test Fixture
1)對一個(gè)測試用例環(huán)境的搭建和銷毀,就是一個(gè)fixture,通過覆蓋setUp()和tearDown()方法來實(shí)現(xiàn),setUp()方法可以進(jìn)行測試環(huán)境的搭建,比如獲取待測試瀏覽器的驅(qū)動(dòng),或者如果測試中需要訪問數(shù)據(jù)庫,那么可以在setUp()中通過建立數(shù)據(jù)庫連接來進(jìn)行初始化
2)tearDown()方法進(jìn)行環(huán)境的銷毀,可以進(jìn)行關(guān)閉瀏覽器,關(guān)閉數(shù)據(jù)庫連接,清除數(shù)據(jù)庫中產(chǎn)生的數(shù)據(jù)等操作;

Test Case
一個(gè)TestCase的實(shí)例就是一個(gè)測試用例,測試用例就是一個(gè)完整的測試流程,包括測試前準(zhǔn)備環(huán)境的搭建(setUp)實(shí)現(xiàn)測試過程的代碼,以及測試后環(huán)境的還原(tearDown)單元測試(unit test)的本質(zhì)就在這里一個(gè)測試用例,就是一個(gè)完整的測試單元,可以對某一個(gè)功能進(jìn)行驗(yàn)證

TestSuite

一個(gè)功能的驗(yàn)證往往需要多個(gè)測試用例,可以把多個(gè)測試用例集合在一起執(zhí)行,這個(gè)就產(chǎn)生了測試套件TestSuite的概念,Test Suit用來將多個(gè)測試用例組裝在一起;

test Runner

test Runner測試的執(zhí)行也是非常重要的一個(gè)概念,在unittest框架中,通過TextTestRunner類提供的run()方法來執(zhí)行test suite/test case

?

addTest()

1)TestSuite類的addTest()方法可以把不同的測試類中的測試方法組裝到測試套件中,但是addTest()一次
2)只能把一個(gè)類里面的一個(gè)測試方法組裝到測試套件中?

但是上述做法有兩個(gè)不方便的地方,阻礙腳本的快速執(zhí)行,必須每次修改testsuite.py:
1)需要導(dǎo)入所有的相關(guān)的py文件,比如 import testbaidu1,每新增一個(gè)腳本就需要導(dǎo)入一個(gè)
2)addTest一次只能增加一個(gè)測試方法,如果一個(gè)py文件中有10個(gè)測試方式,如果都要組裝到測試套件中,就需要增加10次

import unittestimport TestBaiduOne
import TestBaiduTwodef createsuite():suite = unittest.TestSuite()suite.addTest(TestBaiduOne.Baidu1("test_hao"))suite.addTest(TestBaiduTwo.Baidu2("test_baidusearch"))suite.addTest(TestBaiduTwo.Baidu2("test_hao"))return suite
if __name__=="__main__":suite= createsuite()runner=unittest.TextTestRunner(verbosity=2)runner.run(suite)

跑測試套件用例步驟:

1)先進(jìn)行生成測試套件

2)得到跑測試套件的runner

3)用runner去跑測試套件

?

把一個(gè)類中的所有測試用例都添加到一個(gè)測試套件里面

1)使用unittest.makeSuite()

def createsuite():suit=unittest.TestSuitesuit.addTest(unittest.makeSuite(TestBaiduOne.Baidu1))suit.addTest(unittest.makeSuite(TestBaiduTwo.Baidu2))return suite
if __name__=="__main__":suite= createsuite()runner=unittest.TextTestRunner(verbosity=2)runner.run(suite)

?

http://www.risenshineclean.com/news/36438.html

相關(guān)文章:

  • 做網(wǎng)站指導(dǎo)seo流量工具
  • 菲律賓 做菠菜網(wǎng)站視頻外鏈在線生成
  • jquery 素材的網(wǎng)站seo基本概念
  • 長沙專門做網(wǎng)站建設(shè)的公司2024年1月新冠高峰期
  • 企業(yè)網(wǎng)站建立流程百度站長平臺鏈接
  • 2345電視劇網(wǎng)站免費(fèi)鄭州seo服務(wù)公司
  • sae wordpress 圖片北京網(wǎng)站優(yōu)化站優(yōu)化
  • 學(xué)做蛋糕網(wǎng)站如何讓自己網(wǎng)站排名提高
  • 針對網(wǎng)站做搜索引擎做優(yōu)化網(wǎng)盤資源共享網(wǎng)站
  • 微交易網(wǎng)站建設(shè)實(shí)時(shí)積分榜
  • 溫州龍灣做網(wǎng)站2022年最好用的搜索引擎
  • wordpress搜索產(chǎn)品偽靜態(tài)博客seo優(yōu)化技術(shù)
  • 政府門戶網(wǎng)站建設(shè)的意義電腦培訓(xùn)學(xué)校
  • 無錫知名網(wǎng)站制作百度網(wǎng)站打不開
  • 網(wǎng)站設(shè)計(jì)過程中需要注意的問題網(wǎng)站網(wǎng)頁的優(yōu)化方法
  • 網(wǎng)站開發(fā)的作用建站之星
  • 做論壇網(wǎng)站需要什么備案網(wǎng)站友鏈交換平臺
  • 做網(wǎng)站網(wǎng)絡(luò)營銷策略有哪幾種
  • 福永網(wǎng)站設(shè)計(jì)多少錢seo入門免費(fèi)教程
  • 北京自助模板建站黑馬程序員培訓(xùn)機(jī)構(gòu)在哪
  • 學(xué)生做的網(wǎng)站成品網(wǎng)絡(luò)客服
  • 西安微網(wǎng)站制作網(wǎng)上廣告宣傳怎么做
  • 畢業(yè)設(shè)計(jì)網(wǎng)站成品百度接單平臺
  • 做B2C獨(dú)立網(wǎng)站的話需要做海外倉嗎人際網(wǎng)絡(luò)營銷2900
  • 高端電子網(wǎng)站建設(shè)谷歌官方seo入門指南
  • 子目錄 獨(dú)立的網(wǎng)站網(wǎng)上怎么發(fā)布廣告
  • 網(wǎng)站源碼破解版網(wǎng)站關(guān)鍵詞優(yōu)化排名外包
  • 金融投資公司網(wǎng)站模板網(wǎng)站工具查詢
  • 江蘇省城鄉(xiāng)建設(shè)官網(wǎng)站免費(fèi)私人網(wǎng)站建設(shè)
  • wordpress文章全部刪除優(yōu)化seo深圳