# -*- coding: utf-8 -*- # !/usr/bin/env python import os import sys import threading import time PROJECT_ROOT = os.path.join(os.path.abspath(os.path.split(os.path.realpath(__file__))[0] + "/.."), '..') sys.path.insert(0, PROJECT_ROOT) os.environ.update({"DJANGO_SETTINGS_MODULE": "configs.testing"}) import django django.setup() from apps.web.core.helpers import ActionDeviceBuilder from apps.web.device.models import Device class Tester(threading.Thread): def __init__(self,sleepTime, runTimes,logicalCode,func,**args): super(Tester, self).__init__() dev = Device.get_dev_by_l(logicalCode) self._smartBox = ActionDeviceBuilder.create_action_device(dev) self._func = func self._args = args self._runTimes = runTimes self._sleepTime = sleepTime def run(self): count = 0 while count < self._runTimes: count += 1 try: result = eval('self._smartBox.%s(**self._args)' % self._func) # result = self._smartBox.get_port_status_from_dev() print result if self._sleepTime: time.sleep(self._sleepTime) except Exception,e: print('!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!error = %s,func=%s' % (e,self._func)) logicalCode = '246F28DAE104' # logicalCode = '840D8E2B3144' ii = 0 for ii in range(11): Tester(30,100000,logicalCode,'get_IC_coin_power_config').start() ii = 0 for ii in range(11): Tester(30,100000,logicalCode,'get_freemode_volume_andsoon_config').start() ii = 0 for ii in range(11): Tester(30,100000,logicalCode,'get_fullstop_cardrefund').start() ii = 0 for ii in range(11): Tester(30,100000,logicalCode,'get_gear_conf').start() ii = 0 for ii in range(11): Tester(30,100000,logicalCode,'get_port_status_from_dev').start() ii = 0 for ii in range(1): Tester(30,100000,logicalCode,'get_port_info',line=ii%10).start() ii = 0 for ii in range(1): Tester(30,100000,logicalCode,'lock_unlock_port',port=ii%10).start() ii = 0 for ii in range(1): Tester(30,100000,logicalCode,'get_dev_consume_count').start() ii = 0 for ii in range(1): Tester(30,100000,logicalCode,'get_dev_setting').start() # Tester(30,100000,logicalCode,'get_dev_all_settings').start() ii = 0 for ii in range(10): Tester(30,1000,logicalCode,'start_device',package={'time':3,'unit':u'分钟','coins':1,'price':1},openId='aaaaaaaaaaaaaa',attachParas = {'chargeIndex':ii+1}).start() ii = 0 for ii in range(10): Tester(200,100000,logicalCode,'stop_charging_port',port = ii+1).start() print 'finished'