日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
對初學(xué)LoadRunner朋友們的一些建議

摘要:隨著Internet的普及與迅速發(fā)展,企業(yè)業(yè)務(wù)量的迅速加大,數(shù)據(jù)大集中成為一種趨勢,IT系統(tǒng)承載的負(fù)荷越來越重,系統(tǒng)性能的好壞嚴(yán)重的影響了企業(yè)對外提供的服務(wù)質(zhì)量.從而對IT系統(tǒng)的性能進(jìn)行測試和調(diào)優(yōu)引起企業(yè)的重視,進(jìn)而性能測試工程師成為IT市場的”香悖悖”,并且性能測試有著極高的技術(shù)挑戰(zhàn)。于是吸引了大量的測試愛好者來學(xué)這方面的技術(shù),而一談到性能測試很多人便會想到鼎鼎大名的LoadRunner這款優(yōu)秀的性能測試工具,然而到這里問題就產(chǎn)生了。

創(chuàng)新互聯(lián)科技有限公司專業(yè)互聯(lián)網(wǎng)基礎(chǔ)服務(wù)商,為您提供BGP機(jī)房服務(wù)器托管,高防物理服務(wù)器租用,成都IDC機(jī)房托管,成都主機(jī)托管等互聯(lián)網(wǎng)服務(wù)。

    LoadRunner與性能測試的關(guān)系:LoadRunner初學(xué)者的誤區(qū):把LoadRunner神化了.很多初學(xué)LoadRunner的朋友認(rèn)為掌握了使用LoadRunner這款性能測試工具,就能夠做性能測試了.常在網(wǎng)上看到好多人在學(xué)習(xí)怎么去使用這款優(yōu)秀的性能測試工具,本來學(xué)習(xí)怎么去使用LoadRunner這個工具沒有錯,卻把LoadRunner神化了,”天真的”以為它什么都能做,以為學(xué)會了LoadRunner的使用就能做性能測試了.盡管用了大量的時間學(xué)會了如何使用LoadRunner錄制腳本,如何進(jìn)行關(guān)聯(lián),如何進(jìn)行參數(shù)化,如何設(shè)置集合點(diǎn)等等?可到頭來,性能測試還是不會做.為什么?對于產(chǎn)生的性能報告不知道怎么去分析?不知道如何利用得到的分析報告分析出系統(tǒng)存在的瓶頸?不知道如何進(jìn)行性能調(diào)優(yōu)?像這些事光會使用LoadRunner是做不到的!說白了LoadRunner只是我們做性能測試的一個工具,它并不是萬能的,具體怎么做還得依靠人去操作與分析.會使用LoadRunner的人,并不一定會做性能測試,會做性能測試的人并不一定都會使用LoadRunner.LoadRunner只是一個性能測試工具而已.我們應(yīng)該意識到,測試工具只是性能測試中的一部分,僅是為達(dá)到性能測試目的而采用的一種手段。
    性能測試與系統(tǒng)性能的關(guān)系:高性能,高安全的系統(tǒng),不是測試出來的,而是構(gòu)架,設(shè)計,編寫出來的.當(dāng)然在這里我并不否認(rèn)性能測試的重要性,甚至可以說沒有經(jīng)過性能測試的系統(tǒng),一定不會是優(yōu)秀的系統(tǒng),軟件是人開發(fā)出來的,而人總是會出錯的,所謂智者千慮,必有一失……要想做好性能測試,在軟件系統(tǒng)需求,設(shè)計,編寫代碼的這些階段就應(yīng)該進(jìn)行性能測試,而不僅僅是系統(tǒng)測試這個階段才去做性能測試,性能測試應(yīng)該貫穿于整個軟件開發(fā)周期中.


    對初學(xué)LoadRunner朋友的建議:??吹骄W(wǎng)上一些網(wǎng)友發(fā)貼子問,怎么對性能測試產(chǎn)生的結(jié)果進(jìn)行分析?測試系統(tǒng)時怎么去選擇合適的協(xié)議?對于發(fā)這些貼子的人我想請問你?你能夠詳細(xì)的說下HTTP協(xié)議嗎?TCP建立連接和釋放連接的過程是怎樣進(jìn)行的?什么是協(xié)議?協(xié)議是用來做什么的?在OSI參考模型中各層的作用?數(shù)據(jù)庫中產(chǎn)生并發(fā)的沖突的原因?不要太依賴于LoadRunner工具本身的學(xué)習(xí),而去忽略計算機(jī)其它基礎(chǔ)知識的學(xué)習(xí),我們更應(yīng)該去掌握一門編程語言,良好的網(wǎng)絡(luò)基礎(chǔ)知識,計算機(jī)原理與操作系統(tǒng)知識,數(shù)據(jù)庫知識.這些是我們?nèi)W(xué)習(xí)怎么去使用LoadRunner前提與基礎(chǔ)。
1、為什么要掌握一門編程語言
其一,大家在使用LoadRunner時常會遇到一些不能錄制腳本的情況發(fā)生,或者需要錄制一些復(fù)雜的腳本,這時候我們就必須手動的開發(fā)腳本.其二LoadRunner雖然強(qiáng)大,易于使用,可是它卻屬于商業(yè)軟件,價格昂貴,并且代碼不開源,我們無法了解LoadRunner具體的實現(xiàn)細(xì)節(jié),甚至我們會懷疑LoadRunner收集的性能數(shù)據(jù)準(zhǔn)確嗎?它有是如何實現(xiàn)的等等,而這些我們通過LoadRunner的幫助文檔無法得知.性能測試工具并不只有LoadRunner,做性能測試還有許多優(yōu)秀的性能測試工具可以選擇,像JMeter,Curl-Loader等等這些非常優(yōu)秀的開源工具,在全能上雖然并不上LoadRunner,但在某些方面卻比LoadRunner還要強(qiáng)大.例如Curl-Loader這個工具,它雖然支持的協(xié)議不多,但是對于http協(xié)議它最高能產(chǎn)生10萬的并發(fā)用戶,這是LoadRunner遠(yuǎn)遠(yuǎn)所不及的.并且這些工具代碼是公開的,我們能夠從這些代碼中去分析具體實現(xiàn)的細(xì)節(jié),并且還可以自已編寫代碼,增強(qiáng)軟件的功能,這也是成為性能測試高手的一條途徑.LoadRunner好比我們的Windows操作系統(tǒng),易于使用,功能強(qiáng)大,代碼封閉,論全能比Linux要強(qiáng)大.我們的開源性能測試工具好比Linux操作系統(tǒng)代碼開源,不易于使用,但很多方面比我們的Windows要強(qiáng)大.也許這個時候有人會問對于初學(xué)者學(xué)哪門語言最好最有前途C,C++,VB,JAVA,C#?其實每一種語言能夠生存下來,自有其生存的道理,每一種語言都有自已優(yōu)勢和缺點(diǎn),并且編程語言具有相通信,學(xué)好了一門,再去學(xué)另外的編程語言,非??炀湍苌鲜?對于初學(xué)者我建意學(xué)習(xí)C語言,理由有很多,例如很多優(yōu)秀的開源性能測試工具就是用C語言開發(fā)的….當(dāng)然不管選擇什么編程語言,或者數(shù)據(jù)庫,或者操作系統(tǒng),我們不要去想學(xué)哪門最好,學(xué)哪方面最有前途.我們更應(yīng)該結(jié)合自身的情況,選擇最合適的,而不是選擇最好的.


