python接口測試


上篇已經用mock server配置了接口。

python代碼編寫接口測試,主要運用了unittest、requests兩個框架

import json
import unittest, requests


class getCase(unittest.TestCase):

	#測試用例之前執行
	def setUp(self):
		print("testing start")
		self.demian = "http://localhost:12306/"
		self.headers = {'content-type' :'application/json'}
		self.json_data = json.dumps({"new" : "QQ","old" : "taobao"})

	#測試用例執行完之后執行
	def tearDown(self):
		print("testing engding")

		#測試get接口
	def test_get_case(self):
		results = requests.get(self.url('gets')).json()
		self.assertEqual(len(results), 2)

		self.assertEqual(results[0]['title'], 'java')
		self.assertEqual(results[0]['version'], '1.8.0')

		self.assertEqual(results[1]['title'], 'python')
		self.assertEqual(results[1]['version'], '3.5')

		#測試post接口
	def test_post_case(self):
		results = requests.post(self.url('posts'), data = self.json_data, headers = self.headers)
		re= results.json()
		self.assertEqual(results.status_code, 200)
		self.assertEqual(len(re), 2)

		self.assertEqual(re[0]['fruit'], 'apple')
		self.assertEqual(re[0]['computer'], 'lenvo')

		self.assertEqual(re[1]['mobile'], 'iphone')
		self.assertEqual(re[1]['book'], 'testing')

		#測試put接口
	def test_edit_case(self):
		results = requests.put(self.url('edit'), data = self.json_data, headers = self.headers)
		re= results.json()
		self.assertEqual(results.status_code, 200)
		self.assertEqual(re['success'], 'true')

		#測試delete接口
	def test_delete_case(self):
		results = requests.delete(self.url('delete'))
		re= results.json()
		self.assertEqual(results.status_code, 200)
		self.assertEqual(re['success'], 'true')


	def url(self, path):
		return self.demian + path

if __name__ == '__main__':
	unittest.main()

 運行結果:


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM