前言:本站為你精心整理了測(cè)試顯卡性能的軟件范文,希望能為你的創(chuàng)作提供參考價(jià)值,我們的客服老師可以幫助你提供個(gè)性化的參考范文,歡迎咨詢(xún)。
隨著網(wǎng)絡(luò)發(fā)展軟件Software也越來(lái)越復(fù)雜從獨(dú)立單機(jī)結(jié)構(gòu)到C/S結(jié)構(gòu)、B/S結(jié)構(gòu)、多層體系架構(gòu)面向服務(wù)(SOA)結(jié)構(gòu)等集成軟件Software技術(shù)越來(lái)越多支持軟件Software用戶(hù)也越來(lái)越多種凸顯在人們面前問(wèn)題是性能問(wèn)題很多軟件Software系統(tǒng)在開(kāi)發(fā)測(cè)試時(shí)沒(méi)有任何問(wèn)題但是上線(xiàn)不久就崩潰了原因就在于缺少了性能方面驗(yàn)證
性能測(cè)試“從小做起”
軟件Software是否在上線(xiàn)的前進(jìn)行性能測(cè)試就能解決問(wèn)題呢?不定如果性能測(cè)試進(jìn)行得太晚會(huì)帶來(lái)修改上風(fēng)險(xiǎn)很多軟件Software系統(tǒng)在設(shè)計(jì)時(shí)候并沒(méi)有很好地考慮性能問(wèn)題和優(yōu)化方案等到整個(gè)軟件Software系統(tǒng)開(kāi)發(fā)出來(lái)后測(cè)試人員忙著集成測(cè)試開(kāi)發(fā)人員也疲于應(yīng)付發(fā)現(xiàn)功能上Bug當(dāng)所有功能上問(wèn)題都得到解決后才想到要進(jìn)行性能測(cè)試性能測(cè)試結(jié)果表明系統(tǒng)存在嚴(yán)重問(wèn)題如響應(yīng)時(shí)間遲緩、內(nèi)存占用過(guò)多、不能支持大量數(shù)據(jù)請(qǐng)求在大量用戶(hù)并發(fā)訪問(wèn)情況下會(huì)造成系統(tǒng)崩潰如果此時(shí)再去修改已經(jīng)非常困難了要徹底地解決性能問(wèn)題需要重新調(diào)整系統(tǒng)架構(gòu)設(shè)計(jì)大量代碼需要重構(gòu)這時(shí)員已經(jīng)筋疲力盡不想再進(jìn)行代碼調(diào)整了調(diào)整帶來(lái)是大量編碼工作同時(shí)可能引發(fā)大量功能上不穩(wěn)定性和再次出現(xiàn)大量Bug
這給測(cè)試人員個(gè)啟示性能測(cè)試不應(yīng)該只是種后期測(cè)試活動(dòng)更不應(yīng)該是軟件Software系統(tǒng)上線(xiàn)前才進(jìn)行“演練”而應(yīng)該是貫穿軟件Software生產(chǎn)全過(guò)程如圖所示
對(duì)于性能考慮應(yīng)該在架構(gòu)設(shè)計(jì)時(shí)就開(kāi)始對(duì)于架構(gòu)原型要進(jìn)行充分評(píng)審和驗(yàn)證由于架構(gòu)設(shè)計(jì)是個(gè)軟件Software系統(tǒng)基礎(chǔ)平臺(tái)如果基礎(chǔ)不好也就是根基不牢性能問(wèn)題就會(huì)根深蒂固后患無(wú)窮
性能測(cè)試應(yīng)該在單元測(cè)試階段就開(kāi)始從代碼每行效率到個(gè)思路方法執(zhí)行效率再到個(gè)邏輯實(shí)現(xiàn)算法效率;從代碼效率到存儲(chǔ)過(guò)程效率都應(yīng)該進(jìn)行優(yōu)化單元階段性能測(cè)試可以考慮從以下幾個(gè)方面進(jìn)行:
代碼效率評(píng)估;
應(yīng)用單元性能測(cè)試工具;
數(shù)據(jù)庫(kù)優(yōu)化
應(yīng)該注意每行代碼效率所謂“積少成多水滴石穿”些看似細(xì)小問(wèn)題可以經(jīng)過(guò)多次執(zhí)行累積成個(gè)大問(wèn)題也是個(gè)量變到質(zhì)變過(guò)程例如在用C#編寫(xiě)代碼時(shí)候有些員喜歡在個(gè)循環(huán)體中使用串變量類(lèi)似下面代碼:
voidLoop1
{
digits=.Empty;
for(i=0;i<100;i)
{
//累加串
digitsi.;
}
Console.WriteLine(digits);
}
這樣段代碼其實(shí)是低效率是不可變對(duì)象串連接操作并不改變當(dāng)前串只是創(chuàng)建并返回新串因此速度慢尤其是在多次循環(huán)中應(yīng)該采用StringBuilder對(duì)象來(lái)改善性能例如下面代碼就會(huì)快很多:
voidLoop2
{
//新建個(gè)StringBuilder類(lèi)
Stringbuilderdigits=StringBuilder;
for(i=0;i<100;i)
{
//通過(guò)StringBuilder類(lèi)來(lái)累加串
Digits.Append(i.);
}
Console.WriteLine(digits.);
}
類(lèi)似問(wèn)題有很多它們特點(diǎn)是單個(gè)問(wèn)題都很小但是在個(gè)龐大系統(tǒng)中經(jīng)過(guò)多次問(wèn)題會(huì)逐漸地被放大直到爆發(fā)這些問(wèn)題都可以通過(guò)代碼走查來(lái)發(fā)現(xiàn)
竅門(mén)技巧:如果測(cè)試人員不熟悉代碼如何辦呢?那么可以借助些代碼標(biāo)準(zhǔn)檢查工具例如FxCop、.TEST等來(lái)幫助自動(dòng)查找類(lèi)似問(wèn)題
測(cè)試人員可以使用些代碼效率測(cè)試工具來(lái)幫助找出哪些代碼或思路方法在執(zhí)行時(shí)需要耗費(fèi)比較長(zhǎng)時(shí)間例如AQTime是款可以計(jì)算出每行代碼執(zhí)行時(shí)間工具如圖所示可以看出每個(gè)思路方法甚至每行代碼執(zhí)行時(shí)間是多少這對(duì)開(kāi)發(fā)人員在查找代碼層性能瓶頸時(shí)也會(huì)有很大幫助
測(cè)試報(bào)告 測(cè)試技術(shù)論文 測(cè)試項(xiàng)目總結(jié) 測(cè)試工作思路 測(cè)試技術(shù)創(chuàng)新 紀(jì)律教育問(wèn)題 新時(shí)代教育價(jià)值觀