• PHPUnit初试


    先测试了一下加减,检查一下环境,又调用函数测试了服务器名。

    源代码:

     1 class DemoController extends ThinkController
     2 {
     3 
     4     /**
     5      * @assert (5, 8) == 13
     6      * @assert (16, 76) == 92
     7      * @assert (6, 16) == 32
     8      * @assert (6, 4) == 0
     9      * @assert ('abc', 1) == 2
    10      * @param int $a
    11      * @param int $b
    12      * @return int
    13      */
    14     public function plus($a, $b)
    15     {
    16         return $a + $b;
    17     }
    18 
    19      /**
    20      * @assert (14, 8) == 6
    21      * @assert (16, 6) == 10
    22      * @assert (6, 4) == 0
    23      * @assert ('45', 1) == 44
    24      * @param int $a
    25      * @param int $b
    26      * @return int
    27      */
    28     public function subtract($a, $b)
    29     {
    30         return $a - $b;
    31     }
    32 
    33     public function connectToServer($serverName = null)
    34     {
    35         if ($serverName == null) {
    36             throw new Exception("这不是一个服务器名");
    37         }
    38         $fp = fsockopen($serverName, 8080);
    39         return ($fp) ? true : false;
    40     }
    41 
    42 
    43 }

    生成测试文件:

      1 class DemoControllerTest extends PHPUnit_Framework_TestCase
      2 {
      3 
      4     /**
      5      * @var DemoController
      6      */
      7     protected $object;
      8 
      9     /**
     10      * Sets up the fixture, for example, opens a network connection.
     11      * This method is called before a test is executed.
     12      */
     13     protected function setUp()
     14     {
     15         $this->object = new DemoController;
     16     }
     17 
     18     /**
     19      * Tears down the fixture, for example, closes a network connection.
     20      * This method is called after a test is executed.
     21      */
     22     protected function tearDown()
     23     {
     24         
     25     }
     26 
     27     /**
     28      * Generated from @assert (5, 8) == 13.
     29      *
     30      * @covers HomeControllerDemoController::plus
     31      */
     32     public function testPlus()
     33     {
     34         $this->assertEquals(
     35                 13, $this->object->plus(5, 8)
     36         );
     37     }
     38 
     39     /**
     40      * Generated from @assert (16, 76) == 92.
     41      *
     42      * @covers HomeControllerDemoController::plus
     43      */
     44     public function testPlus2()
     45     {
     46         $this->assertEquals(
     47                 92, $this->object->plus(16, 76)
     48         );
     49     }
     50 
     51     /**
     52      * Generated from @assert (6, 16) == 32.
     53      *
     54      * @covers HomeControllerDemoController::plus
     55      */
     56     public function testPlus3()
     57     {
     58         $this->assertEquals(
     59                 32, $this->object->plus(6, 16)
     60         );
     61     }
     62 
     63     /**
     64      * Generated from @assert (6, 4) == 0.
     65      *
     66      * @covers HomeControllerDemoController::plus
     67      */
     68     public function testPlus4()
     69     {
     70         $this->assertEquals(
     71                 0, $this->object->plus(6, 4)
     72         );
     73     }
     74 
     75     /**
     76      * Generated from @assert ('abc', 1) == 0.
     77      *
     78      * @covers HomeControllerDemoController::plus
     79      */
     80     public function testPlus5()
     81     {
     82         $this->assertEquals(
     83                 2, $this->object->plus('abc', 1)
     84         );
     85     }
     86 
     87     /**
     88      * Generated from @assert (14, 8) == 6.
     89      *
     90      * @covers HomeControllerDemoController::subtract
     91      */
     92     public function testSubtract()
     93     {
     94         $this->assertEquals(
     95                 6, $this->object->subtract(14, 8)
     96         );
     97     }
     98 
     99     /**
    100      * Generated from @assert (16, 6) == 10.
    101      *
    102      * @covers HomeControllerDemoController::subtract
    103      */
    104     public function testSubtract2()
    105     {
    106         $this->assertEquals(
    107                 10, $this->object->subtract(16, 6)
    108         );
    109     }
    110 
    111     /**
    112      * Generated from @assert (6, 4) == 0.
    113      *
    114      * @covers HomeControllerDemoController::subtract
    115      */
    116     public function testSubtract3()
    117     {
    118         $this->assertEquals(
    119                 0, $this->object->subtract(6, 4)
    120         );
    121     }
    122 
    123     /**
    124      * Generated from @assert ('abc', 1) == 0.
    125      *
    126      * @covers HomeControllerDemoController::subtract
    127      */
    128     public function testSubtract4()
    129     {
    130         $this->assertEquals(
    131                 44, $this->object->subtract('45', 1)
    132         );
    133     }
    134 
    135     /**
    136      * @covers HomeControllerDemoController::connectToServer
    137      * @todo   Implement testConnectToServer().
    138      */
    139     public function testConnectToServer()
    140     {
    141 //        // Remove the following lines when you implement this test.
    142 //        $this->markTestIncomplete(
    143 //                'This test has not been implemented yet.'
    144 //        );
    145         $serverName = 'wwwcom';
    146         $this->assertTrue($this->object->connectToServer($serverName) === false);
    147     }
    148     public function testConnectToServer2()
    149     {
    150         $serverName = 'www.baidu.com';
    151         $this->assertTrue($this->object->connectToServer($serverName) !== false);
    152     }

    这里的服务器测试用例是手动加上去的!

    执行结果:

     1 ..FFF..F..F                                                       11 / 11 (100%)
     2 
     3 Time: 44.42 seconds, Memory: 8.75Mb
     4 
     5 There were 5 failures:
     6 
     7 1) HomeControllerDemoControllerTest::testPlus3
     8 Failed asserting that 22 matches expected 32.
     9 
    10 D:wampwwwwxportal	estsApplicationHomeControllerDemoController.classTest.php:67
    11 
    12 2) HomeControllerDemoControllerTest::testPlus4
    13 Failed asserting that 10 matches expected 0.
    14 
    15 D:wampwwwwxportal	estsApplicationHomeControllerDemoController.classTest.php:79
    16 
    17 3) HomeControllerDemoControllerTest::testPlus5
    18 Failed asserting that 1 matches expected 2.
    19 
    20 D:wampwwwwxportal	estsApplicationHomeControllerDemoController.classTest.php:91
    21 
    22 4) HomeControllerDemoControllerTest::testSubtract3
    23 Failed asserting that 2 matches expected 0.
    24 
    25 D:wampwwwwxportal	estsApplicationHomeControllerDemoController.classTest.php:127
    26 
    27 5) HomeControllerDemoControllerTest::testConnectToServer2
    28 Failed asserting that false is true.
    29 
    30 D:wampwwwwxportal	estsApplicationHomeControllerDemoController.classTest.php:158
    31 
    32 FAILURES!
    33 Tests: 11, Assertions: 11, Failures: 5.
    34 完成。
  • 相关阅读:
    websphere、weblogic上JConsole的配置
    JMX连接WebSphere和WebLogic
    通过JMX监控管理weblogic的运行
    Manage, Administrate and Monitor GlassFish v3 from Java code usingAMX & JMX
    Harbor 简要安装说明
    VCSA 添加新管理用户的方法
    Oracle 修改参数
    CentOS8 设置开机自动登录账户的方法
    MYSQL使用mydumper备份恢复操作简介
    浅析网站上设置的广告位不显示问题:如何避免Adblock广告拦截
  • 原文地址:https://www.cnblogs.com/dragon16/p/5595176.html
Copyright © 2020-2023  润新知