老李分享:Python开发性能测试脚本

老李分享:Python开发性能测试脚本

 

  测试开发工程师的工作主要是根据测试目标来完成,帮助测试人员完成测试目标,测试的业务需求是测试人员提出,但是由于环境的制约,手中没有性能测试工具的时候,性能测试的工作又必须完成,测试开发工程师会按照测试人员提出需求来开发脚本,下面是我在poptest测试开发工程师就业培训中写的一个脚本,这套脚本进行了简化,去掉教学脚本中服务器性能指标的采集脚本部分,去掉了频繁请求服务器的次数脚本部分,去掉了thinktime的时长脚本等等。

    

'''
Ceated on 2015-10-8
@author: laoli
create project: testingproject
'''
import httplib
import urllib
import time
import json


class Transaction(object):

def __init__(self):
self.custom_timers = {}


def run(self):
  conn = httplib.HTTPConnection("201.29.2.xxx:8080")
  headers = {"Content-type": "application/json"} #application/x-www-form-urlencoded,"Aceept":"text/plain"
  params = ({"bindHyCardInfo":{"mobileNo":"13426089279","userId":"2","hYCardno":line,"bankCardNo":"622xxxxxxxxxxxxx","ip":"201.29.2.xxx"},"header":{"version":"1.0.1","from":"1000","to":"2000","tid":line,"time":"12312","token":"SEW342WEER2342","ext":""}})
  start = time.time()
  conn.request("POST", "/core-oper/rest/bindHyCard", json.JSONEncoder().encode(params), headers)
  response = conn.getresponse()
  response_time = time.time()
  data = response.read()
  print data
  conn.close()
  transfer_time = time.time()
  self.custom_timers['response received'] = response_time - start
  self.custom_timers['content transferred'] = transfer_time - start


if __name__ == '__main__':
file = open("d://card.txt")
while 1:
  lines = file.readlines()
  if not lines:
    break
  for line in lines:
    line = line.strip('\n')
    trans = Transaction()
    trans.run()
    for timer in ('response received', 'content transferred'):
      print '%s: %.5f secs' % (timer, trans.custom_timers[timer])
file.close()

转载于:https://www.cnblogs.com/poptest/p/4936027.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值