白盒測試及其實(shí)測案例設(shè)計(jì)_第1頁
白盒測試及其實(shí)測案例設(shè)計(jì)_第2頁
白盒測試及其實(shí)測案例設(shè)計(jì)_第3頁
白盒測試及其實(shí)測案例設(shè)計(jì)_第4頁
白盒測試及其實(shí)測案例設(shè)計(jì)_第5頁
已閱讀5頁,還剩31頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

白盒測試及其實(shí)測案例設(shè)計(jì)第4章白盒測試及其實(shí)例設(shè)計(jì)4.1邏輯覆蓋測試

4.2路徑分析測試

4.3其他白盒測試方法

4.4實(shí)例設(shè)計(jì)

小結(jié)

白盒測試及其實(shí)測案例設(shè)計(jì)本章概述白盒測試是軟件測試實(shí)踐中最為有效和實(shí)用的方法之一。白盒測試是基于程序的測試,檢測產(chǎn)品的內(nèi)部結(jié)構(gòu)是否合理以及內(nèi)部操作是否按規(guī)定執(zhí)行,覆蓋測試與路徑測試是其兩大基本策略。本章重點(diǎn)圍繞邏輯覆蓋和路徑分析展開介紹常見的白盒測試方法,并通過實(shí)例說明如何實(shí)際運(yùn)用白盒測試技術(shù)。白盒測試及其實(shí)測案例設(shè)計(jì)4.1邏輯覆蓋測試

