1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889 |
- from StatisticServer import db
- from datetime import datetime
- import uuid
- import json
- def uuidAsBytes():
- return uuid.uuid4().bytes
- class TestRunStatistics(db.Model):
- TestRunUUID = db.Column(db.String, primary_key=True)
- Browser = db.Column(db.Integer, default=0)
- api = db.Column(db.Integer, default=0)
- soap = db.Column(db.Integer, default=0)
- web = db.Column(db.Integer, default=0)
- SequenceClass = db.Column(db.String, default="")
- TestCaseExecuted = db.Column(db.Integer, default=0)
- TestCasePassed = db.Column(db.Integer, default=0)
- TestCaseFailed = db.Column(db.Integer, default=0)
- TestCasePaused = db.Column(db.Integer, default=0)
- TestCaseClass = db.Column(db.String, default="")
- TestStepMaster = db.Column(db.String, default="")
- TestStepSequences = db.Column(db.Integer, default=0)
- TestSteps = db.Column(db.Integer, default=0)
- TestCaseSequences = db.Column(db.Integer, default=0)
- XPATH = db.Column(db.Integer, default=0)
- CSS = db.Column(db.Integer, default=0)
- ID = db.Column(db.Integer, default=0)
- # Comparision
- equalTo = db.Column(db.Integer, default=0)
- notEqualTo = db.Column(db.Integer, default=0)
- greaterThan = db.Column(db.Integer, default=0)
- smallerThan = db.Column(db.Integer, default=0)
- # Non-empty Values count
- timeout = db.Column(db.Integer, default=0)
- optional = db.Column(db.Integer, default=0)
- release = db.Column(db.Integer, default=0)
- Duration = db.Column(db.String, default="")
- ip = db.Column(db.String)
- sendingTime = db.Column(db.DateTime, default=datetime.utcnow)
- def __repr__(self):
- return str(self.TestRunUUID)
- def to_json(self):
- dic = self.__dict__
- new_dic = {}
- for key in dic:
- if key[0] == "_":
- pass
- elif key == "sendingTime":
- new_dic["sendingTime"] = dic[key].strftime('%d-%m-%Y %H:%M:%S')
- elif key == "TestStepMaster":
- try:
- TestStepMaster = json.loads(dic[key])
- new_dic["TestStepMaster"] = ", ".join([f"{ky}: {TestStepMaster[ky]}" for ky in TestStepMaster])
- except:
- new_dic["TestStepMaster"] = ''
- else:
- new_dic[key] = dic[key]
- return new_dic
- def update(self, kwargs):
- for key, value in kwargs.items():
- if hasattr(self, key):
- setattr(self, key, value)
- class ActivityStatistics(db.Model):
- id = db.Column(db.LargeBinary, primary_key=True, default=uuidAsBytes)
- TestRunUUID = db.Column(db.String)
- Key = db.Column(db.String, nullable=False)
- Value = db.Column(db.Integer, nullable= False)
- def __repr__(self):
- return str(self.TestRunUUID)
- def to_json(self):
- dic = self.__dict__
- new_dic ={}
- new_dic['TestRunUUID'] = dic['TestRunUUID']
- new_dic[dic['Key']] = dic['Value']
- return new_dic
- def update(self, kwargs):
- for key, value in kwargs.items():
- if hasattr(self, key):
- setattr(self, key, value)
|