2、為什么要掌握計算機(jī)原理和操作系統(tǒng)知識
論壇上常會看到這些問題?LoadRunner中線程與進(jìn)程的關(guān)系?在什么時候用到它們,怎么區(qū)別用線程還是進(jìn)程呢?LoadRunner錄制產(chǎn)生了亂碼怎么解決?怎么去發(fā)現(xiàn)內(nèi)存泄漏?對那些發(fā)貼問這些問題的朋友,我依然想請問你你知道進(jìn)程和線程的概念嗎?知道進(jìn)程有幾種狀態(tài)嗎?知道進(jìn)程間的通信是怎么進(jìn)行的嗎?死鎖,進(jìn)程與線程的區(qū)別這些概念你明白嗎?如果你連內(nèi)存的概念,內(nèi)存的作用,內(nèi)存泄露的概念都搞不清楚,你怎么去發(fā)現(xiàn)內(nèi)存泄露?如果這些你都不知道,自然就不知道怎么去做性能測試分析?一些網(wǎng)友錄制腳本常常會產(chǎn)生一些莫名奇妙的錯誤?還震震有詞的說這是LoadRunner的原因.其實要說到底要解決這些問題就必需得有良好的計算機(jī)原理和操作系統(tǒng)知識.弄清了進(jìn)程和線程的區(qū)別,你自然就明白了使用進(jìn)程資源使用高,但安全性要強(qiáng)于線程,線程資源利用率少,使用線程能在一個負(fù)載生成器上運(yùn)行更多的Vuser,但可能存在安全問題.LoadRunner錄制產(chǎn)生了亂碼怎么解決?為什么會產(chǎn)生亂碼,你知道什么是字符集嗎?什么是編碼嗎?字符串在我們內(nèi)存中有是如何存放的?ASCII編碼,ANSI編碼,UNICODE編碼它們的區(qū)別是什么?這些都是操作系統(tǒng)的基礎(chǔ)基礎(chǔ).掌握好了這些你自然明白LoadRunner中產(chǎn)生亂碼的原因.當(dāng)然計算機(jī)原理和操作系統(tǒng)的基礎(chǔ)知識還有很多得掌握的知識.像操作系統(tǒng)的體系架構(gòu)、操作系統(tǒng)的重要基礎(chǔ)概念,內(nèi)存管理、存儲/文件系統(tǒng)、驅(qū)動/硬件的管理.要做好性能測試計算機(jī)原理和操作系統(tǒng)知識必不可少.