白盒測試技術(shù)的常見方法之一就是覆蓋測試,它是利用程序的邏輯結(jié)構(gòu)設(shè)計(jì)相應(yīng)的測試用例。測試人員要深入了解被測程序的邏輯結(jié)構(gòu)特點(diǎn),完全掌握源代碼的流程,才能設(shè)計(jì)出恰當(dāng)?shù)挠美?。根?jù)不同的測試要求,覆蓋測試可以分為語句覆蓋、判斷覆蓋、條件覆蓋、判斷/條件覆蓋、條件組合覆蓋和路徑覆蓋。下面是一段簡單的C語言程序,作為公共程序段來說明五種覆蓋測試的各自特點(diǎn)。程序4-1:1 If(x>100&&y>500)then2 score=score+13 If(x>=1000||z>5000)then4 score=score+5白盒測試及其實(shí)測案例設(shè)計(jì)圖4-1程序流程圖白盒測試及其實(shí)測案例設(shè)計(jì)語句覆蓋語句覆蓋(StatementCoverage)是指設(shè)計(jì)若干個(gè)測試用例,程序運(yùn)行時(shí)每個(gè)可執(zhí)行語句至少被執(zhí)行一次。在保證完成要求的情況下,測試用例的數(shù)目越少越好。以下是針對(duì)公共程序段設(shè)計(jì)的兩個(gè)測試用例:TestCase1:x=2000,y=600,z=6000TestCase2:x=900,y=600,z=6000判斷覆蓋判斷覆蓋(BranchCoverage)是指設(shè)計(jì)若干個(gè)測試用例,執(zhí)行被測試程序時(shí),程序中每個(gè)判斷條件的真值分支和假值分支至少被執(zhí)行一遍。在保證完成要求的情況下,測試用例的數(shù)目越少越好。判斷覆蓋又稱為分支覆蓋。以下是針對(duì)公共程序段設(shè)計(jì)的兩個(gè)測試用例:TestCase1:x=2000,y=600,z=6000TestCase3:x=50,y=600,z=2000白盒測試及其實(shí)測案例設(shè)計(jì)條件覆蓋條件覆蓋(ConditionCoverage)是指設(shè)計(jì)若干個(gè)測試用例,執(zhí)行被測試程序時(shí),程序中每個(gè)判斷條件中的每個(gè)判斷式的真值和假值至少被執(zhí)行一遍。測試用例組5:TestCase6:50,600,6000TestCase7:2000,200,1000白盒測試及其實(shí)測案例設(shè)計(jì)判斷/條件覆蓋判斷/條件覆蓋是指設(shè)計(jì)若干個(gè)測試用例,執(zhí)行被測試程序時(shí),程序中每個(gè)判斷條件的真假值分支至少被執(zhí)行一遍,并且每個(gè)判斷條件的內(nèi)部判斷式的真假值分支也要被執(zhí)行一遍。測試用例組6:TestCase1:x=2000,y=600,z=2000TestCase6:x=2000,y=200,z=6000TestCase7:x=2000,y=600,z=2000TestCase8:x=50,y=200,z=2000白盒測試及其實(shí)測案例設(shè)計(jì)條件組合覆蓋條件組合覆蓋是指設(shè)計(jì)若干個(gè)測試用例,執(zhí)行被測試程序時(shí),程序中每個(gè)判斷條件的的內(nèi)部判斷式的各種真假組合可能都至少被執(zhí)行一遍??梢姡瑵M足條件組合覆蓋的測試用例組一定滿足判斷覆蓋、條件覆蓋和判斷/條件覆蓋。測試用例組7:TestCase1:x=2000,y=600,z=2000TestCase6:x=2000,y=200,z=6000TestCase7:x=2000,y=600,z=2000TestCase8:x=50,y=200,z=2000白盒測試及其實(shí)測案例設(shè)計(jì)路徑覆蓋路徑覆蓋(PathCoverage)要求設(shè)計(jì)若干測試用例,執(zhí)行被測試程序時(shí),能夠覆蓋程序中所有的可能路徑。測試用例組8:TestCase1:x=2000,y=600,z=6000TestCase3:x=50,y=600,z=2000TestCase4:x=2000,y=600,z=2000TestCase7:x=2000,y=200,z=1000白盒測試及其實(shí)測案例設(shè)計(jì)應(yīng)該注意的是,上面6種覆蓋測試方法所引用的公共程序只有短短4行,是一段非常簡單的示例代碼。然而在實(shí)際測試程序中,一個(gè)簡短的程序,其路徑數(shù)目是一個(gè)龐大的數(shù)字。要對(duì)其實(shí)現(xiàn)路徑覆蓋測試是很難的。所以,路徑覆蓋測試是相對(duì)的,盡可能把路徑數(shù)壓縮到一個(gè)可承受范圍。當(dāng)然,即便對(duì)某個(gè)簡短的程序段做到了路徑覆蓋測試,也不能保證源代碼不存在其他軟件問題了。其他的軟件測試手段也必要的,它們之間是相輔相成的。沒有一個(gè)測試方法能夠找盡所有軟件缺陷,只能說是盡可能多地查找軟件缺陷。白盒測試及其實(shí)測案例設(shè)計(jì)4.2路徑分析測試4.2.1控制流圖白盒測試是針對(duì)軟件產(chǎn)品內(nèi)部邏輯結(jié)構(gòu)進(jìn)行測試的,測試人員必須對(duì)測試中的軟件有深入的理解,包括其內(nèi)部結(jié)構(gòu)、各單元部分及之間的內(nèi)在聯(lián)系,還有程序運(yùn)行原理等等。因而這是一項(xiàng)龐大并且復(fù)雜的工作。為了更加突出程序的內(nèi)部結(jié)構(gòu),便于測試人員理解源代碼,可以對(duì)程序流程圖進(jìn)行簡化,生成控制流圖(ControlFlowGraph)。簡化后的控制流圖是由節(jié)點(diǎn)和控制邊組成的。控制流圖有以下幾個(gè)特點(diǎn):具有唯一入口節(jié)點(diǎn),即源節(jié)點(diǎn),表示程序段的開始語句;具有唯一出口節(jié)點(diǎn),即匯節(jié)點(diǎn),表示程序段的結(jié)束語句;節(jié)點(diǎn)由帶有標(biāo)號(hào)的圓圈表示,表示一個(gè)或多個(gè)無分支的源程序語句;控制邊由帶箭頭的直線或弧表示,代表控制流的方向。白盒測試及其實(shí)測案例設(shè)計(jì)圖4-2常見的控制流圖白盒測試及其實(shí)測案例設(shè)計(jì)程序環(huán)路復(fù)雜性

