上個星期去TZ面試,他們提供的崗位并沒有我熟悉的軟件開發,但是盧老師介紹我過來,我總不能臨時逃跑吧。只好硬著頭皮選了軟件測試崗位。
其實再這后面還有一輪面試,面試官只問了我三個問題:1.軟件測試的流程。2.軟件測試的常規方法。3.關于黑盒和白盒測試。當時出于抵觸情緒,我都沒有好好回答就離開了。
后來星期一去面試了,筆試和面試的結果應該和我一樣,但是他主動提出自己會as,曉得air開發。面試官對這個技術也有興趣,就交個他一個題目讓他回去做。經過幾天的努力,那個程序寫出來來了,他也獲得了復試的機會。在有些方面,我確實比不上他:主動、自信、有實力。我與面試官溝通的時候,只是問他們公司招什么樣的職位,發現沒有適合我的,就放棄了,而沒有充分的展示自己的能力來勾起面試官的興趣。當然,這也存在一定的運氣成分,但是如果自己不嘗試,又何來的機會呢?
盧老師后來又再次幫我與那邊溝通,讓我也去復試一下。叮囑我這幾天熟悉下測試相關知識。但是我一直拖到今天這個時候才開始,我真的很想做開發,做自己感興趣的事,但怎么也不能辜負他的好意啊!也許測試也適合我呢?當然,我是不會放棄做開發的。
隨便上網了解了下作測試人員的基本要求:計算機專業技能(包括測試專業技能、軟件編程技能和網絡、操作系統、數據庫、中間件等知識)。
發現我每個方面都懂一點點,但又不精通,也沒有相關的經驗。但我想,計算機專業技能對我來說應該不難。我相信自己會上手很快的:)
除了基本要求,還有就是做軟件測試的素質,我發現這個要求很搞。我打算一條條分析:
①、溝通能力 -- 我樂于與人溝通,也善于跟人打交道。
②、移情能力 -- 我是個感情豐富,又有同情心的人。
③、技術能力 -- 這個差點,我對常規的測試工具都較少使用。
④、自信心 -- 這個比較缺乏,我總認為自己不夠好,不夠專業。
⑤、外交能力 -- 這個經驗得學習,也得注意,我說話比較直。
⑥、幽默感 -- 朋友一致認可的。
⑦、很強的記憶力 -- 上心的事記得很牢,一般的事過了就忘。
⑧、耐心 -- 長期耐心可能不行,但是短期耐心很強。從自己平常調試程序可以看出。
⑨、懷疑精神 -- 缺乏。總相信牛人是對的。
⑩、自我督促 -- 缺乏。能為自己制定計劃,但是長期實施有困難。
11、洞察力 -- 平常粗心大意,但是能留心到別人不注意的地方。
通過分析,我還是能成為測試工程師吧~對于薄弱的技術環節,我想現在趕快抱一抱佛腳吧。searching.。..。.好吧,我承認以前小看測試了,以為就是測試下程序能不能正確運行,會不會出bug就ok了。
先來說說第一個問題,軟件測試的流程是什么。
測試的流程:
需求階段流程圖:
單元/集成測試階段流程圖
系統測試階段流程圖
壓力測試流程圖
性能測試流程圖
僅僅了解就夠復雜的了,實際操作過程中的問題肯定更多。像壓力測試、性能測試,一般的情況下我哪里用得上啊。雖然也知道些什么分布式應用、海量存儲之類的,但是我連1T的數據都沒見過。光說說那是是空話=。=
第二個問題:軟件測試的常規方法。
不看不知道,原來比我想象中的還要多啊。
第三個問題:黑盒測試和白盒測試
白盒測試(White-box testing)是通過程序的源代碼進行測試而不使用用戶界面。這種類型的測試需要從代碼句法發現內部代碼在算法,溢出,路徑,條件等等中的缺點或者錯誤,進而加以修正。
黑盒測試(Black-box testing)是通過使用整個軟件或某種軟件功能來嚴格地測試, 而并沒有通過檢查程序的源代碼或者很清楚地了解該軟件或某種軟件功能的源代碼程序具體是怎樣設計的。測試人員通過輸入他們的數據然后看輸出的結果從而了解軟件怎樣工作。通常測試人員在進行測試時不僅使用肯定出正確結果的輸入數據,而且還會使用有挑戰性的輸入數據以及可能結果會出錯的輸入數據以便了解軟件怎樣處理各種類型的數據。
順便補充一下軟件工程課上,我們學到的其他測試方法介紹:
灰箱測試或灰盒測試(Gray-box testing):灰箱測試就像黑箱測試一樣是通過用戶界面測試,但是測試人員已經有所了解該軟件或某種軟件功能的源代碼程序具體是怎樣設計的。甚至于還讀過部分源代碼。 因此測試人員可以有的放矢地進行某種確定的條件/功能的測試。這樣做的意義在于:如果你知道產品內部的設計和對產品有透過用戶界面的深入了解,你就能夠更有效和深入地從用戶界面來測試它的各項性能。
有效用例(Valid case)或者叫合法輸入用例:是那些已知軟件程序能正確地處理的測試用例。一般是指軟件輸入的測試用例。比如說,在 Microsoft Excel 中,用鍵盤輸入“=1+1”, 看到的結果是“2”。 這里輸入的有效用例是“=1+1”。無效用例(Invalid case有人叫不合法輸入用例)或者出錯用例(error case):是那些事先就知道軟件程序不支持處理的測試用例。比如說在 Microsoft Excel 中,用鍵盤輸入“=a+1”, 看到的結果是“#NAME?”。這里輸入的“=a+1”既是無效用例同時也是出錯用例。
邊界條件(Boundary Cases):環繞邊界值的測試。通常意味著最大值,最小值或者所設計軟件能夠處理的最長的字符串等等。比如說某軟件字體的字號支持范圍是:從8到72。那么邊界測試用例應該包括:小于8, 等于8, 等于72 和大于72。
等價類(equivalent classes):等價類測試用例指的是如果有很多測試用例執行再多也不會找到新的中的缺陷。因為雖然輸入和輸出結果有所不同,但是它們都通過同樣的軟件的源代碼路徑。通常只要一個源代碼程序的路徑是用于處理一定數值范圍內的所有數值,那么除了邊界值以外,在邊界值范圍以內的所有數值一般都屬于等價類。因為如果軟件程序能正確處理一個值,也就意味著該程序能正確處理在這個范圍內的除了邊界值以外的其他任何有效輸入值。我們來用以上軟件字體的字號來舉例說明。軟件支持的字號范圍是:從8到72。那么8和72之間的所有支持的字號都可以被認為是等價類的測試用例。
-
測試工程師
+關注
關注
6文章
125瀏覽量
12735
發布評論請先 登錄

【華秋DFM】V4.6正式上線:工程師的PCB設計“好搭子”來了!
一個優秀的射頻測試工程師需要具備哪些技能?

硬件工程師面試/筆試經典 100 題


如何成為一名嵌入式軟件工程師?
長沙怎么這么難招硬件工程師呀

一位老電子工程師的十年職場感悟


嵌入式工程師常用的開發工具有哪些?
【面試題】人工智能工程師高頻面試題匯總:機器學習深化篇(題目+答案)

【面試題】人工智能工程師高頻面試題匯總:Transformer篇(題目+答案)

人工智能工程師高頻面試題匯總——機器學習篇


評論