您的位置:

关于python实现http分析的信息

本文目录一览:

python http接口测试脚本怎么写

1. 用Python封装被测试接口,对于HTTP接口我们通常会采用 GET和POST 2种调用方式去访问,所以必须把这2种方式都封装进去

# -*- coding:gb2312 -*-

import urllib2,urllib

'''

函数说明:url 特殊字符编码转换

作者:xiaonan

输入参数:待转换的字符串数据

输出参数:转换完成后的字符串数据

'''

def urlcode(data):

return urllib2.quote(str(data))

'''

函数说明:获取用户信息的API接口

作者:xiaonan

输入参数:用户名(uname),HTTP接口调用方式(GET或者POST)

输出参数:HTTP接口调用返回数据

'''

def GetUserInfo(uname,method):

if method == 'GET':

url = ''+urlcode(uname)

result = urllib2.urlopen(url).read()

return result

if method == 'POST':

url = ''

values = {'uname' : uname}

data = urllib.urlencode(values)

req = urllib2.Request(url, data)

response = urllib2.urlopen(req)

result = response.read()

return result

2. 编写、组织测试脚本, 准备测试数据

根据Testcase的具体业务逻辑用事先准备好的测试数据去调用封装好的API接口,验证实际返回结果是否与预期返回结果一致.

测试数据可以以各种形式存放,如Excel数据表:

TestCaseName uname method Expected Result

TestCase1 aaaa GET ....

TestCase2 aaaa POST ....

TestCase3 bbbb GET ....

... ... ... ....

# -*- coding:gb2312 -*-

import xlrd

'''

函数说明: Testcase 脚本

作者:xiaonan

输入参数:测试数据,API接口

输出参数:测试日志,测试报告

'''

def GetUser():

bk = xlrd.open_workbook(excel文件名称) # 打开excel文件

sh = bk.sheet_by_name(excel表名)# 打开excel表

nrows = sh.nrows # 获取总行数

for i in range(1,nrows):

TestCase = sh.cell_value(i,0)

uname = sh.cell_value(i,1)

method = sh.cell_value(i,2)

EX_Result=sh.cell_value(i,3)

WriterLog('Testcase Name:'+TestCase+'TestData: uname = '+uname+' ,method = '+method+' ,EX_Result = ' + ,EX_Result) # 写测试日志

AC_result = GetUserInfo(uname,method) # 调用API接口

WriterLog('AC_result = ' + AC_result) # 写测试日志

if EX_Result == AC_result: #实际结果与预期结果对比

WriterLog(...) #写测试日志

WriterReport(...)#写测试报告

else

WriterLog(...)#写测试日志

WriterReport(...)#写测试报告

3. 组织测试套,用驱动文件去调用执行所有测试套件,完成相关测试,并生成测试日志及测试报告.

# -*- coding:gb2312 -*-

'''

函数说明: Testsuit Driver驱动脚本

作者:xiaonan

输入参数:TestCase 脚本

输出参数:测试日志,测试报告

'''

if __name__ == '__main__':

...

WriterLog() #写测试日志

GetUser() # TestCase 脚本

...

...

Report(....) # 统计汇总所有测试报告数据,以文件或页面形式呈现.

4. 执行测试脚本,分析测试结果. 根据测试报告,如果有Bug则提交.

python 怎么实现http服务器

简而言之,它是在物理服务器上搭建的一个网络连接服务器(networking server),永久地等待客户端发送请求。当服务器收到请求之后,它会生成响应并将 其返回至客户端。客户端与服务器之间的通信,是以HTTP协议进行的。客户端可以是浏览器,也可以是任何支持HTTP协议的软件。

那么,网络服务器的简单实现形式会是怎样的呢?下面是我对此的理解。示例代码使用Python语言实现,不过即使你不懂Python语言,你应该也可以从代码和下面的 解释中理解相关的概念:

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

import socket

HOST, PORT = '', 8888

listen_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

listen_socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)

listen_socket.bind((HOST, PORT))

listen_socket.listen(1)

print 'Serving HTTP on port %s ...' % POR

如何用python分析从浏览器到服务器的HTTP GET请求的内容。

用response = requests.get(url),对response.content的内容进行正则分析或者用bs4等模块进行分析即可