程序的環(huán)路復(fù)雜性是一種描述程序邏輯復(fù)雜度的標(biāo)準(zhǔn),該標(biāo)準(zhǔn)運(yùn)用基本路徑方法,給出了程序基本路徑集中的獨(dú)立路徑條數(shù),這是確保程序中每個(gè)可執(zhí)行語句至少執(zhí)行一次所必需的測試用例數(shù)目的上界。給定一個(gè)控制流圖G,設(shè)其環(huán)形復(fù)雜度為V(G),在這里介紹三種常見的計(jì)算方法來求解V(G)。

(1)V(G)=E-N+2,其中E是控制流圖G中邊的數(shù)量,N是控制流圖中節(jié)點(diǎn)的數(shù)目。

(2)V(G)=P+1,其中P是控制流圖G中判斷節(jié)點(diǎn)的數(shù)目。

(3)V(G)=A,其中A是控制流圖G中區(qū)域的數(shù)目。由邊和結(jié)點(diǎn)圍成的區(qū)域叫做區(qū)域,當(dāng)在控制流圖中計(jì)算區(qū)域的數(shù)目時(shí),控制流圖外的區(qū)域也應(yīng)記為一個(gè)區(qū)域。

白盒測試及其實(shí)測案例設(shè)計(jì)4.2.2獨(dú)立路徑測試

從前面學(xué)過的覆蓋測試一節(jié)中可知,對(duì)于一個(gè)較為復(fù)雜的程序要做到完全的路徑覆蓋測試是不可能實(shí)現(xiàn)的。既然路徑覆蓋測試無法達(dá)到,那么可以對(duì)某個(gè)程序的所有獨(dú)立路徑進(jìn)行測試,也就是說檢驗(yàn)了程序的每一條語句,從而達(dá)到語句覆蓋,這種測試方法就是獨(dú)立路徑測試方法。從控制流圖來看,一條獨(dú)立路徑是至少包含有一條在其它獨(dú)立路徑中從未有過的邊的路徑。路徑可以用控制流圖中的節(jié)點(diǎn)序列來表示。例如,在如圖4-3所示的控制流圖中,一組獨(dú)立的路徑是

path1:1-11

path2:1-2-3-4-5-10-1-11

path3:1-2-3-6-8-9-10-1-11

path4:1-2-3-6-7-9-10-1-11

路徑path1,path2,path3,path4組成了控制流圖的一個(gè)基本路徑集。白盒測試及其實(shí)測案例設(shè)計(jì)圖4-3控制流圖示例白盒測試及其實(shí)測案例設(shè)計(jì)獨(dú)立路徑測試的步驟包括3個(gè)方面:導(dǎo)出程序控制流圖求出程序環(huán)形復(fù)雜度設(shè)計(jì)測試用例(TestCase)白盒測試及其實(shí)測案例設(shè)計(jì)程序4-2:1 main()2 {3 intnum1=0,num2=0,score=100;4 inti;5 charstr;6 scanf(“%d,%c\n”,&i,&str);7 while(i<5)8 {9 if(str=’T’)10 num1++;11 elseif(str=’F’)12 {13 score=score-10;14 num2++;15 }16 i++;17 }18 printf(“num1=%d,num2=%d,score=%d\n”,num1,num2,score);19 }白盒測試及其實(shí)測案例設(shè)計(jì)1.導(dǎo)出程序控制流圖 根據(jù)源代碼可以導(dǎo)出程序的控制流圖,如圖4-4所示。每個(gè)圓圈代表控制流圖的節(jié)點(diǎn),可以表示一個(gè)或多個(gè)語句。圓圈中的數(shù)字對(duì)應(yīng)程序中某一行的編號(hào)。箭頭代表邊的方向,即控制流方向。圖4-4程序4-2的控制流圖白盒測試及其實(shí)測案例設(shè)計(jì)2.求出程序環(huán)形復(fù)雜度根據(jù)程序環(huán)形復(fù)雜度的計(jì)算公式,求出程序路徑集合中的獨(dú)立路徑數(shù)目。公式1:V(G)=10-8+2,其中10是控制流圖G中邊的數(shù)量,8是控制流圖中節(jié)點(diǎn)的數(shù)目。公式2:V(G)=3+1,其中3是控制流圖G中判斷節(jié)點(diǎn)的數(shù)目。公式3:V(G)=4,其中4是控制流圖G中區(qū)域的數(shù)目。因此,控制流圖G的環(huán)形復(fù)雜度是4。就是說至少需要4條獨(dú)立路徑組成基本路徑集合,并由此得到能夠覆蓋所有程序語句的測試用例。白盒測試及其實(shí)測案例設(shè)計(jì)3.設(shè)計(jì)測試用例根據(jù)上面環(huán)形復(fù)雜度的計(jì)算結(jié)果,源程序的基本路徑集合中有4條獨(dú)立路徑:路徑1:7->18路徑2:7->9->10->16->7->18路徑3:7->9->11->15->16->7->18路徑4:7->9->11->13->14->15->16->7->18根據(jù)上述4條獨(dú)立路徑,設(shè)計(jì)了測試用例組9,如表4-9所示。測試用例組9中的4個(gè)測試用例作為程序輸入數(shù)據(jù),能夠遍歷這4條獨(dú)立路徑。對(duì)于源程序中的循環(huán)體,測試用例組9中的輸入數(shù)據(jù)使其執(zhí)行零次或一次。白盒測試及其實(shí)測案例設(shè)計(jì)表4-9測試用例組9

測試用例輸入期望輸出執(zhí)行路徑istrnum1num2scoreTestCase15‘T’00100路徑1TestCase24‘T’10100路徑2TestCase34‘A’00100路徑3TestCase44‘F’0190路徑4白盒測試及其實(shí)測案例設(shè)計(jì)程序4-3:1 if(aorb)2 then3 procedurex4 else5 procedurey;6 …

…對(duì)應(yīng)的控制流圖如圖4-5所示,程序行1的a,b都是獨(dú)立的判斷節(jié)點(diǎn),還有程序行4也是判斷節(jié)點(diǎn),所以共計(jì)3個(gè)判斷節(jié)點(diǎn)。圖4-5的環(huán)形復(fù)雜度為V(G)=3+1,其中3是圖4-5中判斷節(jié)點(diǎn)的數(shù)目。白盒測試及其實(shí)測案例設(shè)計(jì)圖4-5程序4-3的控制流圖白盒測試及其實(shí)測案例設(shè)計(jì)4.2.3Z路徑覆蓋測試

Z路徑覆蓋是路徑覆蓋面的一種變體。對(duì)于語句較少的簡單程序,路徑覆蓋是具有可行性的。但是對(duì)于源代碼很多的復(fù)雜程序,或者對(duì)于含有較多條件語句和較多循環(huán)體的程序來說,需要測試的路徑數(shù)目會(huì)成倍增長,達(dá)到一個(gè)巨大數(shù)字,以至于無法實(shí)現(xiàn)路徑覆蓋。為了解決這一問題,采用簡化循環(huán)方法的路徑覆蓋就是Z路徑覆蓋。所謂簡化循環(huán)就是減少循環(huán)的次數(shù)。不考慮循環(huán)體的形式和復(fù)雜度如何,也不考慮循環(huán)體實(shí)際上需要執(zhí)行多少次,只考慮通過循環(huán)體零次和一次這兩種情況。這里的零次循環(huán)是指跳過循環(huán)體,從循環(huán)體的入口直接到循環(huán)體的出口。通過一次循環(huán)體是指檢查循環(huán)初始值。如圖4-6(a)和圖4-6(b)所示表示了兩種最典型的循環(huán)控制結(jié)構(gòu)。圖4-6(a)是先比較循環(huán)條件后執(zhí)行循環(huán)體,循環(huán)體B可能執(zhí)行也可能不被執(zhí)行。限定循環(huán)體B執(zhí)行零次和一次,這樣就和圖4-6(c)的條件結(jié)構(gòu)一樣了。圖4-6(b)是先執(zhí)行循環(huán)體后比較循環(huán)條件。假設(shè)循環(huán)體B被執(zhí)行一次,在經(jīng)過條件判斷跳出循環(huán),那么其效果就和圖4-6(c)的條件結(jié)構(gòu)只執(zhí)行右分支的效果一樣了。一旦將循環(huán)結(jié)構(gòu)簡化為選擇結(jié)構(gòu)后,路徑的數(shù)量將大大減少,這樣就可以實(shí)現(xiàn)路徑覆蓋測試了。對(duì)于實(shí)現(xiàn)簡化循環(huán)的程序,可以將程序用路徑樹來表示。當(dāng)?shù)玫侥骋怀绦虻穆窂綐浜?,從其根?jié)點(diǎn)開始,一次遍歷,再回到根節(jié)點(diǎn)時(shí),將所經(jīng)歷的葉節(jié)點(diǎn)名排列起來,就得到一個(gè)路徑。如果已經(jīng)遍歷了所有葉子節(jié)點(diǎn),那就得到了所有的路徑。當(dāng)?shù)玫剿械穆窂胶螅擅總€(gè)路徑的測試用例,就可以實(shí)現(xiàn)Z路徑覆蓋測試。白盒測試及其實(shí)測案例設(shè)計(jì)圖4-6循環(huán)結(jié)構(gòu)和條件結(jié)構(gòu)白盒測試及其實(shí)測案例設(shè)計(jì)4.3其他白盒測試方法

