1. 如何做好軟體測試
開發一個好的軟體,40%以上的時間用在測試上,所以軟體測試工程師非常重要,用我們的話來說很吃香。現在從事程序員的人有很多,做測試工程師的人少點,工作壓力不太大
測試工程師應該具備的三項基本素質[1] 很多年輕或者剛剛從事測試工作的工程師,經常會問:「測試工程師需要什麼技能或者具有什麼素質才是合格的?」與開發人員相比,測試人員不但需要一技之長,還需要掌握諸如操作系統、資料庫、網路等多方面的知識。
經過這幾年的發展,國內IT公司的測試水平有了很大的提高,但是與此同時,很多測試工程師也迎來了個人的發展瓶頸:很多人從測試工程師做到了測試經理的職位,不知道下一步如何發展;或者每天機械地從事著功能測試工作。
根據作者多年的經驗,一個有競爭力的測試人員要具有下面三個方面的素質:
計算機專業技能
計算機領域的專業技能是測試工程師應該必備的一項素質,是做好測試工作的前提條件。盡管沒有任何IT背景的人也可以從事測試工作,但是一名要想獲得更大發展空間或者持久競爭力的測試工程師,則計算機專業技能是必不可少的。計算機專業技能主要包含三個方面:
測試專業技能
現在軟體測試已經成為一個很有潛力的專業。要想成為一名優秀的測試工程師,首先應該具有扎實的專業基礎,這也是本書的編寫目的之一。因此,測試工程師應該努力學習測試專業知識,告別簡單的「點擊」之類的測試工作,讓測試工作以自己的專業知識為依託。
測試專業知識很多,本書內容主要以測試人員應該掌握的基礎專業技能為主。測試專業技能涉及的范圍很廣:既包括黑盒測試、白盒測試、測試用例設計等基礎測試技術,也包括單元測試、功能測試、集成測試、系統測試、性能測試等測試方法,還包括基礎的測試流程管理、缺陷管理、自動化測試技術等知識。
軟體編程技能
「測試人員是否需要編程?」可以說是測試人員最常提出的問題之一。實際上,由於在我國開發人員待遇普遍高於測試人員,因此能寫代碼的幾乎都去做開發了,而很多人則是因為做不了開發或者不能從事其它工作才「被迫」從事測試工作。最終的結果則是很多測試人員只能從事相對簡單的功能測試,能力強一點的則可以藉助測試工具進行簡單的自動化測試(主要錄制、修改、回放測試腳本)。
軟體編程技能實際應該是測試人員的必備技能之一,在微軟,很多測試人員都擁有多年的開發經驗。因此,測試人員要想得到較好的職業發展,必須能夠編寫程序。只有能給編寫程序,才可以勝任諸如單元測試、集成測試、性能測試等難度較大的測試工作。
此外,對軟體測試人員的編程技能要求也有別於開發人員:測試人員編寫的程序應著眼於運行正確,同時兼顧高效率,尤其體現在與性能測試相關的測試代碼編寫上。因此測試人員要具備一定的演算法設計能力。依據作者的經驗,測試工程師至少應該掌握Java、C#、C++之類的一門語言以及相應的開發工具。
網路、操作系統、資料庫、中間件等知識:
與開發人員相比,測試人員掌握的知識具有「博而不精」的特點,「藝多不壓身」是個非常形象的比喻。由於測試中經常需要配置、調試各種測試環境,而且在性能測試中還要對各種系統平台進行分析與調優,因此測試人員需要掌握更多網路、操作系統、資料庫等知識。
在網路方面,測試人員應該掌握基本的網路協議以及網路工作原理,尤其要掌握一些網路環境的配置,這些都是測試工作中經常遇到的知識。
操作系統和中間件方面,應該掌握基本的使用以及安裝、配置等。例如很多應用系統都是基於Unix、linux來運行的,這就要求測試人員掌握基本的操作命令以及相關的工具軟體。而WebLogic、Websphere等中間件的安裝、配置很多時候也需要掌握一些。
資料庫知識則是更應該掌握技能,現在的應用系統幾乎離不開資料庫。因此不但要掌握基本的安裝、配置,還要掌握SQL。測試人員至少應該掌握Mysql、MS Sqlserver、Oracle等常見資料庫的使用。
作為一名測試人員,盡管不能精通所有的知識,但要想做好測試工作,應該盡可能地去學習更多的與測試工作相關的知識
軟體測試工程師-IT就業新亮點,
根據有關職位統計資料顯示,在國外大多數軟體公司,1個軟體開發工程師就需要輔有2個軟體測試工程師。目前,軟體測試自動化技術在我國則剛剛被少數業內專家所認知,而這方面的專業技術人員在國內更是鳳毛麟角。根據對近期網路招聘IT人才情況的了解,許多正在招聘軟體測試工程師的企業很少能夠在招聘會上順利招到合適的人才。
隨著中國IT行業的發展,產品的質量控制與質量管理正逐漸成為企業生存與發展的核心。從軟體、硬體到系統集成,幾乎每個中大型IT企業的產品在發布前都需要大量的質量控制、測試和文檔工作,而這些工作必須依靠擁有嫻熟技術的專業軟體人才來完成。而軟體測試工程師就是其中之一。
據了解,由於軟體測試工程師處於重要崗位,所以必須具有電子、電機類相關專業知識背景,並且還應有兩年以上的實際操作經驗。他們應熟悉中國和國際軟體測試標准,熟練掌握和操作國際流行的系列軟體測試工具,能夠承擔比較復雜的軟體分析、測試、品質管理等任務,並能獨立擔任測試、品質管理部門的負責人。一般情況,軟體測試工程師可分為測試工程師、高級測試工程師和資深測試工程師三個等級。
在具體工作過程中,測試工程師的工作是利用測試工具按照測試方案和流程對產品進行功能和性能測試,甚至根據需要編寫不同的測試工具,設計和維護測試系統,對測試方案可能出現的問題進行分析和評估。對軟體測試工程師而言,必須具有高度的工作責任心和自信心。任何嚴格的測試必須是一種實事求是的測試,因為它關繫到一個產品的質量問題,而測試工程師則是產品出貨前的把關人,所以,沒有專業的技術水準是無法勝任這項工作的。同時,由於測試工作一般由多個測試工程師共同完成,並且測試部門一般要與其他部門的人員進行較多的溝通,所以要求測試工程師不但要有較強的技術能力而且要有較強的溝通能力。
因此,在企業內部,軟體測試工程師基本處於「雙高」地位,即地位高、待遇高,有的人月薪可高達8000元。可以說他們的職業前景非常廣闊,從近期的企業人才需求和薪金水平來看,軟體測試工程師的年工資有逐年上升的明顯跡象。測試工程師這個職位必將成為IT就業的新亮點。
2. 怎麼測試網路穩定性
可以用ping命令,開始-運行-CMD-輸入ping 網址,-t 看看有沒有丟包問題,可以持續時間長點,如果沒有丟包或很少,說明網路還是穩定的
對網路的穩定性我們可以測試幾個指標:
1、MTBF:平均無故障時間間隔,測試方法:以該系統最大帶寬的50%~80%的速率傳輸數據,連續不間斷工作,記錄系統出故障時間。
2、帶寬:穩定的數據傳輸率。測試方法:同上,逐漸加大數據傳輸率,測試出最大的穩定帶寬。
3、最大並發流數目:TCP或者其他協議的最大支持數,測試方法:採用多客戶機多線程方法建立多條鏈路,記錄系統最大在多少個連接的情況下網路傳輸率下降不明顯。
測試說明:由於是一個較長過程的整體表現,因此,多測試幾遍,去掉最高與最低的結果,其餘結果取平均值。
所謂的穩定性是指網路系統能夠提高長期、可靠、滿足指標帶寬的性能。
長期:網路系統必須在較長的時間內正常工作,不能發生宕機、重啟等故障。
可靠:在滿負載的情況下工作正常,不能崩潰或者效率下降很多。
帶寬:能夠穩定提供不少於某個指標的數據傳輸率
3. 如何測試系統的好壞或者說是穩定性
據我所知,網上的XP系統,它們一般都採用官方微軟發布的Windows XP SP2( SP3)免激活原版為母盤,集成了最新安全補丁,結合當今最頂尖的萬能克隆技術,對系統進行了適度優化,可通過微軟驗證,可在線更新。各家在此基礎上做了個性化設計,集成了人們常用的軟體和硬體驅動,出了不同的版本,如純凈版、裝機版、特別版、美化版、簡精版等。2009年初以來我先後試用了電腦公司、新電腦公司、蘿卜家園、新蘿卜家園、電腦城、系統玩家、布衣聯盟等出的XPSP3系統,使著都不錯,現在使用的是GhostXPSP3電腦公司純凈版Ver2009 和系統玩家V2.0。
咱們一般網民在沒有什麼測試儀器的情況下,只能憑體驗說話,這些光碟在系統運行快速、上網高速、穩定、安全等方面基本大同小異,各有千秋,讓我說那個好,我只能說根據個人需要愛好選擇使用,新出的不放心,那就使用2009年發前出的老版本,裝完後打補丁。
4. 程序員怎麼樣保證自己的程序沒有BUG!
但大部分程序員都有一個問題就是不太願意測試自己的代碼。他們草草的調式完成以後就認為工作結束,測試那是測試人員的工作。 1. 影響了程序員自己的聲譽 2. 影響了產品的質量 3. 影響了客戶的信任度 4. 這個時候再 DEBUG 難度增大了許多。 大的不說,就說多自己聲譽的影響吧。如果你的程序總會有這樣那樣的 BUG ,你得到收益會減少,即使你寫了很多代碼。 程序員必須克服一些自身的致命缺點才能夠從根本上解決這個問題。那麼這個問題是什麼?前面我們已經提到,程序員對自己的代碼都非常寬容,認為那是正確的沒有問題。實際上這種想法比較正常,程序是通過程序員思考和設計之後才寫出來,程序員不會將自己認為不正確的東西寫到代碼里,而到這個時候都一直假設程序是正確的;但人非聖賢,怎麼可能不犯錯誤來。實際上程序員在對待其他程序員時候的態度就很好,帶著一種挑剔和學習的態度;但一旦對待自己的代碼就很難這么做;這就是最致命的。程序員也必須對自己的代碼帶著挑剔和學習的態度;這個基礎是假設自己的代碼是錯誤的,然後需要做的是怎麼樣證明自己的代碼是正確的。程序員自身可以在程序生成的每個階段做這些工作:仔細的設計(這個時候畫點時間是值得的,必須保證我們對自己的程序有清晰的輪廓後才能開始動手寫)、編寫代碼時、單元測試(單元測試的重要性就不在贅婿了)、功能測試。 仔細的設計:這個的仔細是說在程序員編寫代碼之前,其必須對代碼的整個結構以及邏輯結構有明確的清晰的了解,只有這個時候才可以去寫代碼。這里沒有談到文檔,但我說到了一定要清晰的思路,但清晰的思路不是每個人都可以在腦袋中直接形成的,很多人都是普通人,沒有辦法在腦袋瓜中把所有問題都想清楚,那麼就記下來,特別對於復雜的邏輯。 編寫代碼:對於沒有把握的代碼,例如:新設計的演算法,最好保證其正確性。可以單獨將這部分測試,這可以讓代碼模塊化的同時又保證了代碼的正確性。一句話:少量的代碼保證質量還是比較簡單的。 單元測試:單元測試的重要性不在贅敘了,現在也有許多工具可以幫助程序員並減少工作量。 功能測試:程序員保證自己代碼質量的最後一關;為了做這樣的工作我們可能必須寫一些代碼來測試,甚至是測試工作。使用大量的 CASE 來測試,以及錯誤的 CASE 。這里和測試人員的測試不同之處在於:仍然讓程序員的注意力放在其自己的代碼范圍內,減小了排錯的難度。 如果你通過了以上的步驟都找不出你程序中有任何問題的話,那麼我想你的程序應該足夠健壯了。其實還有一點必須說明的就是:代碼 REVIEW 。 前面說道了程序員對待別人代碼的態度是挑剔和學習的態度,所以讓其他程序員來 REVIEW 你的代碼也是檢查程序有沒有邏輯錯誤的很好的辦法。團隊中應該交叉 REVIEW 代碼,這是實踐的經驗。 作為一個好的程序員必須有以上的習慣,以及對待自己代碼象孩子一樣,我們要愛惜我們的代碼,同時也要讓代碼走正確的路。
5. 如何辨別ERP的穩定性
ERP產品如果不穩定將為企業帶來哪些影響?企業如何辨別ERP是否穩定?筆者在此為您做一分析。 ERP不穩定的致命影響 眾所周知ERP軟體更新換代比較快,處在不停升級、不停打補丁的狀態中,這導致軟體的穩定性比較差。而新產品發布後,企業往往是試用的對象,而系統的不穩定,經常給企業帶來了很多麻煩。 核算數據不準確影響報表的正確性;出入庫不嚴格,車間多領料,造成倉庫多發或少收的現象,導致企業倉庫數量及應收、應付賬款不準確;賬實不相符,不能正確提供製訂計劃用的參考數據等,這些都是ERP系統不穩定造成的直接後果。更為嚴重的是系統性能低甚至癱瘓,導致不能開單,造成業務停滯,業務人員無法正常工作等。因此穩定性對ERP軟體來說是第一位的,不穩定是其致命的缺陷。 如何考察ERP的穩定性 方法一:重點測試。ERP產品大都具有較強的通用性,雖然不能完全適應於某個行業,但它可以涵蓋大部分企業的大部分業務,而且企業實施ERP周期一般不會太長,所以在時間緊任務重的情況下,要重點地驗證軟體性能,針對本企業的流程對軟體做單元測試、壓力測試及全面測試等。 企業在沒有使用軟體前很難測試ERP的穩定性,因為上線前期一般都比較忙,無論甲方還是乙方在上線前一個月都要投入不少精力做支持。通過這一個月的應用,企業往往才能真正了解ERP軟體的質量,這個時候,還願不願意投入成本去做測試,成為企業重點考慮的問題。 方法二:全系統測試。考察軟體的穩定性是一個長期持續不斷的過程,貫穿整個軟體的生命周期。企業從系統上線、試運行到正式運行,甚至完全甩掉手工賬,整個期間軟體的穩定性都是一個不容忽視的問題。驗證軟體穩定性的最常用方法就是軟體原型測試,由於ERP系統是信息集成系統,所以在測試時,應當是全系統的測試,各個部門的人員都應該同時參與,這樣才能理解各個數據、功能和流程之間相互的集成關系。 測試時,找出不足的方面,提出解決企業管理問題的方案,以便提出對軟體的改進措施;然後再模擬運行,在基本掌握軟體功能的基礎上,按企業的業務流程模擬操作,選擇有代表性的業務,將各種必要的數據錄入系統,按企業日常工作中經常遇到的問題,組織項目小組進行實戰性模擬,並根據發現的問題及需求,由項目小組制定解決方案。 問題的范圍一般有軟體BUG、流程不完善、誤操作、客戶需求等等。經過一段時間的摸擬運行後,根據企業提出的一些問題結合項目小組制定的解決方案來制定相關的工作準則與規范。因為軟體的應用與企業的管理是相輔相成的,誤操作、重復錄入數據等都會引起數據的准確程度,導致軟體的不穩定,所以制訂嚴格的管理操作流程,防止因誤操作而導致數據方面的問題。 軟體不穩定的根源在哪裡? 雖然有一些測試的方式可以幫助企業考察ERP的穩定性,但如果企業能預先了解到其不穩定性的原因,再因地制宜地進行選型,將會事半功倍。 ERP不穩定的原因來自外部和軟體廠商內部兩方面。 外部因素 ①惡性競爭。國內很多ERP產品在有些功能上是完全相同的,就連思路也是大同小異,很少有創新的東西,一家出來後,不出一年,另一家也會出來,產品更新換代非常快。由於圖一時之利,產品不穩定也就在所難免。 ②客戶需求。客戶提出的需求多種多樣,在軟體使用過程中,由於業務的變化及對軟體的熟悉程度,原來的一些功能可能滿足不了客戶的需要,迫使客戶提出很多易用性或完善性的需求,這些需求處理不好就成為軟體穩定性的一種隱患。 ③項目壓力。項目是任何軟體公司賴以生存的根本,現在國內大部分的軟體企業都是做項目起家,根據項目逐漸提煉,最終形成產品,所以說產品的很大一部分改動源於項目,只要項目上有需求,都要想辦法解決,這也是很多軟體企業的宗旨。但這種現象也造成了不可估計的損失,產品越改需求越多,越改越亂、越改越不穩定,不僅導致項目周期拖延,還對產品造成致命的沖擊,最終越陷越深。 內部因素 ①分析設計階段。搭建系統架構在此階段完成,包括需求規格說明書、詳細規格說明書、數據結構等文檔的編寫。在企業里一般分析設計人員由資深的軟體開發人員兼任,但往往這部分人跟客戶交流的機會少,缺少一線項目經驗,設計出的軟體也是參考了很多競爭對手的資料或實施、售前人員反饋的需求及平常自己的一些經驗而來,在開發階段可能問題不大,但在客戶使用後,進入維護階段就經不起考驗了,使用一段時間後,最終可能要推倒重來。 ②開發階段。開發階段最常見的問題是沒有設計文檔就寫程序,等程序寫完後再補設計文檔,這樣往往造成代碼冗餘,嚴重者往往會推倒重來,做無用功。所以開發階段能否按照分析設計階段編寫的文檔嚴格執行很關鍵,能否理解設計者的思路也很重要,這個階段的工作直接會影響到產品的發版及以後的維護工作。另外此階段的單元測試也很重要,不願測自己寫的程序也是開發人員的通病。 ③測試階段。發版前的測試一般由專門的測試部門來完成,開發人員輔助處理測試出的問題及指導測試工作,但測試人員水平有高有低,往往有些測試人員對軟體功能不熟悉,無從下手,測試出的問題也都是低級題。
6. 如何測試網路穩定性(即會不會掉線)
1、我們點擊電腦windows鍵,打開命令提示符。
7. 如何提升測試環境的穩定性
8. 如何測試app的穩定性
通過人工專業測試分析+自動化檢測工具的方式針對第三方插件愛內測技術人員會對插件進行掃描處理,測試工程師全面測試安裝插件後的效果,根據實際的測試數據對第三方插件進行整體評價。 安全性:對插件的安全性進行評估,查看是否含有病毒,上傳用戶數據,竊取用戶隱私等。其次對其漏洞進行掃描分析,查看是否存在安全漏洞可被黑客調用。 可用性:對插件的可用性進行評估,集成插件後的實際效果和插件描述進行對比,分析其是否達到了宣傳的可用性。 穩定性:對集成插件後的APP進行測試,查看其穩定性,是否會出現集成後崩潰、閃退、兼容性降低、效率變低等問題。
9. 怎麼測試網路穩不穩定
1、確定你網路帶寬(http://www.wsceshi.com/)
如果你的下載速度在180K左右,說明你的網路帶寬是個瓶頸
2、如果你的網路帶寬是你下載速度的幾倍,那你查看下你迅雷的上傳速度,上 傳速度有個演算法,我只知道電信2M一般上傳為50K所有,你可以測試下,你用QQ穿文件給在異地的朋友,一邊傳文件一邊打開開心網等幾個常見的網頁,就能感覺到慢了。上傳是很占帶寬的。
3、迅雷和電驢雖然都是皮p2p技術,但是出發點不一樣,迅雷是專門的下載軟體,電驢是電驢網站附帶的下載軟體,前者偏重軟體研究,後者重點是資源。
4、解決和測試方法:
a》 通過上面的網站測試你本地的網速(稍微判斷下帶寬)
b》調整迅雷的設置(下載適當的下調,上傳設置成1K就夠了)
c》迅雷打開,不下載,運行游戲是卡不卡
d》迅雷打開,全速下載,看看資源管理器中佔用的內存數多少,打開網頁以及機器運行速度有沒有明顯的「一頓一頓」(如果一頓,則內存、cpu偏小等)
e》迅雷關閉,運行游戲5到6個小時後看看卡不卡(如果卡,證明內存篇小)
f》檢查c盤的可用空間數量 (以現在電腦的配置一般很少見,除非二手電筒腦)
g》檢查虛擬內存(一般為物理內存的2~4倍為最佳)
h》……應該沒有了