天天看點

靈活開發時代:軟體安全測試需更靈活

我們生活在一個軟體定義的世界中。軟體幾乎接觸到方方面面。任何努力保持競争優勢或市場先機的企業,都必須在某種程度上重新整合其軟體。這會導緻快速的開發方法,如靈活開發和開發運維,促進持續的産品改進。但是,這些新的開發方法能夠使測試最小化,反過來又可能破壞性能和安全性。

靈活開發時代:軟體安全測試需更靈活

為保持競争優勢,企業必須提供高品質的應用體驗。此外,安全是必須的而不是“有安全性也不錯”。因而,持續的測試方法已經日益重要,其動态性就像新的開發過程一樣。幸運的是,企業越來越明白這種不斷增長的需要,并且重新思考整個過程。

推動測試更新

軟體開發的新步伐給測試人員帶來一個非常确切的問題,那就是測試者在沒有規劃好明确路線圖的情況下必須快速響應。如果産品的開發團隊被招集起來按照最新的時間表進行産品更新,直至釋出日期再次更改,這往往會導緻執行不力,因為解決方案存在未知的漏洞和缺陷。

但是,即使消費者的期望促進更快的開發步伐,也會提出品質問題。終端使用者期望快速、穩定和安全。及早測試和經常測試已經慢慢占據了開發者的思想,而易于使用和功能的重要性也繼續增長。還有一個問題,即新應用和裝置如何使用。軟體無處不在,糟糕的開發方法可能導緻大問題,其範圍涉及從自動制造問題到個人資訊的失竊等諸多方面。新一波技術所産生的複雜性要求更為嚴格的評估周期。

培育改變的文化

随着開發越來越快,企業和客戶需要在思想觀念方面有所轉變。促進更快開發的文化還需要倡導靈活的測試方法。

這要從測試方法和教育訓練開始。開發者、測試人員和版本管理者需要認可和實施一種連續性的測試觀念。更具體地說,這些人員需要在此過程中得到教育訓練,在一個快速開發周期中進行測試時,還要有可用工具。跨隊的交流也很重要,尤其是在質保經理和開發者之間的交流更為重要。在完成此步驟後,代碼将更加穩定,而漏洞的解決速度也會更快。适當的工具可以模拟真實的情況,提供共享的測試資料環境,并且總保持可用性,還能夠與主要的代碼庫架構相內建。

在成功實施後,持續的測試和教育訓練可以防止漏洞和性能問題的産生,同時又可以使開發人員在将來更好的找到問題。确認可疑活動和采取什麼行動也會變得更為容易。企業應當避免利用有限規模的測試環境,如内部開發攻擊,或者是衆包探測,否則就會帶來一種錯誤的安全感。

最後,在并非為滿足緊迫的時間表而進行的測試中,關鍵的問題是不“走捷徑”。

疊代開發确實意味着在問題出現時并不能解決。我們還希望進一步擴充,以求在下一個軟體版本中包括另一種特性。這就需要在增加新特性和測試已有特性之間尋求平衡。适當的方法有助于減少缺陷、響應時間,以及因業績不佳對品牌造成的負面影響。開發者、測試者、版本管理者如果及早測試,并且在将其貫穿整個過程,就有能力增加穩定性和安全性。

本文作者:趙長林

來源:51CTO

繼續閱讀