4.3.1循環(huán)測試循環(huán)測試是一種著重循環(huán)結(jié)構(gòu)有效性測試的白盒測試方法。循環(huán)結(jié)構(gòu)測試用例的設(shè)計(jì)有以下4種模式,如圖4-7所示。圖4-7循環(huán)測試的模式白盒測試及其實(shí)測案例設(shè)計(jì)4.3.2變異測試

變異測試是一種故障驅(qū)動(dòng)測試,即針對(duì)某一類特定程序故障進(jìn)行的測試,變異測試也是一種比較成熟的排錯(cuò)性測試方法。它可以通過檢驗(yàn)測試數(shù)據(jù)集的排錯(cuò)能力來判斷軟件測試的充分性。假設(shè)對(duì)程序P進(jìn)行一些微小改動(dòng)而得到程序MP,程序MP就是程序P的一個(gè)變異體。假設(shè)程序P在測試集T上是正確的,設(shè)計(jì)某一變異體集合:M={MP|MP是P的變異體},若變異體集合M中的每一個(gè)元素在T上都存在錯(cuò)誤,則認(rèn)為源程序P的正確度較高,否則若M中的某些元素在T上運(yùn)行正確,則可能存在以下一些情況:M中的這些變異體在功能上與源程序P是等價(jià)的;現(xiàn)有的測試數(shù)據(jù)不足以找出源程序P與其變異體之間的差別;源程序P可能產(chǎn)生故障,而其某些變異體卻是正確的??梢?,測試集T和變異體集合M中的每一個(gè)變異體MP的選擇都是很重要的,它們會(huì)直接影響變異測試的測試效果??傊瑢?duì)程序進(jìn)行變換的方法多種多樣,具體操作要靠測試人員的實(shí)際經(jīng)驗(yàn)。通過變異分析構(gòu)造測試數(shù)據(jù)集的過程是一個(gè)循環(huán)過程,當(dāng)對(duì)源程序及其變異體進(jìn)行測試后,若發(fā)現(xiàn)某些變異體并不理想,就要適當(dāng)增加測試數(shù)據(jù),直到所有變異體達(dá)到理想狀態(tài),即變異體集合中的每一個(gè)變異體在T上都存在錯(cuò)誤。白盒測試及其實(shí)測案例設(shè)計(jì)4.3.3程序插裝