3、為什么要有良好的網(wǎng)絡(luò)基礎(chǔ)
經(jīng)常在51testing論壇中看到很多人發(fā)貼子.像LoadRuner中為什么要進(jìn)行關(guān)聯(lián)?,LoadRunner測試系統(tǒng)時如何選擇協(xié)議?LoadRunner中的如何進(jìn)行IP欺騙?等等.這些問題隨便一搜就能發(fā)現(xiàn)大量的貼子,其實說到底這些問題和LoadRunner的關(guān)系并不是很大,要去解決這些問題并不在于你對LoadRunner這個工具使用是否熟練,而在于我們網(wǎng)絡(luò)基礎(chǔ)知識是否扎實.例如第一個問題LoadRunner中為什么要進(jìn)行關(guān)聯(lián)?相信很多朋友都知道HTTP協(xié)議知道它是超文本傳輸協(xié)議,但是對于一些新手往往不能夠詳細(xì)的說出HTTP具體的內(nèi)容,像HTTP工作的原理,HTTP協(xié)議為什么要使用基于TCP的協(xié)議而不使用UDP的協(xié)議,HTTP工作在OSI參考模型的哪一層?在HTTP協(xié)議上數(shù)據(jù)是怎么傳輸?shù)牡鹊?而只有當(dāng)我們明白了這一切,自然而然就會明白為什么要使用關(guān)聯(lián),到最后你會發(fā)現(xiàn)這些問題其實根LoadRunner關(guān)系并不是很大.HTTP協(xié)議本質(zhì)上是無狀態(tài)的;對頁面的每個請求都將被視為新請求,而且默認(rèn)情況下,來自一個請求的信息對下一個請求不可用.在傳統(tǒng)的 Web 編程中,這通常意味著在每一次往返行程中,與該頁及該頁上的控件相關(guān)聯(lián)的所有信息都會丟失.例如,如果用戶將信息輸入到文本框,該信息將在從瀏覽器或客戶端設(shè)備到服務(wù)器的往返行程中丟失,為了使用瀏覽網(wǎng)頁,頁與頁是相互聯(lián)系不去丟失這些信息,于是了就從現(xiàn)了Cookie,Session,查詢字符串等等保持狀態(tài)的技術(shù).什么是Cookie?什么是Session?Cookie 和Session 有是怎么工作的?當(dāng)我們明白了這些,很多的問題就自然而然的明白了,像這些都是基礎(chǔ)的知識和LoadRunner關(guān)系大嗎?不大.Cookie 是一些少量的數(shù)據(jù),這些數(shù)據(jù)存儲在客戶端文件系統(tǒng)的文本文件中,或者存儲在客戶端瀏覽器會話的內(nèi)存中.Cookie 包含特定于站點(diǎn)的信息(像用戶名密碼以及我們在網(wǎng)站一些個性化的設(shè)置等等),這些信息是隨頁輸出一起由服務(wù)器發(fā)送到客戶端的.如果瀏覽器使用的是cookie,那么所有的數(shù)據(jù)都保存在瀏覽器端,比如我們登錄以后,服務(wù)器設(shè)置了cookie用戶名,那么當(dāng)你再次請求服務(wù)器的時候,瀏覽器會將用戶名一塊發(fā)送給服務(wù)器,這些變量有一定的特殊標(biāo)記.服務(wù)器會解釋為cookie變量,所以只要不關(guān)閉瀏覽器,那么cookie變量一直是有效的,所以能夠保證長時間不掉線..如果設(shè)置了的有效時間,那么它會將 cookie保存在客戶端的硬盤上,下次再訪問該網(wǎng)站的時候瀏覽器先檢查有沒有 cookie,如果有的話,就讀取該 cookie,然后發(fā)送給服務(wù)器.這些是Cookie的工作過程,??吹秸搲弦恍┡笥寻l(fā)貼子問使用LoadRunner時錄制到了一些Cookie的信息,它是用來做什么的,看起來很煩可不可以把它刪除掉?明白了這些細(xì)節(jié)的知識,你自然能明白那個Cookie的信息能不能刪除掉.如果web服務(wù)器端使用的是session,那么所有的數(shù)據(jù)都保存在服務(wù)器上,客戶端每次請求服務(wù)器的時候會發(fā)送當(dāng)前會話的SessionId,服務(wù)器根據(jù)當(dāng)前SessionId唯一地標(biāo)識在服務(wù)器上包含會話數(shù)據(jù)的瀏覽器,以確定用戶是否登錄或具有某種權(quán)限.不同的用戶發(fā)送請求Web服務(wù)器會隨機(jī)發(fā)送一個唯一的SessionID.而我們使用LoadRunner錄制時它會把我們SessionID寫死,所以導(dǎo)致出錯.這時候就得使用關(guān)聯(lián)了,這樣不僅明白了LoadRunner怎樣使用關(guān)聯(lián),而且還明白了為什么要使用關(guān)聯(lián)?對于LoadRunner測試系統(tǒng)時如何選擇協(xié)議?這個問題也是網(wǎng)絡(luò)論討的比較多的問題.要解決這個問題同樣得依靠我們的扎實的網(wǎng)絡(luò)基礎(chǔ),而不是對LoadRunner使用的熟練程度,首先我們得了解LoadRunner錄制時的工作原理了,LoadRunner的錄制和QTP不一樣,它不關(guān)心你的對象識別什么的,不關(guān)心你的什么界面之類的,不關(guān)心你使用什么語言編寫的,LoadRunner有一個Agent進(jìn)程,來專門監(jiān)控客戶端和服務(wù)器之間的通信,然后用自己的函數(shù)進(jìn)行錄制.LoadRunner錄制的時候關(guān)心的是通信包,是客戶端和服務(wù)器之間的數(shù)據(jù)包.說到這里,大家就比較清楚了,為什么有的時候不能錄制呢?因為,協(xié)議不認(rèn)識,導(dǎo)致LoadRunner截獲的數(shù)據(jù)包不能解析,所以錄制下來是空的.所以我們得熟悉什么是協(xié)議,熟悉OSI參考模型,OSI參考模型中各層的作用,TCP協(xié)議棧各層的作用,熟悉TCP,UDP,ICMP等等協(xié)議.當(dāng)我們明白了這些網(wǎng)絡(luò)的基礎(chǔ)知識后我們自然會明白應(yīng)該如何去選擇協(xié)議.另外關(guān)于LoadRunner中的如何進(jìn)行IP欺騙?要解決這個問題同樣得有良好的網(wǎng)絡(luò)基礎(chǔ)知識.其實當(dāng)我們理解了IP地址的格式,IP地址的分類,子網(wǎng)掩碼的概念,以及知道怎么去進(jìn)行非標(biāo)準(zhǔn)子網(wǎng)的劃分方法 ,掌握了這些原理的東西,那么具體怎么在LoadRunner中如何進(jìn)行IP欺騙,就非常簡單了. 當(dāng)然網(wǎng)絡(luò)基礎(chǔ)知識并不只是上面的而已,還包括路由器,交換機(jī),加密技術(shù)等等這些基礎(chǔ)的網(wǎng)絡(luò)知識,這些遠(yuǎn)遠(yuǎn)比我們?nèi)W(xué)習(xí)怎么去使用LoadRunner更重要.


