测试的实现是通过上传文件的方式,如上传excel文件等。
定义model:django是model驱动开发
在model.py中
from django.db import models
# Create your models here.
#django 是model驱动开发
#绝大部分框架是通过继承实现的
class Task(models.Model): # class Test(unittest.TestCase)
name = models.CharField("任务名称", max_length=20)
#处理的时候会自动调用datatime
case = models.FileField("用例文件", upload_to='tests/%Y_%m_%d/%H_%M_%S')
status = models.IntegerField("测试状态", default=0, choices=[
(0,"等待执行"), #元组
(1,"正在执行"),
(2,"执行完毕"),
])
#报告是allure生成HTML,通过URL在线访问
#"" blank
#None null
report = models.CharField("报告地址", max_length=200, null=True, blank=True)
#报告是什么时候生成的
last_run_datatime = models.DateTimeField("最后执行时间", null=True, blank=True)
class Meta:
verbose_name_plural = verbose_name = "测试任务"
界面配置:
在admin.py中加入如下代码:
from django.contrib import admin
# Register your models here.
from .models import Task
@admin.register(Task)
class TaskAdmin(admin.ModelAdmin):
list_display = ('name', 'status', 'last_run_datatime', 'report')
readonly_fields = ('report', 'last_run_datatime') #不需要,不允许修改的内容、
对django进行数据库的迁移:(每一次定义/修改model之后都要进行迁移)
创建超级用户
python manage.py createsuperuser
之后以刚刚设置的超级用户管理员密码登录
model.py中meta是将英文汉化
之后点击测试任务后的增加,添加所要测试的任务