自动化测试===unittest和requests接口测试案例,…

2018-06-17 23:41:35来源:未知 阅读 ()

新老客户大回馈,云服务器低至5折

import requests
import json
import unittest


class MyTest(unittest.TestCase):
    def setUp(self):
        print("[+]start")
    
    def tearDown(self):
        print("[+]end")
    
    def zhongtong(self,type = "zhongtong", id = "719857434111"):
        self.url = "http://www.kuaidi100.com/query"
        self.params = {
        "type":type,
        "postid":id
        }
        self.headers={'user-agent': 'my-app/0.0.1'}
        r = requests.get(url = self.url, params = self.params , headers = self.headers)
        print(r.status_code)
        return r

        

class ExpressInquiry(MyTest):
    def test001_type_valid(self):
        print("00001")
        zhongtong = self.zhongtong(type = "shentong")
        self.assertIn("快递公司参数异常",zhongtong.text)
    
    def test002_type_invalid(self):
        print("00002")
        zhongtong = self.zhongtong(type = "sssssssssssss")
        self.assertIn("参数错误",zhongtong.text)

    def test003_id_valid(self):
        print("00003")
        id = self.zhongtong(id = "719857434155")
        self.assertIn("交通工程学院菜鸟驿站",id.text)

    def test004_id_invalid(self):
        print("00004")
        id = self.zhongtong(id = "123")
        self.assertIn("参数错误",id.text)
    
    def test005_type_id_invalid(self):
        print("00005")
        type_and_id = self.zhongtong(type = "dads",id = "7777")
        #print(type_and_id.url)
        #print(type_and_id.text)
        self.assertIn("参数错误",type_and_id.text)

    def test006_type_id_null(self):
        print("00006")
        null = self.zhongtong(type = "", id = "")
        #print(null.url)
        #print(null.text)
        self.assertIn("参数错误",null.text)

def suite():
    suite = unittest.TestSuite()
    suite.addTest(ExpressInquiry("test001_type_valid"))
    suite.addTest(ExpressInquiry("test002_type_invalid"))
    suite.addTest(ExpressInquiry("test003_id_valid"))
    suite.addTest(ExpressInquiry("test004_id_invalid"))
    suite.addTest(ExpressInquiry("test005_type_id_invalid"))
    suite.addTest(ExpressInquiry("test006_type_id_null"))
    unittest.TextTestRunner().run(suite)

    


if __name__ == '__main__':
    #unittest.main(exit = False , verbosity = 2)
    #它是全局方法,把它屏蔽后,不在suite的用例就不会跑,exit = False表示中间有用例失败也继续执行;还有比较常用的verbosity=2,表示显示def名字
    suite()             

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:python socket单线程通信

下一篇:QQ空间Python爬虫(3)---终章