摘 要:結(jié)合“藥材盈”電子商務(wù)平臺(tái),介紹當(dāng)前電子商務(wù)應(yīng)用領(lǐng)域的基于三層架構(gòu)的分層測(cè)試和系統(tǒng)整體穩(wěn)定性測(cè)試情況,為電子商務(wù)軟件正式發(fā)行后的性能和安全性提供參考。電子商務(wù)改變了人們傳統(tǒng)的交易方式,商家通過互聯(lián)網(wǎng)把商品信息展示在電子商務(wù)平臺(tái)上,以此吸引客戶下單購買;而用戶在個(gè)人終端上進(jìn)行人機(jī)互動(dòng)交流,檢索信息、價(jià)格等進(jìn)行商品比較,最終產(chǎn)生購買意愿,實(shí)現(xiàn)交易。因此,電子商務(wù)平臺(tái)界面設(shè)計(jì)是否得當(dāng)、系統(tǒng)響應(yīng)是否迅速、提示信息是否友好、設(shè)置操作是否簡潔就顯得至關(guān)重要。
關(guān)鍵詞:中藥材;電子商務(wù);軟件;測(cè)試
中圖分類號(hào):F713.361 文獻(xiàn)標(biāo)志碼:A 文章編號(hào):1673-291X(2013)35-0235-03
一、藥材盈軟件結(jié)構(gòu)與測(cè)評(píng)
在電子商務(wù)應(yīng)用系統(tǒng)中,目前普遍采用的是3層結(jié)構(gòu),即UI表示層、業(yè)務(wù)邏輯層和數(shù)據(jù)訪問層。“藥材盈”電商平臺(tái)則使用了當(dāng)下較為流行的MVC架構(gòu),基于這種結(jié)構(gòu),軟件測(cè)試人員就可以采用局部和整體相結(jié)合的方法,對(duì)系統(tǒng)進(jìn)行測(cè)試。先對(duì)系統(tǒng)的每一層軟件技術(shù)的可靠與成熟度進(jìn)行獨(dú)立的測(cè)試,進(jìn)而對(duì)系統(tǒng)整體進(jìn)行測(cè)試,這樣就能更精準(zhǔn)定位和發(fā)現(xiàn)系統(tǒng)缺陷和錯(cuò)誤。
“藥材盈”軟件測(cè)試由3部分組成。首先是開發(fā)部門的內(nèi)部人員自測(cè),通過對(duì)每一階段開發(fā)成果進(jìn)行階段評(píng)估,為下一階段的開發(fā)提供必要數(shù)據(jù)支持,從易用性方面的設(shè)計(jì)提供參考;其次,運(yùn)維和推廣人員測(cè)試,根據(jù)評(píng)測(cè)結(jié)果做出產(chǎn)品上線運(yùn)營提供決策依據(jù);再次,聘請(qǐng)一些典型客戶通過試用方式進(jìn)行評(píng)測(cè),評(píng)測(cè)產(chǎn)品的技術(shù)價(jià)值和易用性。
二、軟件測(cè)試方法
(一)局部測(cè)試
1.UI表示層測(cè)試
表示層測(cè)試就是檢查系統(tǒng)的UI前端是否存在紊亂和分辨率自適應(yīng)問題。主要測(cè)試項(xiàng)目:
(1)內(nèi)容表述測(cè)試。內(nèi)容表述測(cè)試用來檢查整個(gè)系統(tǒng)在每個(gè)相關(guān)呈現(xiàn)頁面上提供的信息的正確性、準(zhǔn)確性及相關(guān)性。圖片與文字是否對(duì)應(yīng),描述與實(shí)際商品是否對(duì)應(yīng);文字描述有無語法錯(cuò)誤或拼寫錯(cuò)誤;在當(dāng)前頁面能否能找到與之相關(guān)的資訊及信息,如系統(tǒng)中的“評(píng)論”、“推薦產(chǎn)品”或“猜你喜歡”等。此外,還要檢查頁面樣式(CSS)、字體、布局、色調(diào)、分辨率及其他關(guān)乎用戶體驗(yàn)的元素。
(2)超級(jí)鏈接測(cè)試。測(cè)試站點(diǎn)的超級(jí)鏈接結(jié)構(gòu)上是否存在錯(cuò)誤,是否存在無效鏈接(404錯(cuò)誤)等。測(cè)試所有鏈接是否正確鏈接到應(yīng)該鏈接的頁面;需要特定條件才可訪問的鍵接,在不滿足條件的情況下是否能正確提示錯(cuò)誤信息,并重定向到指定頁;測(cè)試有沒有雖然真實(shí)存在,但卻無何任鏈接指向孤島頁面。
(3)系統(tǒng)兼容性測(cè)試。目前桌面系統(tǒng)大部分是Windows系列,但也有少部分是IOS、Unix、Linux等及其派生產(chǎn)品?!八幉挠彪娚唐脚_(tái)必須要測(cè)試在所有操作系統(tǒng)下可能發(fā)生的一切兼容性問題。此外,還要測(cè)試“藥材盈”電商平臺(tái)在Trident、Gecko、Presto、Webkit等不同瀏覽器內(nèi)核下的兼容性問題。不同廠商瀏覽器可能使用不同的內(nèi)核,甚至相同瀏覽器也可能支持不同的內(nèi)核,而且每種瀏覽器對(duì)Java、Java腳本、ActiveX控件、plug-ins插件、HTML標(biāo)準(zhǔn)和CSS標(biāo)準(zhǔn)的支持也有不同。不僅要測(cè)試每一種瀏覽器,還要測(cè)試在同一個(gè)瀏覽器的不同版本和不同操作系統(tǒng)情況下的兼容性問題。
2.業(yè)務(wù)邏輯層測(cè)試
重點(diǎn)是評(píng)測(cè)整個(gè)系統(tǒng)在業(yè)務(wù)邏輯處理中是否存在問題。測(cè)試業(yè)務(wù)邏輯層與測(cè)試傳統(tǒng)C/S結(jié)構(gòu)程序類似,可以通過算法樣例,去檢查平臺(tái)是否滿足系統(tǒng)性能和運(yùn)算正確性的需求。
(1)整體性能測(cè)試 主要是服務(wù)器負(fù)載壓力測(cè)試,即常規(guī)負(fù)荷和極限負(fù)荷情況下的系統(tǒng)響應(yīng)時(shí)間和吞吐量。負(fù)載測(cè)試是為了測(cè)量Web系統(tǒng)在各種負(fù)荷級(jí)別上的性能,以保證整個(gè)平臺(tái)在各種復(fù)雜環(huán)境下能正常工作,不發(fā)生拒絕訪問的錯(cuò)誤。負(fù)載級(jí)別的設(shè)計(jì)可以是在某個(gè)時(shí)刻并發(fā)訪問和連續(xù)訪問,也可以是同時(shí)在線不同類型數(shù)據(jù)處理的請(qǐng)求。此外,還要進(jìn)行壓力測(cè)試。壓力測(cè)試是測(cè)試系統(tǒng)的極限和發(fā)生故障后的恢復(fù)能力,也就是測(cè)試系統(tǒng)在什么情況下崩潰,崩潰后在多長時(shí)間能恢復(fù),以何種方式恢復(fù)。
(2)數(shù)據(jù)有效性驗(yàn)證 用戶的數(shù)據(jù)通常是以表單形式進(jìn)行提交和采集的,用戶給系統(tǒng)提交信息一般有注冊(cè)、登錄、選貨、下單、支付、評(píng)論、咨詢等。在這種情況下,用戶提交給服務(wù)器的信息是否正確,是否存在SQL注入、腳本注入的危險(xiǎn),在測(cè)試中都必須進(jìn)行驗(yàn)證。如果表單對(duì)接受字符有類型要求、非NULL要求時(shí),測(cè)試時(shí)還要輸入非指定字符或空字符,驗(yàn)證系統(tǒng)是否會(huì)報(bào)錯(cuò)并轉(zhuǎn)入相應(yīng)錯(cuò)誤頁面。電商平臺(tái)購物車一般都有使用Cookies來實(shí)現(xiàn),Cookies的安全性也是需要重點(diǎn)關(guān)注的部分,要測(cè)試Cookies被非法復(fù)制后系統(tǒng)是否有相應(yīng)的提示。
(3)業(yè)務(wù)邏輯處理測(cè)試 測(cè)試系統(tǒng)業(yè)務(wù)處理過程中的正確性,其中包括銀行在線支付、手機(jī)驗(yàn)證、Email驗(yàn)證以及物流、商家、平臺(tái)的資金分成計(jì)算等。系統(tǒng)后臺(tái)系統(tǒng)必須能及時(shí)準(zhǔn)確的處理所有業(yè)務(wù)。
3.數(shù)據(jù)訪問層測(cè)試
主要是對(duì)用于儲(chǔ)存和獲取系統(tǒng)相關(guān)信息的數(shù)據(jù)庫系統(tǒng)的測(cè)試。在任何一個(gè)Web應(yīng)用系統(tǒng)中,數(shù)據(jù)庫都起著至關(guān)重要的作用,數(shù)據(jù)庫為Web應(yīng)用系統(tǒng)提供數(shù)據(jù)存儲(chǔ)空間,為系統(tǒng)管理、運(yùn)行、查詢等請(qǐng)求提供服務(wù)。對(duì)基于數(shù)據(jù)庫的Web應(yīng)用系統(tǒng)測(cè)試,關(guān)鍵是測(cè)試數(shù)據(jù)庫響應(yīng)時(shí)間、數(shù)據(jù)存儲(chǔ)的關(guān)聯(lián)性和完整性,以及數(shù)據(jù)庫系統(tǒng)的容錯(cuò)及出錯(cuò)后的恢復(fù)能力。
(1)操作響應(yīng)時(shí)間:量化結(jié)構(gòu)語言操作(Select、Insert、Update、Delete)、代理和事務(wù)的完成時(shí)間。電子商務(wù)系統(tǒng)軟件運(yùn)行速度很大程度上取決與網(wǎng)站寬帶和數(shù)據(jù)庫存取效率,運(yùn)行緩慢就會(huì)降低客戶體驗(yàn),甚至造成客戶流失。據(jù)微軟在用戶體驗(yàn)方面的研究,只要確保用戶簡單數(shù)據(jù)操作在3秒內(nèi)響應(yīng)、復(fù)雜操作在5秒內(nèi)完成,就能使用戶有操作流暢的感覺。因此,積極確保網(wǎng)站能夠及時(shí)響應(yīng)用戶的請(qǐng)求和操作,是網(wǎng)站首要關(guān)注的問題。因此,在測(cè)試操作響應(yīng)時(shí)間上,也盡可能的去符合這一標(biāo)準(zhǔn)。
(2)數(shù)據(jù)表關(guān)聯(lián)性。通過分析數(shù)據(jù)表主鍵和外鍵的設(shè)置,評(píng)估數(shù)據(jù)存儲(chǔ)適當(dāng)性和正確性。所謂數(shù)據(jù)關(guān)聯(lián)性測(cè)試,就是在數(shù)據(jù)庫表中發(fā)現(xiàn)不準(zhǔn)確數(shù)據(jù)和表關(guān)聯(lián)關(guān)系丟失的過程。數(shù)據(jù)有效性測(cè)試是發(fā)現(xiàn)數(shù)據(jù)收集中的錯(cuò)誤,而數(shù)據(jù)完整性測(cè)試是發(fā)現(xiàn)數(shù)據(jù)存儲(chǔ)中是否完整,對(duì)應(yīng)關(guān)系是否有效。
(3)數(shù)據(jù)災(zāi)備和恢復(fù)性。數(shù)據(jù)庫災(zāi)備和恢復(fù)性具有重要意義,測(cè)試數(shù)據(jù)庫在完全崩潰場(chǎng)景下的最小恢復(fù)時(shí)間是數(shù)據(jù)訪層測(cè)試的最重要環(huán)節(jié)。這個(gè)測(cè)試的過程,其實(shí)也在對(duì)數(shù)據(jù)庫崩潰處理預(yù)案的檢驗(yàn)過程。在進(jìn)行該項(xiàng)測(cè)試時(shí),如果無法恢復(fù)數(shù)據(jù)庫或在指定恢復(fù)時(shí)間內(nèi)沒有完成,那么就需要修改備份策略和重新設(shè)計(jì)崩潰處理預(yù)案。
(二)整體測(cè)試
Web應(yīng)用界面設(shè)計(jì)就是給用戶的一種簡潔、舒適、有效的整體感,要讓用戶瀏覽Web時(shí)感到舒適愉悅,并保證用戶在第一時(shí)間找到價(jià)值信息。這也是整個(gè)Web應(yīng)用系統(tǒng)設(shè)計(jì)風(fēng)格的首要考慮因素和追求目標(biāo)。對(duì)整體界面的測(cè)試過程,就是一個(gè)對(duì)最終用戶需求調(diào)查的過程。這個(gè)測(cè)試過程我們完全可以結(jié)合網(wǎng)站調(diào)查、電話回訪、有獎(jiǎng)問答等形式進(jìn)行,不僅得到最終用戶的反饋信息,對(duì)平臺(tái)進(jìn)行了測(cè)試,還對(duì)平臺(tái)實(shí)施了一定的推廣營銷。
三、安全性測(cè)試
安全性測(cè)試,主要是對(duì)軟件系統(tǒng)加密/解密過程、敏感信息的傳輸穩(wěn)定性以及災(zāi)備和出錯(cuò)后的自我修復(fù)能力的評(píng)測(cè)。安全性測(cè)試是保證軟件正常運(yùn)行的基礎(chǔ)。
1.“藥材盈”電商平臺(tái),采用的是匿名瀏覽,登陸交易的方式。如果要進(jìn)行交易,必須先注冊(cè)登陸后才能進(jìn)行相關(guān)操作。因此,測(cè)試主要工作為:測(cè)試用戶名(有效和無效的用戶)及密碼的登陸操作:是否大小寫敏感;是否存在SQL注入,腳本注入的危險(xiǎn);測(cè)試在不登錄的情況下是否可以直接瀏覽特定頁面等。
2.“藥材盈”電商平臺(tái)的超時(shí)限制,用戶登錄后在一定時(shí)間內(nèi)不進(jìn)行任何頁面操作,再次操作后是否提示重新進(jìn)行身份確認(rèn)并自我修復(fù)。
3.用戶的所有操作是否有日志記錄,并且可查詢、可追溯。
4.測(cè)試在注冊(cè)、登陸、交易付款等關(guān)鍵節(jié)點(diǎn)是否使用安全套接字,加密/解密過程是否正確,并檢查信息的一致性、完整性。
四、“藥材盈”部分測(cè)試數(shù)據(jù)展示
(一)測(cè)試環(huán)境
2M ADSL(電信) 客戶端配置:CPU:Core I7 4核(2.0MHz) 4G內(nèi)存。
(二)測(cè)試方法
模擬一定數(shù)量的客戶端連續(xù)請(qǐng)求首頁,來對(duì)服務(wù)器進(jìn)行壓力測(cè)試。以10個(gè)請(qǐng)求為一組連接向服務(wù)器發(fā)送1000個(gè)首頁請(qǐng)求,測(cè)試服務(wù)器的響應(yīng)時(shí)間和處理能力。
(三)結(jié)論
10并發(fā)連續(xù)8 000次的訪問以內(nèi),服務(wù)器的響應(yīng)時(shí)間和響應(yīng)速度基本恒定。在相同條件下與京東、淘寶、百度音樂進(jìn)行橫向?qū)Ρ龋l(fā)現(xiàn)它們都對(duì)并發(fā)的連續(xù)訪問均有限制?!八幉挠彪娚唐脚_(tái)從硬件環(huán)境及軟件開發(fā)方面可以滿足交易需求,性能達(dá)到中等水平。
五、總結(jié)
以前,在很多人認(rèn)為軟件測(cè)試就是查問題、找缺陷,其實(shí)測(cè)試的關(guān)鍵在于發(fā)現(xiàn)并找到產(chǎn)生錯(cuò)誤的源頭。軟件測(cè)試伴隨著軟件的開發(fā)全過程,從軟件開發(fā)前期準(zhǔn)備到軟件開發(fā)后期完成,都要進(jìn)行持續(xù)的測(cè)試,在開發(fā)之前要了解測(cè)試需求,建立數(shù)據(jù)模型,并對(duì)模型不斷進(jìn)行測(cè)試,以驗(yàn)證算法的正確性;在開發(fā)完成后還要測(cè)試是否達(dá)到了最初的設(shè)計(jì)指標(biāo)要求。要想提高應(yīng)用程序的質(zhì)量,就必須在軟件整個(gè)生命周期中堅(jiān)持測(cè)試??傊?,加大軟件測(cè)試在軟件生命周期中的地位是保證軟件質(zhì)量的關(guān)鍵。
隨著“藥材盈”電子商務(wù)平臺(tái)的不斷升級(jí)完善,在工作中不斷研究和探索更加適合于電子商務(wù)軟件測(cè)試的新方式、新方法,增加內(nèi)測(cè)人員和內(nèi)測(cè)工作的基礎(chǔ)上,還須引入第三方的測(cè)試機(jī)構(gòu),甚至通過開展面向社會(huì)招募公測(cè)等形式,展開較大范圍、較廣深度的測(cè)試。只有這樣,才能更快、更好地提高整個(gè)軟件產(chǎn)品的質(zhì)量。
參考文獻(xiàn):
[1] GB/T 20945-2007 信息系統(tǒng)安全審計(jì)產(chǎn)品技術(shù)要求和測(cè)試評(píng)價(jià)方法[S].
[2] GB/T 20984-2007 信息安全風(fēng)險(xiǎn)評(píng)估規(guī)范[S].
[3] GB/T 15532-2008 計(jì)算機(jī)軟件測(cè)試規(guī)范[S].
[4] GB/T 15532-1995 計(jì)算機(jī)軟件單元測(cè)試[S].
[5] 古樂,史九林.軟件測(cè)試技術(shù)概論[M].北京:清華大學(xué)出版社,1979.
[6] 朱少民,等.軟件質(zhì)量保證和管理[M].北京:清華大學(xué)出版社,2007.[責(zé)任編輯 仲 琪]