2009-12-26 152 views
3

我正在尋找某種動態測試工具。讓我解釋我的意思。我有一個模塊化的應用程序,我的業務策略的一部分是獨立授權每個模塊。我想測試一些事情,例如,即使其他模塊不存在於文件系統中,一個模塊的測試仍然通過。動態測試工具

我希望能夠在我的測試套件中驗證的另一件事是,不相關的設置不應該改變它們不應該耦合到的行爲。

要爲每個測試用例編寫一個ad-hoc腳本並注入缺陷將是微不足道的,但聽起來像違反了DRY。是否有任何設計用於這種缺陷注入的工具,特別是在PHP中?

因此,在理想的世界中,我希望能夠編寫一套「環境修改」腳本,每個腳本都會以某種方式改變環境。對於每個「環境修改」phpunit應運行我所有的測試。我應該能夠在某種報告中查看哪些測試失敗,在哪些「極端環境」下測試失敗

因此,通過N「環境修改」和M測試,失敗的總和&應該等於N倍M,類似於像硒這樣的GUI測試工具在每個不同的環境(瀏覽器)上運行套件

回答

1

這可能會使用phpUnit和fixtures中的一些魔法。但我會研究一些構建工具(如Ant或Phing),它會從源代碼庫創建一個結帳,設置所需的模塊,然後運行phpUnit測試。

Phing或Ant可以定期從持續集成系統(如phpUnderControlHudson)調用,因此您可以定期獲得自動反饋。

+0

這是一個很好的方法! – powtac 2009-12-26 23:18:40

+0

是的,我正在使用phing已經爲每個模塊生成時,所以你會定義替代目標,包括測試運行他們和「粘合」在一起的報告? Wish CC適合我。請參閱(CC-962)無法訪問儀表板實例。 使phing成爲困難的唯一辦法是在我的文件集標籤之間發生重複數量。我想我將不得不修改phing以允許文件集繼承。你知道任何已經存在的插件嗎? – 2009-12-28 17:41:49