如何學習white box testing
How to learn white box testing
http://www.michaeldkelly.com/blog/archives/214
在討論一個好的QA要具備什麼條件時, 曾經提到QA要能懂code, 要能做white box testing. 可是對於大部分的QA來說, 這對他們來說是一個很大的挑戰. 如果你是科班出身, 我想應該會比較簡單. 但如果非科班出身, 那確實有很多東西要學
以下是一些建議方向
1. Learn the basics of computer science
我想有些入門的compter science科目是值得學習一下, 像是data structure, operating system, database, assemblers, compilers, interpreters, algorithms, software engineering 和 discrete mathematics. 這些都是科班生都要學習的科目.
不要認為他們太專業了, 這些對於提昇你內功有很大的幫助. 但是千萬要記住, 通常越是基本功, 練起來都是越枯燥, 越無趣.
2. Get comfortable working in a language
C#是個值得學習的語言, 尤其如果你的受測軟體只在Windows平台上, 那更是要學. 基本上它能support的功能, 提供的程式庫應有盡有, 再加上它其實很popular, 學了不會有害處.
如果是跨平台, Perl還是首選, 畢竟用的人還是最多, 該有的modules, resources, 和examples都十分全, 要會Perl的工作也算不少.
作者本身是比較喜歡Ruby. 他自己本身學過Pascal, C, C++和Java
但是不管你選擇哪種語言, 最重的是要能夠很順暢的運用它. 即使你無法寫出複雜的程式碼, 但至少你也要能看懂它
3. Practice writing unit tests, stubs, and harnesses
再學習一個程式語言時, 最好的方法是一直練習它. 那寫unit test, stub, 和harness便是一個很好的選擇.
因為這些東西可以不用寫的太複雜 (因為你可以自行決定要做到多少), 但是它提供很好的練習機會. 並且也可以幫助你測試工作的進行, 因為你可以藉由它控制你想要的測試狀況(這正是使用mock object的好時機).
4. Download and play with tools
用tool當然很需要, 它可以幫助加速你工作的進行.
尤其是你要做一些分析的工作時, 像是network packet monitor, performance monitor, code coverage tool, memory usage monitor, static analysis tool等, 都可以讓你快速的得到你想要的答案. 否則這些工作若只是manually的進行的話, 你可能會瘋掉
作者認為你在opensourcetesting.org., 應該可以找到不少好工具幫你
5. Learn about security testing
作者認為security testing是white box tester的終極挑戰, 因為他不但要有 security的knowledge外, 你還要懂code, 並且其他computer science的knowledge也都是要懂. 這樣當你發現線索時, 才能搭配相關的knowledge找出答案.
作者推薦了一個不錯的網站 Open Web Application Security Project (OWASP), 可以幫助你做security testing, 大家可以去看看
http://www.owasp.org/index.php/Main_Page
How to learn white box testing
http://www.michaeldkelly.com/blog/archives/214
在討論一個好的QA要具備什麼條件時, 曾經提到QA要能懂code, 要能做white box testing. 可是對於大部分的QA來說, 這對他們來說是一個很大的挑戰. 如果你是科班出身, 我想應該會比較簡單. 但如果非科班出身, 那確實有很多東西要學
以下是一些建議方向
1. Learn the basics of computer science
我想有些入門的compter science科目是值得學習一下, 像是data structure, operating system, database, assemblers, compilers, interpreters, algorithms, software engineering 和 discrete mathematics. 這些都是科班生都要學習的科目.
不要認為他們太專業了, 這些對於提昇你內功有很大的幫助. 但是千萬要記住, 通常越是基本功, 練起來都是越枯燥, 越無趣.
2. Get comfortable working in a language
C#是個值得學習的語言, 尤其如果你的受測軟體只在Windows平台上, 那更是要學. 基本上它能support的功能, 提供的程式庫應有盡有, 再加上它其實很popular, 學了不會有害處.
如果是跨平台, Perl還是首選, 畢竟用的人還是最多, 該有的modules, resources, 和examples都十分全, 要會Perl的工作也算不少.
作者本身是比較喜歡Ruby. 他自己本身學過Pascal, C, C++和Java
但是不管你選擇哪種語言, 最重的是要能夠很順暢的運用它. 即使你無法寫出複雜的程式碼, 但至少你也要能看懂它
3. Practice writing unit tests, stubs, and harnesses
再學習一個程式語言時, 最好的方法是一直練習它. 那寫unit test, stub, 和harness便是一個很好的選擇.
因為這些東西可以不用寫的太複雜 (因為你可以自行決定要做到多少), 但是它提供很好的練習機會. 並且也可以幫助你測試工作的進行, 因為你可以藉由它控制你想要的測試狀況(這正是使用mock object的好時機).
4. Download and play with tools
用tool當然很需要, 它可以幫助加速你工作的進行.
尤其是你要做一些分析的工作時, 像是network packet monitor, performance monitor, code coverage tool, memory usage monitor, static analysis tool等, 都可以讓你快速的得到你想要的答案. 否則這些工作若只是manually的進行的話, 你可能會瘋掉
作者認為你在opensourcetesting.org., 應該可以找到不少好工具幫你
5. Learn about security testing
作者認為security testing是white box tester的終極挑戰, 因為他不但要有 security的knowledge外, 你還要懂code, 並且其他computer science的knowledge也都是要懂. 這樣當你發現線索時, 才能搭配相關的knowledge找出答案.
作者推薦了一個不錯的網站 Open Web Application Security Project (OWASP), 可以幫助你做security testing, 大家可以去看看
http://www.owasp.org/index.php/Main_Page
全站熱搜
留言列表