# 測試
只要你編程,就一定有錯誤。
作為程序開發的一個基本要求,我們必須對程序是否能正確運行進行測試。在PHP的世界中,我們可以使用[PHPUnit](https://phpunit.de/),它和Symfony的配合是非常好的。
測試分為兩種,一種是單元測試(Unit Test),一種是功能測試(Functional Test)。PHPUnit可以配合SF3完成這兩種測試。
具體的測試用例,我們會在后面編程的時候加以詳細討論。這里就不再展開。
另外,測試往往要用到很多測試數據,這就牽涉到樣本數據的導入。我們也會在具體編程時加以討論。
要在SF3的應用中使用PHPUnit,只要在根目錄下運行:
~~~
phpunit
~~~
就可以了。
注意:我們假定PHPUnit的安裝方式是全局的,同時`phpunit.xml`文件保存在項目根目錄下(也就是和`composer.json`同一個目錄)。
如果一切正常,那么會有一個類似如下的提示:

- 引言
- 1 LAMP
- 1.1 安裝虛擬機
- 1.2 安裝Vagrant
- 1.3 安裝Ubuntu
- 1.4 安裝Apache 2
- 1.5 安裝PHP
- 1.6 安裝MySQL服務器
- 1.7 最后的微調
- 1.8 設置一個虛擬主機
- 1.9 一個趁手的IDE
- 2 Symfony 3和重要構件
- 2.1 Symfony 3
- 2.2 Doctrine
- 2.3 Twig
- 2.4 Composer
- 3 Symfony重要概念
- 3.1 MVC
- 3.2 Bundle/包
- 3.3 Route/路由
- 3.4 Controller/控制器
- 3.5 Entity/實體
- 3.6 Repository/倉庫
- 3.7 Template/模板
- 3.8 Test/測試
- 4 藏書管理程序的結構
- 5 創建應用
- 5.1 建立版本管理
- 5.2 建立數據庫
- 5.3 應用結構
- 5.4 建立數據庫實體
- 5.5 樣本數據
- 5.6 路由
- 5.7 模板
- 5.8 開始編寫首頁
- 5.9 書籍詳情頁面
- 5.10 書籍列表頁面
- 5.11 書籍搜索
- 6 用戶和后臺
- 7 結語