2013 Postgraduate Entrance Examination Time PHPUnit Preliminary Examination

WBOY
Release: 2016-07-28 08:30:04
Original
805 people have browsed it

First tested the addition and subtraction, checked the environment, and then called the function to test the server name.

Source code:

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

Generate test file:

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

The server test cases here are added manually!

Execution result:

<span> 1</span> ..FFF..F..F                                                       <span>11</span> / <span>11</span> (<span>100</span>%<span>)
</span><span> 2</span><span> 3</span> Time: <span>44.42</span> seconds, Memory: <span>8</span><span>.75Mb
</span><span> 4</span><span> 5</span> There were <span>5</span><span> failures:
</span><span> 6</span><span> 7</span><span>1</span><span>) Home\Controller\DemoControllerTest::testPlus3
</span><span> 8</span> Failed asserting that <span>22</span> matches expected <span>32</span><span>.
</span><span> 9</span><span>10</span> D:\wamp\www\wxportal\tests\Application\Home\Controller\DemoController.classTest.php:<span>67</span><span>11</span><span>12</span><span>2</span><span>) Home\Controller\DemoControllerTest::testPlus4
</span><span>13</span> Failed asserting that <span>10</span> matches expected <span>0</span><span>.
</span><span>14</span><span>15</span> D:\wamp\www\wxportal\tests\Application\Home\Controller\DemoController.classTest.php:<span>79</span><span>16</span><span>17</span><span>3</span><span>) Home\Controller\DemoControllerTest::testPlus5
</span><span>18</span> Failed asserting that <span>1</span> matches expected <span>2</span><span>.
</span><span>19</span><span>20</span> D:\wamp\www\wxportal\tests\Application\Home\Controller\DemoController.classTest.php:<span>91</span><span>21</span><span>22</span><span>4</span><span>) Home\Controller\DemoControllerTest::testSubtract3
</span><span>23</span> Failed asserting that <span>2</span> matches expected <span>0</span><span>.
</span><span>24</span><span>25</span> D:\wamp\www\wxportal\tests\Application\Home\Controller\DemoController.classTest.php:<span>127</span><span>26</span><span>27</span><span>5</span><span>) Home\Controller\DemoControllerTest::testConnectToServer2
</span><span>28</span> Failed asserting that <span>false</span><span>is</span><span>true</span><span>.
</span><span>29</span><span>30</span> D:\wamp\www\wxportal\tests\Application\Home\Controller\DemoController.classTest.php:<span>158</span><span>31</span><span>32</span> FAILURES!
<span>33</span> Tests: <span>11</span>, Assertions: <span>11</span>, Failures: <span>5</span><span>.
</span><span>34</span> 完成。
Copy after login

The above has introduced the PHPUnit preliminary test time for the 2013 postgraduate entrance examination, including the content of the 2013 postgraduate entrance examination preliminary test time. I hope it will be helpful to friends who are interested in PHP tutorials.

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
About us Disclaimer Sitemap
php.cn:Public welfare online PHP training,Help PHP learners grow quickly!