Ouest-France
Ouest-France 創立於 1944 年,是法國第一大日報。它專注於本地和全國新聞,並且是發行量最高的日報,每天售出超過 624,000 份。這家領先的法國報紙除了兩個數位版本外,還在法國 12 個省份發行 53 種不同的地方報紙版本。Ouest-France 擁有約 1,400 名員工,其中約 550 名為記者,其餘員工則在技術、會計和軟體工程服務部門工作。該報紙還與 2,500 多名通訊員和超過 16,000 個發行合作夥伴合作。
然而,與世界各地的大多數報業公司一樣,隨著網際網路的出現,Ouest-France 的需求大幅下降。這促使該公司推出網站並將其內容搬到網路上。Ouest-France 的網站擁有 54 億獨立訪客,每月訪問次數超過 6,000 萬次,目前在法國國家資訊網站中排名第 9。
業務需求與挑戰
隨著越來越多的客戶使用 Ouest-France 的數位平台,該公司在 2017 年決定徹底改造該網站。此決定更多是出於技術上的必要性,而不僅僅是出於功能上的觀點。一些高階測試是手動執行的,軟體團隊在舊網站上進行了一些持續整合 (CI)。然而,由於缺乏功能文件和共享知識,導致網站的品質下降。這導致需要頻繁應用多個熱修補程式,這對公司來說既昂貴又具有潛在風險。
因此,需要以滿足 Ouest-France 業務需求的方式來解決軟體品質問題。該公司確定,品質只能透過全面的產品文件、共享和設計可執行的需求以及測試自動化來實現。此外,期望的信心和產品品質指向可能利用行為驅動開發 (BDD) 原則的解決方案。進一步的分析顯示,BDD 方法可以完美地將其優勢應用於 Ouest-France 期望的組織目標。
然而,也存在挑戰,因為採用 BDD 將意味著徹底改造現有的軟體開發流程。大多數產品負責人都不習慣 BDD 哲學。因此,確保 BDD 方法滲透到整個組織結構是必須克服的主要障礙。為了加強這種方法的採用並積極確保他們的產品負責人開始以「敏捷」的方式思考,Ouest-France 決定使用一種軟體工具,該工具可以作為黏合劑來建立他們設想的高品質網站。SmartBear Software 的 CucumberStudio 就是這個工具。
目標解決方案
當時,Ouest-France 並沒有完整的舊產品文件,這在一開始就造成了問題。CucumberStudio 協助他們建立了一份新網站的每個功能的完整清單,現在可以根據需要存取和分析。這讓公司能夠每天更新、建立和豐富他們的可執行需求集。這些以簡單測試情境形式呈現的需求作為即時文件儲存在 CucumberStudio 中,並且允許任何人快速了解每個功能。
這種簡化的 BDD 方法還促進了產品負責人、開發人員和測試人員之間的討論,從而將設計新可執行需求的時間從數小時縮短到幾分鐘。Ouest-France 在建立測試情境時開發並利用標準化的可重複使用動作詞,因此才能如此快速地設定需求。
Ouest-France 的 QA 經理 Florent Vaution 說:「我們面臨的一個主要障礙是可執行需求的細微程度。」為了應對此問題,他們決定將 BDD 方法分成功能級和技術級。前者主要包括使用者介面 (UI) 測試,從 Ouest-France 的角度來看,這被證明更難以自動化和維護,而且成本更高。後者包括直接在嵌入大多數功能的 API 上執行的測試。這些 API 測試的建立和執行速度更快,而且由於團隊目前具備的技能,維護起來也遠不那麼麻煩。
最初的另一個挑戰是與必須實施動作詞(即測試步驟)的開發人員的關係。因為他們從頭開始,所以由於涉及大量的重構,在初期建立動作詞字典的成本有點高。但是,透過建立他們的動作詞儲存庫並使其更強大,目前建立新自動化測試的成本幾乎為零。
最初,Ouest-France 的 QA 團隊只有兩個人,他們負責設定編寫可執行需求的規則並建立動作詞。然後,他們又增加了三名沒有 BDD 經驗的測試人員。儘管如此,團隊中的每個人都很快掌握了 BDD 哲學,並被委託獨立添加新功能。
一開始,Ouest-France 的 QA 團隊成員是 CucumberStudio 本身的唯一使用者。慢慢地,產品負責人和開發人員觀看了 QA 團隊如何使用 CucumberStudio 的演示,目的是訓練他們自己使用該工具來編寫新功能。QA 團隊成員是唯一負責功能和需求文件的人。但是,現在產品負責人和開發人員毫不猶豫地挑戰、更正甚至更改 QA 團隊編寫的功能。
使用 CucumberStudio 的另一個優點是,它允許 QA 團隊檢查是否已測試某個功能、如何測試以及該測試情境是否已存在動作詞,以避免重複。對於處理 400 多個測試情境和 500 個動作詞的 Ouest-France 而言,這尤其節省了寶貴的時間。
主要成果與結論
自從使用 CucumberStudio 實施 BDD 進行網站重新設計專案以來,Ouest-France 在 2017 年上半年就從「構想」階段進入「生產」階段。舊的網站和流程僅包含一些手動測試,而沒有測試自動化。新的網站和流程包含數百個自動化測試和極少的手動測試。
在實施 BDD 之前,他們平均每天有一個熱修補程式,但現在,他們可以及時地將變更遷移到新網站的生產環境。
- 情境設計期間的自動完成
- 情境中變數的易用性
- 測試執行的建立速度
- 即時文件
- CucumberStudio 發布工具,其中包含指向 SCM 和 Jenkins 的連結