Example #1
0
class Interfaces(Base):
    name = db.Column(db.String(200), unique=True, comment="接口名称")
    # project外键关联 ???
    # project = db.ForeignKey('project.Projects', on_delete=Projects.CASCADE, comment="所属项目")

    tester = db.Column(db.String(50), comment="测试人员")
    desc = db.Column(db.String(200), nullable=True, default='', comment="简要描述")
Example #2
0
class Testsuits(Base):
    name = db.Column(db.String(200), unique=True, comment="套件名称")

    # project 外键关联 ??? on_delete=models.CASCADE
    # project = models.ForeignKey('projects.Projects', on_delete=models.CASCADE,
    #                                 related_name='testsuits', help_text='所属项目')
    project_id = db.Column(db.ForeignKey("projects.id"), comment="所属项目")

    include = db.Column(db.Text, comment='包含的接口')
Example #3
0
class Testcases(Base):
    name = db.Column(db.String(50), unique=True, comment="用例名称")

    # interfaces 外键关联 ??? on_delete=models.CASCADE
    # interface = models.ForeignKey('interfaces.Interfaces', on_delete=models.CASCADE, related_name='testcases',
    #                               help_text='所属接口')

    include = db.Text()
    author = db.Column(db.String(50), comment='编写人员')
    request = db.Text()
Example #4
0
class Configures(Base):
    name = db.Column(db.String(50), unique=True, comment="配置名称")
    # interfaces 外键关联 ??? on_delete=models.CASCADE
    # interface = db.ForeignKey('interfaces.Interfaces',
    #                           on_delete=Interfaces.CASCADE,
    #                           related_name='configures',
    #                           comment="所属接口")

    author = db.Column(db.String(50), comment="编写人员")
    request = db.Text()
Example #5
0
class Configures(Base):
    name = db.Column(db.String(50), comment="配置名称")
    # interfaces 外键关联 ??? on_delete=models.CASCADE
    #     interface = models.ForeignKey('interfaces.Interfaces',
    #                                   on_delete=models.CASCADE,
    #                                   related_name='configures',
    #                                   help_text='所属接口')
    interface_id = db.Column(db.ForeignKey("interfaces.id"), comment="所属接口")

    author = db.Column(db.String(50), comment="编写人员")
    request = db.Column(db.Text, comment="请求信息")
Example #6
0
class Interfaces(Base):
    name = db.Column(db.String(200), unique=True, comment="接口名称")
    tester = db.Column(db.String(50), comment="测试人员")
    # desc = models.CharField('简要描述', max_length=200, null=True, blank=True, help_text='简要描述')
    desc = db.Column(db.String(200), comment="简要描述")

    # 外键的形式 '表名.字段'
    # 外键,必须要是是唯一键,index, ===> 主键
    # project = models.ForeignKey('projects.Projects', on_delete=models.CASCADE,
    #                                 related_name='interfaces', help_text='所属项目')
    project_id = db.Column(db.ForeignKey("projects.id"), comment="所属项目")
Example #7
0
class DebugTalks(Base):
    name = db.Column(db.String(200),
                     default='debugtalk.py',
                     comment="debugtalk文件名称")
    debugtalk = db.Column(db.Text,
                          default='#debugtalk.py',
                          comment="debugtalk.py文件")

    # projects 外键关联 ??? on_delete=models.CASCADE
    # project = db.OneToOneField('projects.Projects', on_delete=models.CASCADE,
    #                                related_name='debugtalks', help_text='所属项目')
    project_id = db.Column(db.ForeignKey("projects.id"), comment="所属项目")
Example #8
0
class Reports(Base):
    name = db.Column(db.String(200), unique=True, comment="报告名称")
    result = db.Boolean()  # 1为成功, 0为失败 default=1,
    count = db.Integer()
    success = db.Integer()
    # blank=True ???
    html = db.Text()
    summary = db.Text()
