對一些質(zhì)量要求和可靠性要求較高的模塊,一般要滿足所需條件的組合覆蓋或者路徑覆蓋標(biāo)準(zhǔn)。[2]軟件測試方法集成測試集成測試是軟件測試的第二階段,在這個階段,通常要對已經(jīng)嚴(yán)格按照程序設(shè)計(jì)要求和標(biāo)準(zhǔn)組裝起來的模塊同時進(jìn)行測試,明確該程序結(jié)構(gòu)組裝的正確性,發(fā)現(xiàn)和接口有關(guān)的問題,比如模塊接口的數(shù)據(jù)是否會在穿越接口時發(fā)生丟失;各個模塊之間因某種疏忽而產(chǎn)生不利的影響;將模塊各個子功能組合起來后產(chǎn)生的功能要求達(dá)不到預(yù)期的功能要求;一些在誤差范圍內(nèi)且可接受的誤差由于長時間的積累進(jìn)而到達(dá)了不能接受的程度;數(shù)據(jù)庫因單個模塊發(fā)生錯誤造成自身出現(xiàn)錯誤等等。同時因集成測試是界于單元測試和系統(tǒng)測試之間的,所以,集成測試具有承上啟下的作用。因此有關(guān)測試人員必須做好集成測試工作。在這一階段,一般采用的是白盒和黑盒結(jié)合的方法進(jìn)行測試,驗(yàn)證這一階段設(shè)計(jì)的合理性以及需求功能的實(shí)現(xiàn)性。[2]軟件測試方法系統(tǒng)測試一般情況下,系統(tǒng)測試采用黑盒法來進(jìn)行測試的,以此來檢查該系統(tǒng)是否符合軟件需求。本階段的主要測試內(nèi)容包括健壯性測試、性能測試、功能測試、安裝或反安裝測試、用戶界面測試、壓力測試、可靠性及安全性測試等。滲透測試報(bào)告暴露2個高危API接口需緊急加固。軟件產(chǎn)品評測實(shí)驗(yàn)室
為了有效保證這一階段測試的客觀性,必須由**的測試小組來進(jìn)行相關(guān)的系統(tǒng)測試。另外,系統(tǒng)測試過程較為復(fù)雜,由于在系統(tǒng)測試階段不斷變更需求造成功能的刪除或增加,從而使程序不斷出現(xiàn)相應(yīng)的更改,而程序在更改后可能會出現(xiàn)新的問題,或者原本沒有問題的功能由于更改導(dǎo)致出現(xiàn)問題。所以,測試人員必須進(jìn)行回歸測試。[2]軟件測試方法驗(yàn)收測試驗(yàn)收測試是**后一個階段的測試操作,在軟件產(chǎn)品投入正式運(yùn)行前的所要進(jìn)行的測試工作。和系統(tǒng)測試相比而言,驗(yàn)收測試與之的區(qū)別就只是測試人員不同,驗(yàn)收測試則是由用戶來執(zhí)行這一操作的。驗(yàn)收測試的主要目標(biāo)是為向用戶展示所開發(fā)出來的軟件符合預(yù)定的要求和有關(guān)標(biāo)準(zhǔn),并驗(yàn)證軟件實(shí)際工作的有效性和可靠性,確保用戶能用該軟件順利完成既定的任務(wù)和功能。通過了驗(yàn)收測試,該產(chǎn)品就可進(jìn)行發(fā)布。但是,在實(shí)際交付給用戶之后,開發(fā)人員是無法預(yù)測該軟件用戶在實(shí)際運(yùn)用過程中是如何使用該程序的,所以從用戶的角度出發(fā),測試人員還應(yīng)進(jìn)行Alpha測試或Beta測試這兩種情形的測試。Alpha測試是在軟件開發(fā)環(huán)境下由用戶進(jìn)行的測試,或者模擬實(shí)際操作環(huán)境進(jìn)而進(jìn)行的測試。廣東軟件檢測單位第三方實(shí)驗(yàn)室驗(yàn)證數(shù)據(jù)處理速度較上代提升1.8倍。
置環(huán)境操作系統(tǒng)+服務(wù)器+數(shù)據(jù)庫+軟件依賴5執(zhí)行用例6回歸測試及缺陷**7輸出測試報(bào)告8測試結(jié)束軟件架構(gòu)BSbrowser瀏覽器+server服務(wù)器CSclient客戶端+server服務(wù)器1標(biāo)準(zhǔn)上BS是在服務(wù)器和瀏覽器都存在的基礎(chǔ)上開發(fā)2效率BS中負(fù)擔(dān)在服務(wù)器上CS中的客戶端會分擔(dān),CS效率更高3安全BS數(shù)據(jù)依靠http協(xié)議進(jìn)行明文輸出不安全4升級上bs更簡便5開發(fā)成本bs更簡單cs需要客戶端安卓和ios軟件開發(fā)模型瀑布模型1需求分析2功能設(shè)計(jì)3編寫代碼4功能實(shí)現(xiàn)切入點(diǎn)5軟件測試需求變更6完成7上線維護(hù)是一種線性模型的一種,是其他開發(fā)模型的基礎(chǔ)測試的切入點(diǎn)要留下足夠的時間可能導(dǎo)致測試不充分,上線后才暴露***開發(fā)的各個階段比較清晰需求調(diào)查適合需求穩(wěn)定的產(chǎn)品開發(fā)當(dāng)前一階段完成后,您只需要去關(guān)注后續(xù)階段可在迭代模型中應(yīng)用瀑布模型可以節(jié)省大量的時間和金錢缺點(diǎn)1)各個階段的劃分完全固定,階段之間產(chǎn)生大量的文檔,極大地增加了工作量。2)由于開發(fā)模型是線性的,用戶只有等到整個過程的末期才能見到開發(fā)成果,從而增加了開發(fā)風(fēng)險(xiǎn)。3)通過過多的強(qiáng)制完成日期和里程碑來**各個項(xiàng)目階段。4)瀑布模型的突出缺點(diǎn)是不適應(yīng)用戶需求的變化瀑布模型強(qiáng)調(diào)文檔的作用,并要求每個階段都要仔細(xì)驗(yàn)證。
綜合上面的分析可以看出,惡意軟件的格式信息和良性軟件是有很多差異性的,以可執(zhí)行文件的格式信息作為特征,是識別已知和未知惡意軟件的可行方法。對每個樣本進(jìn)行格式結(jié)構(gòu)解析,提取**每個樣本實(shí)施例件的格式結(jié)構(gòu)信息,可執(zhí)行文件的格式規(guī)范都由操作系統(tǒng)廠商給出,按照操作系統(tǒng)廠商給出的格式規(guī)范提取即可。pe文件的格式結(jié)構(gòu)有許多屬性,但大多數(shù)屬性無法區(qū)分惡意軟件和良性軟件,經(jīng)過深入分析pe文件的格式結(jié)構(gòu)屬性,提取了可能區(qū)分惡意軟件和良性軟件的136個格式結(jié)構(gòu)屬性,如表2所示。表2可能區(qū)分惡意軟件和良性軟件的pe格式結(jié)構(gòu)屬性特征描述數(shù)量(個)引用dll的總數(shù)1引用api的總數(shù)1導(dǎo)出表中符號的總數(shù)1重定位節(jié)的項(xiàng)目總數(shù),連續(xù)的幾個字節(jié)可能是完成特定功能的一段代碼,或者是可執(zhí)行文件的結(jié)構(gòu)信息,也可能是某個惡意軟件中特有的字節(jié)碼序列。pe文件可表示為字節(jié)碼序列,惡意軟件可能存在一些共有的字節(jié)碼子序列模式,研究人員直覺上認(rèn)為一些字節(jié)碼子序列在惡意軟件可能以較高頻率出現(xiàn),且這些字節(jié)碼序列和良性軟件字節(jié)碼序列存在明顯差異??蓤?zhí)行文件通常是二進(jìn)制文件,需要把二進(jìn)制文件轉(zhuǎn)換為十六進(jìn)制的文本實(shí)施例件,就得到可執(zhí)行文件的十六進(jìn)制字節(jié)碼序列。創(chuàng)新光譜分析技術(shù)賦能艾策檢測,實(shí)現(xiàn)食品藥品中微量有害物質(zhì)的超痕量檢測。
所述生成軟件樣本的dll和api信息特征視圖,是先統(tǒng)計(jì)所有類別已知的軟件樣本的pe可執(zhí)行文件引用的dll和api信息,從中選取引用頻率**高的多個dll和api信息;然后判斷當(dāng)前的軟件樣本的導(dǎo)入節(jié)里是否存在選擇出的某個引用頻率**高的dll和api信息,如存在,則將當(dāng)前軟件樣本的該dll或api信息以1表示,否則將其以0表示,從而對當(dāng)前軟件樣本的所有dll和api信息進(jìn)行表示形成當(dāng)前軟件樣本的dll和api信息特征視圖。進(jìn)一步的,所述生成軟件樣本的格式信息特征視圖,是從當(dāng)前軟件樣本的pe格式結(jié)構(gòu)信息中選取可能區(qū)分惡意軟件和良性軟件的pe格式結(jié)構(gòu)特征,形成當(dāng)前軟件樣本的格式信息特征視圖。進(jìn)一步的,所述從當(dāng)前軟件樣本的pe格式結(jié)構(gòu)信息中選取可能區(qū)分惡意軟件和良性軟件的pe格式結(jié)構(gòu)特征,是從當(dāng)前軟件樣本的pe格式結(jié)構(gòu)信息中確定存在特定格式異常的pe格式結(jié)構(gòu)特征以及存在明顯的統(tǒng)計(jì)差異的格式結(jié)構(gòu)特征;所述特定格式異常包括:(1)代碼從**后一節(jié)開始執(zhí)行,(2)節(jié)頭部可疑的屬性,(3)pe可選頭部有效尺寸的值不正確,(4)節(jié)之間的“間縫”,(5)可疑的代碼重定向,(6)可疑的代碼節(jié)名稱,(7)可疑的頭部***,(8)來自,(9)導(dǎo)入地址表被修改,(10)多個pe頭部,(11)可疑的重定位信息,。從傳統(tǒng)到智能:艾策科技助力制造業(yè)升級之路。臺州軟件安全檢測報(bào)告
自動化測試發(fā)現(xiàn)7個邊界條件未處理的異常情況。軟件產(chǎn)品評測實(shí)驗(yàn)室
比黑盒適用性廣的優(yōu)勢就凸顯出來了。[5]軟件測試方法手動測試和自動化測試自動化測試,顧名思義就是軟件測試的自動化,即在預(yù)先設(shè)定的條件下運(yùn)行被測程序,并分析運(yùn)行結(jié)果??偟膩碚f,這種測試方法就是將以人驅(qū)動的測試行為轉(zhuǎn)化為機(jī)器執(zhí)行的一種過程。對于手動測試,其在設(shè)計(jì)了測試用例之后,需要測試人員根據(jù)設(shè)計(jì)的測試用例一步一步來執(zhí)行測試得到實(shí)際結(jié)果,并將其與期望結(jié)果進(jìn)行比對。[5]軟件測試方法不同階段測試編輯軟件測試方法單元測試單元測試主要是對該軟件的模塊進(jìn)行測試,通過測試以發(fā)現(xiàn)該模塊的實(shí)際功能出現(xiàn)不符合的情況和編碼錯誤。由于該模塊的規(guī)模不大,功能單一,結(jié)構(gòu)較簡單,且測試人員可通過閱讀源程序清楚知道其邏輯結(jié)構(gòu),首先應(yīng)通過靜態(tài)測試方法,比如靜態(tài)分析、代碼審查等,對該模塊的源程序進(jìn)行分析,按照模塊的程序設(shè)計(jì)的控制流程圖,以滿足軟件覆蓋率要求的邏輯測試要求。另外,也可采用黑盒測試方法提出一組基本的測試用例,再用白盒測試方法進(jìn)行驗(yàn)證。若用黑盒測試方法所產(chǎn)生的測試用例滿足不了軟件的覆蓋要求,可采用白盒法增補(bǔ)出新的測試用例,以滿足所需的覆蓋標(biāo)準(zhǔn)。其所需的覆蓋標(biāo)準(zhǔn)應(yīng)視模塊的實(shí)際具體情況而定。軟件產(chǎn)品評測實(shí)驗(yàn)室