phpunit 單元測試

2021-09-21 12:49:24 字數 4941 閱讀 3024

1、ubuntu12.04安裝

2、測試案例phpunit1.php(測試的依賴關係)

展示如何用@depends標註來表達測試方法之間的依賴關係

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

<?php

classstacktestextendsphpunit_framework_testcase

/**

* @depends testempty

*/

publicfunctiontestpush(array$stack)

/**

* @depends testpush

*/

publicfunctiontestpop(array$stack)

}

3、測試結果

1

2

3

4

5

phpunit phpunit1.php

phpunit 3.7.27 by sebastian bergmann.

...

time: 4 ms, memory: 4.25mb

ok (3 tests, 5 assertions)

4、為了快速定位缺陷,我們希望把注意力集中於相關的失敗測試上。這就是為什麼當某個測試所依賴的測試失敗時,phpunit會跳過這個測試。通過利用測試之間的依賴關係,缺陷定位得到了改進。

如下案例phpunit2.php:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

<?php

classdependencyfailuretestextendsphpunit_framework_testcase

/**

* @depends testone

*/

publicfunctiontesttwo()

}

?>

5、執行結果

1

2

3

4

5

6

7

8

9

10

phpunit phpunit2.php

phpunit 3.7.27 by sebastian bergmann.

fs

time: 2 ms, memory: 4.00mb

there was 1 failure:

1) dependencyfailuretest::testone

failed asserting thatfalseistrue.

/home/wwwroot/local.guazi.com/webroot/phpunit2.php:6

failures!

tests: 1, assertions: 1, failures: 1, skipped: 1.

6、測試可以使用多於乙個@depends標註。phpunit不會更改測試的執行順序,因此你需要自行保證某個測試所依賴的所有測試均出現於這個測試之前。

擁有多個@depends標註的測試,其第乙個引數是第乙個生產者提供的基境,第二個引數是第二個生產者提供的基境,以此類推

案例phpunit3.php

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

<?php

classmultipledependenciestestextendsphpunit_framework_testcase

publicfunctiontestproducersecond()

/**

* @depends testproducerfirst

* @depends testproducersecond

*/

publicfunctiontestconsumer()

}

?>

7、執行結果

1

2

3

4

5

phpunit phpunit3.php

phpunit 3.7.27 by sebastian bergmann.

...

time: 4 ms, memory: 4.25mb

ok (3 tests, 3 assertions)

PHPUnit單元測試

單元測試 phpunit 定義乙個用來被測試的類remoteconnect author json class remoteconnect fp fsockopen servername,80 return fp?true false public function returnsampleobje...

PHPUNIT 單元測試

在windows上的安裝可以參考其手冊 1.為php的二進位制可執行檔案建立 乙個目錄,如c bin 2.將c bin新增到系統環境變數中,3.開啟命令列cmd 4.新建批處理指令碼,c bin phpunit.cmd cd c bin echo php dp0phpunit.phar phpuni...

單元測試 PHPUnit 安裝

單元測試 可提高 後期的維護性 可把程式設計成易於呼叫和測試的 迫使解除軟體中的耦合 自動化的單元測試避免 出現回歸 編寫之後可隨時快速執行測試 linux 下預設安裝好,重灌 wget php go pear.phar win 系統 在命令列視窗中找到 php 的安裝目錄,執行 go pear.b...