




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
GIS軟件測(cè)試技術(shù)
第七講軟件測(cè)試概論軟件測(cè)試法則軟件測(cè)試方法軟件測(cè)試范例軟件測(cè)試組織軟件測(cè)試技術(shù)-內(nèi)容提要2概論-軟件質(zhì)量與缺陷軟件產(chǎn)品既必需滿足用戶的功能要求,又必須穩(wěn)定可靠地完成用戶的作業(yè)。軟件質(zhì)量體現(xiàn)在多個(gè)方面,但首先要面對(duì)并必須解決的方面是軟件缺陷。軟件缺陷有可能會(huì)給系統(tǒng)質(zhì)量尤其是可靠性帶來(lái)重大影響。3概論-現(xiàn)狀我們無(wú)法提供無(wú)缺陷的軟件各種研究報(bào)告表明,每寫1000行代碼會(huì)產(chǎn)生30到85個(gè)缺陷大多數(shù)缺陷可通過測(cè)試捕獲在大量的已完成測(cè)試的軟件中,每1000行代碼仍存在0.5—3缺陷4概論-軟件缺陷例1錯(cuò)誤或含糊的規(guī)格說明不適當(dāng)?shù)脑O(shè)計(jì)需求:“阻止魚雷攻擊發(fā)射它的潛艇“(198?)設(shè)計(jì):魚雷發(fā)射后在發(fā)生180度轉(zhuǎn)向時(shí)自毀。5概論-軟件缺陷例2事件1999年;火星氣象衛(wèi)星(MarsClimateOrbiter)到達(dá)火星之后不久就消失;火星極地登陸者(MarsPolarLander)在火星上著陸時(shí)墜毀。原因地面系統(tǒng)軟件和飛行器上軟件分別使用公制和英制兩種單位。教訓(xùn)沒有進(jìn)行充分的測(cè)試;發(fā)現(xiàn)異常時(shí),沒有被恰當(dāng)?shù)慕忉尅?概論-軟件缺陷例3事件
1996年6月4日,Ariane5發(fā)射40秒后爆炸。
原因?qū)⒁粋€(gè)64位浮點(diǎn)值轉(zhuǎn)換為16位有符號(hào)整數(shù)值時(shí),超出了16位整數(shù)的表示范圍,而這個(gè)異常未得到正確解決。教訓(xùn)對(duì)于重用模塊,作了Ariane5和Ariane4具有相同環(huán)境的假設(shè);錯(cuò)誤處理模塊的處理機(jī)制不正確;重用模塊在新的環(huán)境下完全沒有進(jìn)行測(cè)試。7概論-軟件缺陷的屬性失誤(mistake)在軟件開發(fā)過程中軟件開發(fā)人員產(chǎn)生隱錯(cuò)/缺陷(bug/defect)在軟件產(chǎn)品中軟件中存在設(shè)計(jì)者的錯(cuò)誤行為(失誤)→導(dǎo)致軟件中留有錯(cuò)誤的設(shè)計(jì)(缺陷)→導(dǎo)致軟件錯(cuò)誤地執(zhí)行(故障)→導(dǎo)致軟件的錯(cuò)誤行為(失效)。故障(fault)在軟件運(yùn)行中缺陷被激活失效(failure)在運(yùn)行階段用戶經(jīng)歷的8概論-獲得高質(zhì)量軟件軟件工程方法正式技術(shù)評(píng)審度量與控制標(biāo)準(zhǔn)與過程SQA測(cè)試軟件質(zhì)量9概論-缺陷過濾容錯(cuò)(Defecttolerance)編譯失誤避錯(cuò)(Defectavoidance)排錯(cuò)(defectremoval)復(fù)查使用缺陷逃逸測(cè)試10概論-定義國(guó)家標(biāo)準(zhǔn)GB/T11457—1995軟件工程術(shù)語(yǔ):由人工或自動(dòng)方法來(lái)執(zhí)行或評(píng)價(jià)系統(tǒng)或系統(tǒng)部件的過程,以驗(yàn)證它是否滿足規(guī)定的需求;或識(shí)別出期望的結(jié)果和實(shí)際結(jié)果之間有無(wú)差別。IEEE/ANSI:使用為發(fā)現(xiàn)錯(cuò)誤所選擇的輸入和狀態(tài)的組合而執(zhí)行代碼的過程。11概論-目標(biāo)在給定的時(shí)限內(nèi)盡可能多的發(fā)現(xiàn)缺陷和隱患證實(shí)給定的軟件產(chǎn)品滿足其需求規(guī)格說明用最低的成本和投入確認(rèn)軟件測(cè)試的質(zhì)量建立高質(zhì)量的測(cè)試用例,完成有效地測(cè)試,提交有用的問題報(bào)告為軟件開發(fā)過程的改進(jìn)提供數(shù)據(jù)支持12概論-驗(yàn)證與確認(rèn)驗(yàn)證與確認(rèn)是廣泛認(rèn)可的質(zhì)量保證方法和手段軟件測(cè)試是軟件驗(yàn)證與確認(rèn)的重要組成部分驗(yàn)證是指對(duì)某項(xiàng)規(guī)定活動(dòng)進(jìn)行檢查的過程,以確保該活動(dòng)實(shí)現(xiàn)了規(guī)定功能。確認(rèn)是指審查已建立的軟件產(chǎn)品是否符合客戶需要的過程。Boehm:驗(yàn)證(Verification):”Arewebuildingtheproductright?”確認(rèn)(Validation):”Arewebuildingtherightproduct?”13概論-測(cè)試與調(diào)試測(cè)試不是調(diào)試,調(diào)試也不是測(cè)試。主要區(qū)別:測(cè)試是一種檢驗(yàn),調(diào)試是推理過程。測(cè)試從已知條件開始,使用預(yù)先定義的規(guī)程并且有可預(yù)知的結(jié)果;調(diào)試的開始條件可能是不可知的,結(jié)果不可預(yù)見。測(cè)試經(jīng)常由非程序設(shè)計(jì)人員完成,調(diào)試必須由程序設(shè)計(jì)者完成。14概論-神話可以對(duì)程序進(jìn)行徹底的測(cè)試只要測(cè)試人員盡力做好工作,就可以發(fā)現(xiàn)所有程序錯(cuò)誤可以通過嘗試程序所有可能的輸入和狀態(tài)對(duì)程序進(jìn)行測(cè)試好的測(cè)試包必須包含大量的測(cè)試用例好的測(cè)試用例總是復(fù)雜難懂的軟件測(cè)試自動(dòng)化可以替代測(cè)試工程師,很好的完成軟件測(cè)試軟件測(cè)試簡(jiǎn)單又容易,任何人都可以做,不需要培訓(xùn)jmerchant1@
15概論-局限性技術(shù)不可能通過測(cè)試獲得100%的質(zhì)量信心無(wú)法確信可以達(dá)到100%足夠的軟件測(cè)試不存在發(fā)現(xiàn)全部缺陷的單項(xiàng)技術(shù),一種測(cè)試技術(shù)在發(fā)現(xiàn)特定類型的缺陷方面最有效率工程無(wú)法確信規(guī)格說明100%正確無(wú)法確信測(cè)試系統(tǒng)(或環(huán)境)的正確性無(wú)法確信測(cè)試人員完全理解了軟件產(chǎn)品沒有能夠適用于所有軟件的測(cè)試工具沒有足夠的資源徹底完成軟件測(cè)試16概論-正確理解測(cè)試有效的測(cè)試對(duì)于開發(fā)可靠、安全和成功的軟件是必須的。測(cè)試具有有效范圍,它不是其他軟件工程方法的替代品。17概論-測(cè)試投入適量的測(cè)試投入取得最佳的測(cè)試效果風(fēng)險(xiǎn)管理影響測(cè)試投入的因素系統(tǒng)的目的潛在的用戶數(shù)量信息的價(jià)值開發(fā)機(jī)構(gòu)的成熟度18概論-測(cè)試投入(HP)19概論-測(cè)試投入(IBM)一般項(xiàng)目:項(xiàng)目總投入的30%~40%高可靠性和高安全性項(xiàng)目:項(xiàng)目其它投入的3~5倍20概論-回顧軟件質(zhì)量與缺陷的關(guān)系導(dǎo)致軟件致命缺陷的原因往往很簡(jiǎn)單軟件測(cè)試的定義、目標(biāo)和作用有關(guān)軟件測(cè)試的一些神話軟件測(cè)試的局限性應(yīng)正確的理解軟件測(cè)試軟件測(cè)試的投入視具體情況而定21法則-無(wú)止境除了最簡(jiǎn)單的程序,任何程序的完全測(cè)試都是不可能的。測(cè)試可以表明缺陷的存在,但絕不能證明沒有缺陷。測(cè)試只能使好的設(shè)計(jì)變得更好“Youcan’ttestinquality.Ifit’snottherebeforeyoubegintesting,itwon’tbetherewhenyou’refinishedtesting.”22法則-復(fù)雜性高質(zhì)量的測(cè)試要求測(cè)試人員徹底理解系統(tǒng)或產(chǎn)品測(cè)試質(zhì)量需要適當(dāng)?shù)臏y(cè)試集和有效的測(cè)試方法保證缺乏有效的測(cè)試工具日程安排得不當(dāng)23法則-盡早開始開發(fā)過程每前進(jìn)一步,發(fā)現(xiàn)和修復(fù)缺陷的平均代價(jià)要增長(zhǎng)10倍;隨著開發(fā)過程的進(jìn)展,測(cè)試的有效性會(huì)不斷下降;促使開發(fā)人員盡早考慮軟件的可測(cè)試性;缺陷放大模型:來(lái)自以前步驟的錯(cuò)誤通過的錯(cuò)誤放大的錯(cuò)誤1:X新產(chǎn)生的錯(cuò)誤錯(cuò)誤檢測(cè)有效百分比傳給下一個(gè)階段的錯(cuò)誤24法則-需要有效管理應(yīng)建立有效的測(cè)試過程,測(cè)試過程是否與其它軟件過程協(xié)調(diào)一致,對(duì)測(cè)試有效性有重要影響;測(cè)試工作應(yīng)該有計(jì)劃進(jìn)行;對(duì)被測(cè)對(duì)象和測(cè)試本身實(shí)施配置與變更管理,不能為了便于測(cè)試擅自修改程序;分派有經(jīng)驗(yàn)、富有創(chuàng)造性的人員承擔(dān)測(cè)試;采用獨(dú)立測(cè)試保證測(cè)試有效性。25法則-基于風(fēng)險(xiǎn)測(cè)試是一種高風(fēng)險(xiǎn)的活動(dòng),其質(zhì)量依賴于:對(duì)軟件產(chǎn)品及其相關(guān)領(lǐng)域知識(shí)的理解高效率的測(cè)試方法、覆蓋率、工具有創(chuàng)造力并具有豐富軟件測(cè)試經(jīng)驗(yàn)的工程師質(zhì)量費(fèi)用日程測(cè)試需要在時(shí)間、成本和質(zhì)量之間權(quán)衡26法則-可追溯所有的測(cè)試源于用戶需求維持完整的證據(jù)鏈進(jìn)行可重復(fù)的測(cè)試和可再現(xiàn)的測(cè)試避免不可重復(fù)的即興測(cè)試27法則-系統(tǒng)化全面的測(cè)試多種方法多個(gè)層次多類角色針對(duì)性測(cè)試符合性驅(qū)動(dòng)測(cè)試缺陷驅(qū)動(dòng)測(cè)試自動(dòng)的測(cè)試肯定與否定的測(cè)試測(cè)試軟件應(yīng)該做的和不該做的測(cè)試有效和無(wú)效、期望和不期望的輸入28法則-類聚性軟件缺陷具有類聚性;缺陷隱藏在角落里,聚集在邊界上;程序中隱藏缺陷的概率與其已發(fā)現(xiàn)的缺陷數(shù)成比例。29法則-Pareto法則軟件測(cè)試的Pareto法則(8:2):20%的模塊產(chǎn)生80%的缺陷20%的缺陷消耗80%的維護(hù)費(fèi)用圖例:模塊B模塊C缺陷數(shù)模塊A274184%96%100%30法則-回顧測(cè)試是無(wú)止境的測(cè)試是復(fù)雜的測(cè)試應(yīng)盡早開始測(cè)試需要有效管理應(yīng)基于風(fēng)險(xiǎn)開展軟件測(cè)試測(cè)試應(yīng)做到可追溯測(cè)試必須系統(tǒng)化測(cè)試對(duì)象存在類聚性Pareto法則適用于測(cè)試領(lǐng)域31方法-相關(guān)概念方法:測(cè)試用例(testcase):
輸入、執(zhí)行條件以及為一個(gè)特殊目標(biāo)所開發(fā)的預(yù)期結(jié)果的集合。32設(shè)計(jì)-好的測(cè)試用例具有合理的捕獲缺陷的概率執(zhí)行了重要的區(qū)域做了應(yīng)引起注意的事情不做多余的事情既不太簡(jiǎn)單也不太復(fù)雜不與其它測(cè)試用例冗余使得缺陷顯而易見考慮缺陷的隔離和識(shí)別33方法-測(cè)試方法分類靜態(tài)測(cè)試技術(shù)動(dòng)態(tài)測(cè)試技術(shù)白盒測(cè)試(White-BoxTesting)黑盒測(cè)試(Black-BoxTesting)34方法-靜態(tài)測(cè)試的特征靜態(tài)測(cè)試是不動(dòng)態(tài)執(zhí)行程序代碼而尋找程序代碼中可能存在的缺陷或評(píng)估程序代碼的過程??梢杂扇斯みM(jìn)行,充分發(fā)揮人的邏輯思維優(yōu)勢(shì)。可以借助軟件工具自動(dòng)進(jìn)行。35方法-常用靜態(tài)測(cè)試方法代碼復(fù)查代碼檢查(CodeInspection)代碼走查(Walkthrough)桌面檢查(DeskChecking)代碼審查(CodeReview)靜態(tài)分析(主要由軟件工具自動(dòng)進(jìn)行)36方法-代碼復(fù)查的入口準(zhǔn)則需求描述文檔程序設(shè)計(jì)文檔程序的源代碼清單編碼標(biāo)準(zhǔn)代碼復(fù)查檢查表37方法-代碼復(fù)查規(guī)程獲得程序的源代碼清單選擇代碼復(fù)查方法進(jìn)行代碼復(fù)查記錄發(fā)現(xiàn)的缺陷修復(fù)所發(fā)現(xiàn)的每個(gè)缺陷確保所做的修復(fù)正確無(wú)誤將缺陷登錄到缺陷日志38方法-代碼復(fù)查的基本內(nèi)容覆蓋率復(fù)查程序邏輯復(fù)查命名和類型復(fù)查變量檢查程序語(yǔ)法檢查程序檢查39方法-代碼復(fù)查的出口準(zhǔn)則完整的、修復(fù)過的源程序清單完整的時(shí)間記錄日志完整的缺陷記錄日志40方法-代碼復(fù)查的優(yōu)缺點(diǎn)優(yōu)點(diǎn):代碼復(fù)查能快速找到缺陷代碼復(fù)查比動(dòng)態(tài)測(cè)試更有效率(3~5倍)代碼復(fù)查看到的是問題本身而非征兆缺點(diǎn):代碼復(fù)查非常耗費(fèi)時(shí)間(30min/100line)代碼復(fù)查需要知識(shí)和經(jīng)驗(yàn)(30%~80%)代碼復(fù)查應(yīng)在編譯和動(dòng)態(tài)測(cè)試之前進(jìn)行41方法-靜態(tài)分析的內(nèi)容控制流分析數(shù)據(jù)流分析接口分析表達(dá)式分析與軟件缺陷相關(guān)的其它信息過程的調(diào)用層次編碼與命名規(guī)則模塊規(guī)模、調(diào)用/被調(diào)用關(guān)系、扇入/扇出數(shù)所用變量和常量的交叉引用表42方法-動(dòng)態(tài)測(cè)試特征實(shí)際運(yùn)行被測(cè)試程序,取得程序運(yùn)行的真實(shí)情況和動(dòng)態(tài)情況,進(jìn)行分析;測(cè)試的質(zhì)量依賴于使用的測(cè)試數(shù)據(jù);生成測(cè)試數(shù)據(jù)和分析測(cè)試結(jié)果需要時(shí)間與經(jīng)費(fèi)投入;動(dòng)態(tài)測(cè)試涉及人員、設(shè)備和數(shù)據(jù)等多個(gè)方面,要求有較好的管理和工作規(guī)程。43方法-白盒測(cè)試已知產(chǎn)品內(nèi)部工作流程,通過測(cè)試來(lái)檢測(cè)產(chǎn)品的內(nèi)部動(dòng)作是否按照詳細(xì)設(shè)計(jì)規(guī)格說明的規(guī)定正常進(jìn)行,而不管它的功能;也稱為結(jié)構(gòu)測(cè)試或邏輯驅(qū)動(dòng)測(cè)試;目標(biāo)是對(duì)所有邏輯路徑進(jìn)行測(cè)試,窮舉路徑;依據(jù)詳細(xì)設(shè)計(jì)規(guī)范;一種驗(yàn)證技術(shù)。44方法-邏輯路徑的數(shù)量程序的執(zhí)行序列(邏輯路徑)的數(shù)目是龐大的,簡(jiǎn)單的重復(fù)就有可能使執(zhí)行序列的數(shù)目增大到天文數(shù)字。例子:For(inti=0;i<n;++i) {if(a.get(i)==b.get(i)) x[i]=x[i]+100; else x[i]=x[i]/2;}解:可能的執(zhí)行序列/路徑數(shù)是2n+1當(dāng)n=20時(shí),執(zhí)行序列/路徑數(shù)是1,048,57745方法-基本覆蓋基于控制流的測(cè)試語(yǔ)句覆蓋分支覆蓋條件覆蓋條件組合覆蓋基本路徑覆蓋循環(huán)覆蓋數(shù)據(jù)流覆蓋變?cè)采w(mutationcoverage)46方法-控制流圖一個(gè)段是一個(gè)或多個(gè)無(wú)條件連續(xù)執(zhí)行的語(yǔ)句。一個(gè)段在控制流圖中用一個(gè)結(jié)點(diǎn)表示,結(jié)點(diǎn)可以用任何方便的形式命名。一個(gè)控制條件轉(zhuǎn)移是一個(gè)分支,一個(gè)分支段在控制流圖中用一個(gè)輸出邊表示。一個(gè)程序的入口點(diǎn)用入口結(jié)點(diǎn)表示,它是一個(gè)沒有輸入邊的結(jié)點(diǎn),一個(gè)程序的出口點(diǎn)用出口結(jié)點(diǎn)表示,它是一個(gè)沒有輸出邊的結(jié)點(diǎn)。47方法-控制流圖例XYZ48方法-語(yǔ)句覆蓋程序中每條語(yǔ)句至少被執(zhí)行一次行覆蓋、段覆蓋、基本塊覆蓋語(yǔ)句覆蓋的盲點(diǎn)(=>0;循環(huán);條件)語(yǔ)句覆蓋是最起碼的測(cè)試要求49方法-分支覆蓋程序中的每一個(gè)分支至少通過一次決策覆蓋分支覆蓋的盲點(diǎn)短路估值使分支覆蓋不必考慮所有條件忽略了從復(fù)合謂詞引出的隱含路徑分支覆蓋不能保證所有入口-出口路徑都被執(zhí)行50方法-條件覆蓋判定中的每個(gè)條件獲得各種可能的結(jié)果不要求測(cè)試所有可能的分支51方法-條件組合覆蓋每個(gè)判定中條件的各種組合至少出現(xiàn)一次。達(dá)到了條件組合覆蓋,所有的語(yǔ)句、分支和條件都將覆蓋,但不保證路徑覆蓋。在實(shí)際測(cè)試中,由于謂詞表達(dá)式的短路估值和排它性條件使得達(dá)到所有條件組合不可能。52方法-基本路徑覆蓋圈復(fù)雜度C=e-n+2基本路徑覆蓋要求測(cè)試C條不同的入口-出口路徑在某些程序中,分支覆蓋可在少于C條路徑的情況下獲得基本路徑覆蓋可能既沒有獲得語(yǔ)句覆蓋也沒有獲得分支覆蓋。53方法-循環(huán)覆蓋每種循環(huán)結(jié)構(gòu)都有一個(gè)不同的控制流圖簡(jiǎn)單循環(huán)、嵌套循環(huán)、順序循環(huán)、面條循環(huán)從最內(nèi)層循環(huán)開始測(cè)試,直到最外層控制變量值最低完全最小值-1??
最小值??
?
最小值+1?
?
典型值?
最大值-1?
最大值?
?
最大值+1??
54方法-數(shù)據(jù)流覆蓋通過一定的覆蓋準(zhǔn)則檢查程序中每個(gè)數(shù)據(jù)對(duì)象的每次定義、使用和消除。數(shù)據(jù)流模型(DUK)數(shù)據(jù)流覆蓋策略55方法-變?cè)采w測(cè)試覆蓋被測(cè)實(shí)現(xiàn)的指定的變體,如測(cè)試探測(cè)到變?cè)?,則變體“退役”,如測(cè)試探測(cè)不到變?cè)?,則修正測(cè)試包。變?cè)侵笧槌绦蛑踩胄〉淖兓?,一般是常出現(xiàn)的錯(cuò)誤,如將>=改寫成>。用于檢查系統(tǒng)的容錯(cuò)能力和測(cè)試套件的充分性。56方法-覆蓋分析器覆蓋分析器是分析測(cè)試覆蓋率的工具覆蓋分析器工作原理通過對(duì)源代碼的詞法分析,插入可跟蹤代碼,再編譯連接;當(dāng)裝配過可跟蹤代碼的軟件執(zhí)行時(shí),就會(huì)產(chǎn)生一個(gè)跟蹤文件;測(cè)試完成后,利用跟蹤文件生成覆蓋報(bào)告。57方法-覆蓋率的作用不可執(zhí)行的路徑或條件不可能到達(dá)或冗余的代碼不充分的測(cè)試用例集58方法-覆蓋率與缺陷查找覆蓋與發(fā)現(xiàn)缺陷之間沒有必然聯(lián)系獲得任何覆蓋目標(biāo)都不意味著沒有缺陷需求相關(guān)的缺陷丟失的代碼中斷相關(guān)的缺陷兼容性/配置相關(guān)的缺陷59方法-黑盒測(cè)試已知軟件產(chǎn)品應(yīng)該具有的功能,通過測(cè)試來(lái)檢測(cè)每個(gè)功能是否都能正常使用;黑盒法著眼于程序外部結(jié)構(gòu),不考慮內(nèi)部邏輯結(jié)構(gòu);窮舉輸入/狀態(tài)測(cè)試,測(cè)試情況有無(wú)窮多個(gè);依據(jù)需求規(guī)范;檢查程序?qū)崿F(xiàn)的功能,是一種確認(rèn)技術(shù);也稱為功能測(cè)試或數(shù)據(jù)驅(qū)動(dòng)測(cè)試。60方法-輸入/狀態(tài)空間
一些很普通的程序所包含的輸入輸出組合的數(shù)目都是非常驚人的,有些更是天文數(shù)字。
例:讀入三個(gè)數(shù)值,表示三角形的三條邊,程序輸出一條信息,說明該三角形是等邊三角形、等腰三角形、不等邊三角形。解:在限制坐標(biāo)點(diǎn)取值為1~10的整數(shù)的情況下,3條直線有104╳104╳104=1012種可能的輸入,每秒測(cè)試1000條直線,需要1012/103=109s,每年按3.1536╳107s計(jì)算,需要109/(3.1536╳107)=31.7年。注:考慮輸入域之外/實(shí)數(shù)/更大范圍61方法-黑盒測(cè)試的不徹底性不可能測(cè)試所有的輸入有效的輸入無(wú)效的輸入輸入的編輯特性輸入時(shí)間的考慮不可能測(cè)試多個(gè)輸入的所有組合StateSpaceExplosion62方法-黑盒測(cè)試的常用方法邊界值分析(boundaryanalysis)等價(jià)類劃分(equivalenceclasspartitioning)組合邏輯測(cè)試(combinationallogictesting)基于狀態(tài)轉(zhuǎn)換的測(cè)試(state-basedtesting)隨機(jī)測(cè)試(randomtesting)63方法-邊界值測(cè)試任何程序都可以看做是一個(gè)函數(shù),程序的輸入構(gòu)成函數(shù)的定義域,程序的輸出構(gòu)成函數(shù)的值域??苫诙x域或值域進(jìn)行邊界值測(cè)試;邊界值測(cè)試更適合于非強(qiáng)類型語(yǔ)言,如C;邊界區(qū)域是錯(cuò)誤高發(fā)區(qū);邊界值測(cè)試融入了一定程度的否定測(cè)試設(shè)計(jì);邊界值測(cè)試通過邊界值分析獲得測(cè)試用例。64方法-邊界值分析abx1x2cd65方法-邊界值分析基本思想最小值、略高于最小值、正常值、略低于最大值、最大值假設(shè)單缺陷66方法-邊界值分析abx1x2cdn個(gè)變量有4n+1個(gè)測(cè)試用例67方法-健壯性測(cè)試abx1x2cdn個(gè)變量有6n+1個(gè)測(cè)試用例68方法-最壞情況測(cè)試abx1x2cdn個(gè)變量有5n個(gè)測(cè)試用例69方法-健壯最壞情況測(cè)試abx1x2cdn個(gè)變量有7n個(gè)測(cè)試用例70方法-特殊值測(cè)試使用最佳工程判斷,依賴測(cè)試人員的能力;具有高度主觀性,但是非常有效;例子:NextDate()的測(cè)試多種情況:1-28,1-29,1-30,1-31閏年71方法-邊界值分析局限性變量具有獨(dú)立性變量受物理量的約束對(duì)于復(fù)雜軟件完全使用邊界值分析可能不現(xiàn)實(shí)邊界值測(cè)試的用例集存在大量冗余和嚴(yán)重漏洞72方法-等價(jià)類劃分的含義選擇有限子集來(lái)“代表”所有可能的輸入全集;將被測(cè)軟件的輸入和輸出分成區(qū)許多區(qū)域,對(duì)于一個(gè)區(qū)中的任何值,軟件的行為是等價(jià)的;等價(jià)類劃分假設(shè)任何單一區(qū)內(nèi)的所有值具有相同的測(cè)試目的,因此,每個(gè)區(qū)測(cè)試一個(gè)值;等價(jià)類劃分屬于肯定類測(cè)試設(shè)計(jì)技術(shù);等價(jià)類劃分受測(cè)試者主觀因素的影響。73方法-等價(jià)類劃分步驟劃分等價(jià)類考慮有效等價(jià)類和無(wú)效等價(jià)類確定測(cè)試用例給每個(gè)等價(jià)類一個(gè)唯一編號(hào)設(shè)計(jì)一個(gè)新的測(cè)試用例,使其覆蓋未被覆蓋的有效等價(jià)類,直到所有有效等價(jià)類都被覆蓋為止。設(shè)計(jì)一個(gè)新的測(cè)試用例,使其覆蓋未被覆蓋的無(wú)效等價(jià)類,直到所有無(wú)效等價(jià)類都被覆蓋為止。74方法-等價(jià)類劃分舉例例子:計(jì)算一個(gè)實(shí)數(shù)的平方根規(guī)格說明:輸入–實(shí)數(shù)輸出–實(shí)數(shù)當(dāng)輸入為0或更大的數(shù)值時(shí),將返回輸入值的正數(shù)平方根當(dāng)輸入為小于0的數(shù)值時(shí),將顯示錯(cuò)誤信息“Squarerooterror-negativeinput”并返回0函數(shù)Print_Line將用于顯示錯(cuò)誤信息75方法-等價(jià)類劃分例解四個(gè)等價(jià)類劃分:兩個(gè)輸入劃分:{<0},{>=0}輸出劃分:{>=0},{error}兩個(gè)測(cè)試用例:用例1:輸入4,返回2實(shí)現(xiàn)了>=0的輸入劃分實(shí)現(xiàn)了>=0的輸出劃分用例2:輸入-10,返回0,用Print_Line輸出"Squarerooterror-illegalnegativeinput"實(shí)現(xiàn)了<0的輸入劃分實(shí)現(xiàn)了"error“的輸出劃分76方法-可用等價(jià)類分析的變量輸入變量輸出變量?jī)?nèi)部變量硬件與系統(tǒng)軟件配置設(shè)備狀態(tài)77方法-組合邏輯測(cè)試意義方法因果圖判定表邏輯函數(shù)78方法-基于狀態(tài)轉(zhuǎn)換的測(cè)試狀態(tài)轉(zhuǎn)換測(cè)試用于被設(shè)計(jì)成狀態(tài)機(jī)的軟件,或者被測(cè)軟件實(shí)現(xiàn)了模型化成狀態(tài)機(jī)的需求。通過建立導(dǎo)致轉(zhuǎn)換的事件的方法來(lái)設(shè)計(jì)測(cè)試用例,測(cè)試狀態(tài)之間的轉(zhuǎn)換。使用狀態(tài)和事件的非法組合來(lái)設(shè)計(jì)否定類的測(cè)試用例。79方法-隨機(jī)測(cè)試測(cè)試輸入數(shù)據(jù)是在所有可能輸入值中隨機(jī)選取。隨機(jī)選取用隨機(jī)模擬的方法,包括用偽隨機(jī)數(shù)發(fā)生器、硬件隨機(jī)模擬器產(chǎn)生輸入數(shù)據(jù)。在測(cè)試次數(shù)很大時(shí),可在數(shù)據(jù)輸入空間按均勻分布選用。在測(cè)試次數(shù)較少時(shí),最好在常用的輸入數(shù)據(jù)域以及最可能發(fā)生錯(cuò)誤的輸入數(shù)據(jù)域選用。80方法-總結(jié)(1)從原理上講,功能(黑盒)測(cè)試能檢測(cè)出所有錯(cuò)誤,但要花費(fèi)無(wú)限的時(shí)間。結(jié)構(gòu)(白盒)測(cè)試基本上是有限的,但即使是全部執(zhí)行也不能測(cè)試出全部的錯(cuò)誤。某種程度上講,測(cè)試的技巧就是在結(jié)構(gòu)(白盒)測(cè)試與功能(黑盒)測(cè)試之間如何進(jìn)行選擇。-----Beizer81方法-總結(jié)(2)不同測(cè)試用例設(shè)計(jì)方法具有不同的測(cè)試粒度;代碼覆蓋分析可幫助減少黑盒測(cè)試無(wú)法避免的盲點(diǎn);測(cè)試應(yīng)首先考慮被測(cè)程序?qū)崿F(xiàn)需求的測(cè)試,然后進(jìn)行代碼覆蓋分析。82范例-相關(guān)概念范例:提供了某一領(lǐng)域的思考框架。測(cè)試設(shè)計(jì)(testdesign):通過使用一定的測(cè)試方法與策略產(chǎn)生一個(gè)測(cè)試用例包的過程。包括:測(cè)試點(diǎn)的識(shí)別、將測(cè)試點(diǎn)置入測(cè)試序列和為測(cè)試序列中的每個(gè)測(cè)試點(diǎn)定義預(yù)期輸出。測(cè)試包(testsuite):
一組相關(guān)的測(cè)試用例。它服務(wù)于被測(cè)實(shí)現(xiàn)的一個(gè)特殊版本或一個(gè)特定測(cè)試目標(biāo)。83范例-典型范例功能測(cè)試(Functiontesting)域測(cè)試(Domaintesting)基于規(guī)范的測(cè)試(Specification-basedtesting)基于風(fēng)險(xiǎn)的測(cè)試(Risk-basedtesting)壓力測(cè)試(Stresstesting)探索性測(cè)試(Exploratorytesting)想定測(cè)試(Scenariotesting)隨機(jī)測(cè)試(StochasticorRandomtesting)84范例-功能測(cè)試特征基本目標(biāo):詳盡測(cè)試每一個(gè)功能,每次一個(gè)。能力:詳盡分析每個(gè)被測(cè)試項(xiàng)目典型案例:字處理程序,孤立測(cè)試每一個(gè)菜單項(xiàng)數(shù)據(jù)庫(kù),孤立測(cè)試每份報(bào)表盲點(diǎn):遺漏了交互作用85范例-功能測(cè)試方法使用擴(kuò)充式用例技術(shù)進(jìn)行測(cè)試設(shè)計(jì)利用覆蓋CRUD分析完善測(cè)試設(shè)計(jì) CRUD-Create,Read,Update,Delete使用基于操作剖面方法在一個(gè)成熟的測(cè)試包中,破壞性測(cè)試與確認(rèn)性測(cè)試的比例大約為4:186范例-域測(cè)試特征基本目標(biāo):所面對(duì)的問題需要太多的測(cè)試用例。采取分層抽樣的策略,合理的從巨大的總量中選取較少的測(cè)試用例。能力:用相對(duì)小的測(cè)試集高概率的發(fā)現(xiàn)問題直觀清晰的方法,良好的歸納典型案例:簡(jiǎn)單數(shù)值字段的等價(jià)類劃分打印機(jī)兼容性測(cè)試盲點(diǎn):不在邊界值或明顯特別情況的缺陷實(shí)際的域經(jīng)常是未知的87范例-域測(cè)試方法一般方法:將一個(gè)字段的可能值的集化分成若干子集,挑選一些值代表每個(gè)子集。典型的值就是邊界,更為一般的情況,找到每個(gè)子集的“最佳代表”,并用這些有代表性的值運(yùn)行測(cè)試。更進(jìn)一步方法:將幾個(gè)“最佳代表”組合進(jìn)行測(cè)試。一些方法還選擇最優(yōu)化的組合子集。88范例-基于規(guī)范的測(cè)試基本目標(biāo):檢查產(chǎn)品與需求文檔中每條規(guī)范的一致性能力:發(fā)現(xiàn)需求規(guī)范實(shí)現(xiàn)的遺漏和問題典型案例:可追溯矩陣,追蹤測(cè)試用例與每個(gè)規(guī)范項(xiàng)用戶文檔測(cè)試盲點(diǎn):不在規(guī)范中的問題89范例-基于風(fēng)險(xiǎn)的測(cè)試基本目標(biāo):根據(jù)你試圖管理的問題(或風(fēng)險(xiǎn))的類別定義和提練測(cè)試根據(jù)測(cè)試的區(qū)域或問題的相關(guān)風(fēng)險(xiǎn)確定優(yōu)先次序典型案例:等價(jià)類分析基于使用頻度的測(cè)試壓力測(cè)試,錯(cuò)誤處理測(cè)試,安全性測(cè)試,尋找預(yù)期或擔(dān)心的錯(cuò)誤的測(cè)試從預(yù)測(cè)錯(cuò)誤列表中抽樣失效模式和影響分析(FMEA)90范例-基于風(fēng)險(xiǎn)的測(cè)試能力:最佳優(yōu)先次序(假設(shè)能正確識(shí)別風(fēng)險(xiǎn)并確定優(yōu)先權(quán))高能力測(cè)試盲點(diǎn):無(wú)法確定的風(fēng)險(xiǎn),更加象意外的風(fēng)險(xiǎn)一些“風(fēng)險(xiǎn)驅(qū)動(dòng)”測(cè)試人員似乎比較主觀。如何知道覆蓋率水平?如何知道沒有遺漏關(guān)鍵內(nèi)容?91范例-壓力測(cè)試基本目標(biāo):通過極端情況下運(yùn)行產(chǎn)品來(lái)了解軟件的能力和弱點(diǎn),在極端環(huán)境下的失敗告訴我們?cè)谡G闆r下應(yīng)該對(duì)軟件進(jìn)行什么修改。典型案例:緩沖區(qū)溢出缺陷大量數(shù)據(jù),超常事務(wù)鏈低內(nèi)存條件,驅(qū)動(dòng)程序失效,病毒,其它危險(xiǎn)92范例-壓力測(cè)試能力:暴露將會(huì)出現(xiàn)的弱點(diǎn)暴露安全風(fēng)險(xiǎn)盲點(diǎn):通過壓力測(cè)試無(wú)法使其更加可見的弱點(diǎn)93范例-探索性測(cè)試基本目標(biāo):測(cè)試人員得到的軟件沒有文檔或者很遲才會(huì)有文檔,測(cè)試人員必須一邊了解產(chǎn)品,一邊設(shè)計(jì)測(cè)試用例,以便運(yùn)行測(cè)試尋找缺陷。典型案例:對(duì)整個(gè)產(chǎn)品進(jìn)行技巧性探索測(cè)試快速測(cè)試緊急情況測(cè)試第三方構(gòu)件發(fā)現(xiàn)問題/繼續(xù)探究缺陷94范例-探索性測(cè)試能力:關(guān)注客戶,關(guān)注風(fēng)險(xiǎn)發(fā)揮每個(gè)測(cè)試人員的能力優(yōu)勢(shì)快速響應(yīng)環(huán)境的變化好管理,避免重復(fù)的分析和測(cè)試高的缺陷發(fā)現(xiàn)率盲點(diǎn):遺漏的比知道的風(fēng)險(xiǎn)更多受到每個(gè)測(cè)試人員弱點(diǎn)的局限這是技巧性工作,不是很適合新手95范例-想定測(cè)試基本目標(biāo):挑戰(zhàn)反映實(shí)際使用的用例典型案例:用商業(yè)規(guī)則、客戶數(shù)據(jù)、競(jìng)爭(zhēng)者的結(jié)果來(lái)評(píng)價(jià)產(chǎn)品生命歷史測(cè)試使用用例描述產(chǎn)品能力和使用模型,按照使用用例擴(kuò)展測(cè)試用例96范例-想定測(cè)試能力:復(fù)雜,現(xiàn)實(shí)的事件,可以處理復(fù)雜的不易于模型化的情況暴露那些因超時(shí)產(chǎn)生的失效盲點(diǎn):單個(gè)功能失效會(huì)降低這個(gè)方法的效率必須仔細(xì)考慮以便達(dá)到好的覆蓋97范例-想定測(cè)試?yán)硐氲南攵y(cè)試的特征:現(xiàn)實(shí)(來(lái)源于實(shí)際的客戶或競(jìng)爭(zhēng)對(duì)手的情景)測(cè)試是失敗還是通過,很明確復(fù)雜,它使用了多個(gè)特征和功能98范例-隨機(jī)測(cè)試基本目標(biāo):利用計(jì)算機(jī)創(chuàng)建、執(zhí)行、評(píng)價(jià)大量的測(cè)試。單個(gè)測(cè)試達(dá)不到能力,能力有賴于大量的測(cè)試可以在大范圍內(nèi)抽樣,在超常的時(shí)間范圍內(nèi)測(cè)試,提供了發(fā)現(xiàn)長(zhǎng)時(shí)間大量測(cè)試才能發(fā)現(xiàn)的缺陷的機(jī)會(huì)。能力:每次回歸不依賴于舊的測(cè)試部分預(yù)言可以在幼稚的代碼中快速、經(jīng)濟(jì)的發(fā)現(xiàn)缺陷可以發(fā)現(xiàn)長(zhǎng)而復(fù)雜的操作鏈產(chǎn)生的問題,通過有計(jì)劃的測(cè)試發(fā)現(xiàn)這些問題很困難99范例-隨機(jī)測(cè)試典型案例:偽隨機(jī)隨機(jī)測(cè)試統(tǒng)計(jì)可靠性評(píng)估測(cè)試非模型化隨機(jī)測(cè)試模型化隨機(jī)測(cè)試基于其它屬性的隨機(jī)測(cè)試盲點(diǎn):需要辨別通過與失敗的能力,太多的人認(rèn)為“不垮臺(tái)=不失敗”執(zhí)行的預(yù)期結(jié)果需要仔細(xì)管理測(cè)試人員化費(fèi)很多時(shí)間分析代碼,很少時(shí)間用于分析客戶100范例-總結(jié)好測(cè)試用例的特征幾種黑盒測(cè)試模式101組織-系統(tǒng)組成支撐平臺(tái)軟件構(gòu)件模塊系統(tǒng)102組織-模塊與構(gòu)件模塊:軟件系統(tǒng)的基本組成單位由一個(gè)程序員完成在系統(tǒng)詳細(xì)規(guī)范中詳細(xì)說明其功能特性能被單獨(dú)地匯編和測(cè)試規(guī)模較小,邏輯較簡(jiǎn)單構(gòu)件:一個(gè)構(gòu)件包括實(shí)現(xiàn)一個(gè)或多個(gè)產(chǎn)品功能所需的所有數(shù)據(jù)文件、庫(kù)、可重用模塊和工程化組件。一個(gè)構(gòu)件可與其它構(gòu)件進(jìn)行集成。103組織-軟件開發(fā)與測(cè)試過程104組織-V模型圖例:計(jì)劃修改需求可行性研究需求定義項(xiàng)目啟動(dòng)需求規(guī)范化概要設(shè)計(jì)詳細(xì)設(shè)計(jì)編碼需求規(guī)范設(shè)計(jì)規(guī)范模塊規(guī)范代碼單元測(cè)試已測(cè)模塊集成集成軟件集成測(cè)試已測(cè)軟件已確認(rèn)軟件系統(tǒng)測(cè)試項(xiàng)目完成可操作軟件操作項(xiàng)目結(jié)束確認(rèn)測(cè)試需求描述評(píng)審評(píng)審走查讀代碼測(cè)試用例測(cè)試用例測(cè)試用例測(cè)試用例測(cè)試用例測(cè)試用例集成計(jì)劃構(gòu)件資料階段基線產(chǎn)品105組織-測(cè)試為什么要分階段?與軟件開發(fā)過程相適應(yīng)為了說明軟件系統(tǒng)內(nèi)組件/構(gòu)件的互操作性需要進(jìn)行三種基本的測(cè)試單獨(dú)組件/構(gòu)件的測(cè)試測(cè)試組件/構(gòu)件間互操作測(cè)試組件/構(gòu)件結(jié)合成的軟件系統(tǒng)106組織-單元測(cè)試特點(diǎn)單元測(cè)試關(guān)注程序的基本組成部分-模塊單元測(cè)試的依據(jù)-軟件設(shè)計(jì)規(guī)格說明若干個(gè)模塊可以并行測(cè)試由于單元測(cè)試的對(duì)象規(guī)模和復(fù)雜性較低,可利用以白盒為主的多種測(cè)試技術(shù)進(jìn)行比較充分細(xì)致的測(cè)試,發(fā)現(xiàn)錯(cuò)誤后容易隔離和定位被測(cè)模塊測(cè)試用例結(jié)果測(cè)試工程師107組織-單元測(cè)試內(nèi)容被測(cè)模塊模塊接口局部數(shù)據(jù)結(jié)構(gòu)邊界條件獨(dú)立執(zhí)行路徑錯(cuò)誤處理的路徑測(cè)試用例108組織-單元測(cè)試環(huán)境被測(cè)模塊驅(qū)動(dòng)模塊結(jié)果測(cè)試用例模塊接口局部數(shù)據(jù)結(jié)構(gòu)邊界條件獨(dú)立執(zhí)行路徑錯(cuò)誤處理的路徑樁1樁2樁n109組織-單元測(cè)試進(jìn)入條件要求的文檔可提交;符合規(guī)格要求的軟件單元源程序清單,并已無(wú)錯(cuò)誤地通過編譯或匯編;被測(cè)試軟件單元已納入配置管理中;具備了規(guī)定的單元測(cè)試環(huán)境和測(cè)試工具。110組織-單元測(cè)試通過準(zhǔn)則命名符合規(guī)則;控制流程正確;變量存取無(wú)誤差;所有軟件單元達(dá)到質(zhì)量度量指標(biāo);功能與設(shè)計(jì)說明一致;性能達(dá)到軟件設(shè)計(jì)指標(biāo);覆蓋測(cè)試達(dá)到規(guī)定的覆蓋率;對(duì)發(fā)現(xiàn)的問題已進(jìn)行修改并通過回歸測(cè)試。111組織-集成的概念集成可在多個(gè)層次上進(jìn)行兩個(gè)組件集成的例子:Component#1OperationsandFunctionswithI/OinputinterfaceoperationComponent#2OperationsandFunctionswithI/Ooutputinterfaceoperation112組織-集成測(cè)試特征一組相互依賴的組件或模塊放在一起進(jìn)行測(cè)試,以確保其作為一個(gè)整體的質(zhì)量。集成測(cè)試是一個(gè)漸進(jìn)的過程
模塊構(gòu)件軟件配置項(xiàng)子系統(tǒng)軟件系統(tǒng)113組織-集成測(cè)試策略非漸增式集成(大爆炸集成)漸增式集成自頂向下集成深度優(yōu)先方法廣度優(yōu)先方法自底向上集成高頻集成114組織-大爆炸集成測(cè)試含義前提被測(cè)系統(tǒng)在通過系統(tǒng)范圍的測(cè)試后,只有少量構(gòu)件加入或修改。被測(cè)系統(tǒng)較小并具有良好可測(cè)試性,每個(gè)構(gòu)件都經(jīng)過充分測(cè)試。被測(cè)系統(tǒng)的構(gòu)件緊密連接,無(wú)法分別測(cè)試。測(cè)試未考慮構(gòu)件之間的相依性或風(fēng)險(xiǎn)。115組織-自頂向下集成測(cè)試頂上的模塊借助樁進(jìn)行測(cè)試每次替換一個(gè)樁,可選用“深度優(yōu)先”或者“廣度優(yōu)先”方式。每當(dāng)新的模塊集成進(jìn)來(lái),重新運(yùn)行一些測(cè)試子集。ABCDEFG116組織-自頂向下集成測(cè)試步驟首先開發(fā)和測(cè)試在最高控制層的構(gòu)件,下層構(gòu)件用樁實(shí)現(xiàn);繼續(xù)在每一層按寬度或深度優(yōu)先進(jìn)行,用真正的模塊代替樁,并建立下層樁;每一個(gè)模塊集成進(jìn)來(lái)的時(shí)候都要進(jìn)行測(cè)試;用回歸測(cè)試保證沒有引入新錯(cuò)誤;以這種方式繼續(xù)直到所有被測(cè)系統(tǒng)中的樁已經(jīng)實(shí)現(xiàn)和測(cè)試。117組織-自頂向下集成測(cè)試模式ABEHCDFIGJLMK廣度優(yōu)先–ABCDEFGHIJKLM深度優(yōu)先–ABEHCFIDGJLMK118組織-自頂向下集成測(cè)試特性優(yōu)點(diǎn):測(cè)試和集成可以較早開始;減少了驅(qū)動(dòng)器開發(fā)費(fèi)用。缺點(diǎn):需要建立大量的樁;底層的需求變化會(huì)影響上層構(gòu)件。119組織-自底向上集成測(cè)試ABCDEFG以深度優(yōu)先次序每次替換一個(gè)驅(qū)動(dòng)模塊可工作的模塊被聚合在一起,形成build并集成。簇120組織-自底向上集成測(cè)試步驟第一階段對(duì)底層模塊編碼,并使用驅(qū)動(dòng)模塊對(duì)其測(cè)試;底層模塊組合成能夠?qū)崿F(xiàn)軟件特定子功能的簇,寫驅(qū)動(dòng)模塊對(duì)簇進(jìn)行測(cè)試;移走驅(qū)動(dòng)模塊,沿著程序結(jié)構(gòu)的層次向上對(duì)簇進(jìn)行組合,使用驅(qū)動(dòng)模塊對(duì)其測(cè)試;以這種方式繼續(xù)集成直到整個(gè)系統(tǒng)使用真實(shí)的主控制模塊進(jìn)行測(cè)試。121組織-自底向上集成測(cè)試模式ABEHCDFIGJLMKBuild1–HEBBuild2–IFCDBuild3–LMJKG將build1,2和3與A集成。122組織-自底向上集成測(cè)試特性優(yōu)點(diǎn):不需要樁;可并行測(cè)試。缺點(diǎn):需要大量驅(qū)動(dòng)器123組織-高頻集成測(cè)試特征適用于時(shí)間緊復(fù)雜度高的軟件自底向上/自頂向下的集成方式每日構(gòu)建與冒煙測(cè)試(DailyBuildandSmokeTesting)冒煙測(cè)試:冒煙測(cè)試從頭到尾檢測(cè)整個(gè)系統(tǒng)(當(dāng)前狀態(tài)下)。它不一定必須是窮舉的,但是應(yīng)該能夠暴露主要問題。冒煙測(cè)試應(yīng)該是足夠充分的,如果構(gòu)件通過了冒煙測(cè)試,就可以假定該構(gòu)件已經(jīng)足夠穩(wěn)定,可以繼續(xù)進(jìn)行更加徹底的測(cè)試。
-McConnel,S.124組
溫馨提示
- 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 有限責(zé)任公司臨時(shí)資金借款合同書
- 寵物領(lǐng)養(yǎng)協(xié)議書合同
- 如何提升項(xiàng)目成功率的經(jīng)驗(yàn)計(jì)劃
- 2024年瀘州市江陽(yáng)區(qū)招聘社區(qū)專職工作者考試真題
- 優(yōu)化急診接診效率的措施計(jì)劃
- 引導(dǎo)學(xué)生參與藝術(shù)創(chuàng)作的有效方法計(jì)劃
- 膽囊結(jié)石患者遠(yuǎn)程監(jiān)護(hù)計(jì)劃
- 2025年人教版六年級(jí)下冊(cè)數(shù)學(xué)教學(xué)計(jì)劃課程整合方案
- 部編版三年級(jí)語(yǔ)文上冊(cè)課后作業(yè)計(jì)劃
- 二零二五版土地及資產(chǎn)評(píng)估合同
- 專題01《水銀花開的夜晚》 高考語(yǔ)文二輪復(fù)習(xí)
- 外貿(mào)客戶報(bào)價(jià)單中英文格式模板
- 中藥學(xué)中藥性味歸經(jīng)功效歸納
- 專業(yè)技術(shù)人員職務(wù)聘任書
- JJF 1338-2012相控陣超聲探傷儀校準(zhǔn)規(guī)范
- GB/T 13911-1992金屬鍍覆和化學(xué)處理表示方法
- GB/T 13452.2-2008色漆和清漆漆膜厚度的測(cè)定
- 【泉州南音傳承與發(fā)展研究(論文7200字)】
- 《馬克思主義發(fā)展史》第五章 馬克思列寧主義在蘇聯(lián)的發(fā)展及曲折
- 現(xiàn)代漢語(yǔ)詞匯學(xué)精選課件
- 軍考哲學(xué)知識(shí)點(diǎn)
評(píng)論
0/150
提交評(píng)論