程序插裝是借助于在被測程序中設(shè)置斷點(diǎn)或打印語句來進(jìn)行測試的方法,在執(zhí)行測試的過程中可以了解一些程序的動(dòng)態(tài)信息。這樣在運(yùn)行程序時(shí),既能檢驗(yàn)測試的結(jié)果數(shù)據(jù),又能借助插入語句給出的信息掌握程序的動(dòng)態(tài)運(yùn)行特性,從而把程序執(zhí)行過程中所發(fā)生的重要事件記錄下來。程序插裝設(shè)計(jì)時(shí)主要需要考慮三方面因素:(1)需要探測哪些信息;(2)在程序的什么位置設(shè)立插裝點(diǎn);(3)計(jì)劃設(shè)置多少個(gè)插裝點(diǎn)。插裝技術(shù)在軟件測試中主要有以下幾個(gè)應(yīng)用:覆蓋分析:程序插裝可以估計(jì)程序控制流圖中被覆蓋的程度,確定測試執(zhí)行的充分性,從而設(shè)計(jì)更好的測試用例,提高測試覆蓋率。監(jiān)控在程序的特定位置設(shè)立插裝點(diǎn),插入用于記錄動(dòng)態(tài)特性的語句,用來監(jiān)控程序運(yùn)行時(shí)的某些特性,從而排除軟件故障。查找數(shù)據(jù)流異常程序插裝可以記錄在程序執(zhí)行中某些變量值的變化情況和變化范圍。掌握了數(shù)據(jù)變量的取值狀況,就能準(zhǔn)確地判斷是否發(fā)生數(shù)據(jù)流異常。雖然數(shù)據(jù)流異??梢杂渺o態(tài)分析器來發(fā)現(xiàn),但是使用插裝技術(shù)可以更經(jīng)濟(jì)更簡便,畢竟所有信息的獲取是隨著測試過程附帶得到的。白盒測試及其實(shí)測案例設(shè)計(jì)4.4實(shí)例設(shè)計(jì)

實(shí)例1運(yùn)用邏輯覆蓋的方法測試程序程序4-4:1 If(x>1&&y=1)then2 z=z*23 If(x=3||z>1)then4 y++;運(yùn)用邏輯覆蓋的方法設(shè)計(jì)測試用例組,如表4-10所示。白盒測試及其實(shí)測案例設(shè)計(jì)實(shí)例2運(yùn)用路徑分析的方法測試程序程序4-5:1 main()2 {3 intflag,t1,t2,a=0,b=0;4scanf(“%d,%d,%d\n”,&flag,&t1,&t2);5 while(flag>0)6 {7 a=a+1;8 if(t1=1)9 then10{11 b=b+1;12 flag=0;13 }14 else15 {16 if(t2=1)17 thenb=b-1;18 elsea=a-2;19 flag--;20 }21 }22 printf(“a=%d,b=d%\n”,a,b);23 }白盒測試及其實(shí)測案例設(shè)計(jì)程序的流程圖如圖4-8所示:圖4-8程序4-5的流程圖白盒測試及其實(shí)測案例設(shè)計(jì)2.程序的控制流圖如圖4-9所示,其中R1、R2、R3和R4代表控制流圖的4個(gè)區(qū)域。R4代表的是控制流圖外的區(qū)域,也算作控制流圖的一個(gè)區(qū)域。圖4-9程序4-5的控制流圖白盒測試及其實(shí)測案例設(shè)計(jì)3.運(yùn)用路徑分析的方法設(shè)計(jì)測試用例組。(1)根據(jù)程序環(huán)形復(fù)雜度的計(jì)算公式,求出程序路徑集合中的獨(dú)立路徑數(shù)目。公式1:V(G)=11-9+2,其中10是控制流圖G中邊的數(shù)量,8是控制流圖中節(jié)點(diǎn)的數(shù)目。公式2:V(G)=3+1,其中3是控制流圖G中判斷節(jié)點(diǎn)的數(shù)目。公式3:V(G)=4,其中4是控制流圖G中區(qū)域的數(shù)目。因此,控制流圖G的環(huán)形復(fù)雜度是4。(2)根據(jù)上面環(huán)形復(fù)雜度的計(jì)算結(jié)果,源程序的基本路徑集合中有4條獨(dú)立路徑:路徑1:5->22路徑2:5->7,8->11,12->21->5->22路徑3:5->7,8->16->17->19->21->5->22路徑4:5->7,8->16->18->19->21->5->22(3)設(shè)計(jì)測試用例組11如表4-11所示。根據(jù)上述4條獨(dú)立路徑設(shè)計(jì)出了這組測試用例,其中的4組數(shù)據(jù)能夠遍歷各個(gè)獨(dú)立路徑,也就滿足了路徑分析測試的要求。需要注意的是,對(duì)于源程序中的循環(huán)體,測試用例組11中的輸入數(shù)據(jù)使其執(zhí)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論