4、為什么要掌握數(shù)據(jù)庫知識
數(shù)據(jù)庫的重要性我想是不言而喻的,性能測試產(chǎn)生的一個非常大的原因是因為數(shù)據(jù)大集中的趨勢,測試從某種意義來講就是對數(shù)據(jù)測試,而我們企業(yè)的核心數(shù)據(jù)是放在數(shù)據(jù)庫中的.現(xiàn)在大型的WEB應(yīng)用程序,都采用多層結(jié)構(gòu),像典型三層,用戶界面層,數(shù)據(jù)邏輯層,數(shù)據(jù)層.而數(shù)據(jù)層,而數(shù)據(jù)層對我們整個WEB應(yīng)用程序的性能是非常大的,對數(shù)據(jù)庫的基礎(chǔ)知識不懂,我們怎么去進(jìn)行性能測試分析?怎么知道確定性能產(chǎn)生的瓶頸是否是數(shù)據(jù)庫的原因,如何對系統(tǒng)進(jìn)行調(diào)優(yōu)?例如數(shù)據(jù)庫模型設(shè)計不合理,一條壞的SQL語句就能影響到整個WEB應(yīng)用程序的性能,所以熟悉SQL語句,建表,索引,存儲過程,事務(wù),觸發(fā)器,并發(fā)等這些基礎(chǔ)知識是必需得掌握的.

路漫漫其修遠(yuǎn)兮,吾將上下而求索:性能測試難點(diǎn)不在于Loadrunner工具本身,難在對整個系統(tǒng)的全局把握,而對全局的把握你就必須得有豐富的知識面.并不是學(xué)好了LoadRunner的使用就能做性能測試 .目前,國內(nèi)性能測試領(lǐng)域正處于起步階段,要做好性能測試還需學(xué)習(xí)更多的知識,技術(shù)性和非技術(shù).性能測試這條路充滿著挑戰(zhàn),也充滿著機(jī)遇.但正如魯迅先生所說這世上本來沒有路,走的人多了,也就成了路.最后祝愿喜愛性能測試的愛好者在這條道路上能夠不鳴則已,一鳴驚人,不飛則已,一飛沖天.


分享名稱:對初學(xué)LoadRunner朋友們的一些建議
文章URL:http://www.dlmjj.cn/article/jgioco.html