zoukankan      html  css  js  c++  java
  • 老李分享: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(' ')
        trans = Transaction()
        trans.run()
        for timer in ('response received', 'content transferred'):
          print '%s: %.5f secs' % (timer, trans.custom_timers[timer])
    file.close()

  • 相关阅读:
    一天摄入多少蛋白质比较合理?
    给函数添加元数据(python)
    反转链表(C++实现)
    删除链表的中间节点(C++实现)
    在双向链表中删除倒数第K个链表节点(C++实现)
    在单链表中删除倒数第K个节点(C++实现)
    二叉树的创建及遍历(递归和非递归C++实现)
    删除排序数组中的重复项(C++实现)
    打印两个有序链表的公共部分(C++实现)
    用一个栈实现另一个栈的排序(C++实现)
  • 原文地址:https://www.cnblogs.com/poptest/p/4936027.html
Copyright © 2011-2022 走看看