天天看點

python接口測試(三)

引入unittest架構

get請求

<code>#coding: utf-8</code>

<code>import</code> <code>unittest</code>

<code>import</code> <code>requests</code>

<code>import</code> <code>json</code>

<code>class</code> <code>TestGet(unittest.TestCase):</code>

<code>    </code><code>def</code> <code>setUp(</code><code>self</code><code>):</code>

<code>        </code><code>self</code><code>.test_url </code><code>=</code> <code>'http://localhost:8080/jenkins/api/json?tree=jobs[name]'</code>

<code>    </code><code>def</code> <code>test_get(</code><code>self</code><code>):</code>

<code>        </code><code>self</code><code>.r </code><code>=</code> <code>requests.get(</code><code>self</code><code>.test_url)</code>

<code>        </code><code>'''</code>

<code>        </code><code>result = self.r.text</code>

<code>        </code><code>json_result = json.loads(result) #反序列化過程</code>

<code>        </code><code>json_result </code><code>=</code> <code>self</code><code>.r.json()  </code><code>#反序列化等同于上面注釋代碼</code>

<code>        </code><code>print</code> <code>json_result</code>

<code>        </code><code>self</code><code>.assertEquals(json_result[</code><code>'jobs'</code><code>][</code><code>0</code><code>][</code><code>'name'</code><code>],</code><code>'check_python_version'</code><code>)</code>

<code>if</code> <code>__name__ </code><code>=</code><code>=</code> <code>"__mian__"</code><code>:</code>

<code>    </code><code>unittest.mian()</code>

post請求

<code>class</code> <code>TestPost(unittest.TestCase):</code>

<code>        </code><code>self</code><code>.test_url </code><code>=</code> <code>'http://localhost:8080/jenkins/job/check_python_version/build'</code>

<code>    </code><code>def</code> <code>test_post(</code><code>self</code><code>):</code>

<code>        </code><code>self</code><code>.r </code><code>=</code> <code>requests.post(</code><code>self</code><code>.test_url, data</code><code>=</code><code>{}, auth</code><code>=</code><code>(</code><code>'admin'</code><code>, </code><code>'123456'</code><code>))</code>

<code>        </code><code>print</code> <code>self</code><code>.r.status_code</code>

<code>        </code><code>self</code><code>.assertEqual(</code><code>self</code><code>.r.status_code, </code><code>200</code><code>)</code>

<code></code>

本文轉自cqtesting51CTO部落格,原文連結: http://blog.51cto.com/cqtesting/1760523,如需轉載請自行聯系原作者