Example #9
0
class User(Base):
    username = db.Column(db.String(20),
                         unique=True,
                         nullable=False,
                         comment="用户名")
    password = db.Column(db.String(512), nullable=False)

    @property
    def pwd(self):
        """原始密码"""
        raise ValueError("不能获取密码")

    @pwd.setter
    def pwd(self, data):
        self.password = generate_password_hash(data)

    def check_password(self, data):
        """校验密码"""
        return check_password_hash(self.password, data)
Example #10
0
class Base(db.Model):
    # 指定在迁移时不创建表
    __abstract__ = True

    id = db.Column(db.Integer, primary_key=True)
    status = db.Column(db.SmallInteger, nullable=False, default=0)
    created_at = db.Column(db.DateTime, default=datetime.now())
    updated_at = db.Column(db.DateTime, default=datetime.now(), onupdate=datetime.now())

    def save(self):
        """保存数据"""
        try:
            db.session.add(self)
            db.session.commit()
            return self
        except:
            # 数据回滚
            # 记录日志
            # 抛出异常。
            db.session.rollback()
Example #11
0
class Projects(Base):
    name = db.Column(db.String(200), unique=True, comment="项目名称")
    leader = db.Column(db.String(50), comment="项目负责人")
    tester = db.Column(db.String(50), comment="项目测试人员")
    programmer = db.Column(db.String(50), comment="开发人员")
    publish_app = db.Column(db.String(100), comment="发布应用")
    # blank null  只对序列化器做校验的时候有用,Projects() & Projects.objects.create() 不起作用
    # desc = models.CharField('简要描述', max_length=200, null=True, blank=True, default='', help_text='简要描述')
    desc = db.Column(db.String(200), default='', comment="简要描述")
    # 关系
    interfaces = db.relationship("Interfaces", backref='project')
    # debugtalks 一对一关系~
    debugtalks = db.relationship("DebugTalks",
                                 uselist=False,
                                 backref='project')

    def to_json(self):
        return {
            "id": self.id,
            "name": self.name,
            "leader": self.leader,
            "tester": self.tester,
            "programmer": self.programmer,
            "publish_app": self.publish_app,
            "desc": self.desc
        }
Example #12
0
class Projects(Base):
    """项目的结构。 字段保持一致。"""
    name = db.Column(db.String(200), unique=True, comment="项目名称")
    leader = db.Column(db.String(50), comment="项目负责人")
    tester = db.Column(db.String(50), comment="项目测试人员")
    programmer = db.Column(db.String(50), comment="开发人员")
    publish_app = db.Column(db.String(100), comment="发布应用")
    desc = db.Column(db.String(200), nullable=True, default='', comment="简要描述")
Example #13
0
class Reports(Base):
    name = db.Column(db.String(200), unique=True, comment="报告名称")
    result = db.Column(db.SmallInteger, default=1,
                       comment='执行结果')  # 1为成功, 0为失败 default=1,
    count = db.Column(db.Integer, comment='总用例数')
    success = db.Column(db.Integer, comment='成功总数')
    # blank=True ???
    # html = models.TextField('报告HTML源码', help_text='报告HTML源码', null=True, blank=True, default='')
    html = db.Column(db.Text, default='', comment='报告HTML源码')
    # summary = models.TextField('报告详情', help_text='报告详情', null=True, blank=True, default='')
    summary = db.Column(db.Text, default='', comment='报告详情')
Example #14
0
class Summary(Base):
    user = db.Column(db.String(200), unique=True, comment="用户名称")
    statistics = db.Integer()
Example #15
0
class DebugTalks(Base):
    name = db.Column(db.String(200),
                     default='debugtalk.py',
                     comment="debugtalk文件名称")
    debugtalk = db.Column(nullable=True, default='#debugtalk.py')
Example #16
0
class Envs(Base):
    name = db.Column(db.String(200), unique=True, comment="环境名称")
    base_url = db.Text(db.String(200))
    desc = db.Column(db.String(200), comment="简要描述")
Example #17
0
class User(Base):
    username = db.Column(db.String(20),
                         unique=True,
                         nullable=False,
                         comment="用户名")
    password = db.Column(db.String(512), nullable=False)