-
Notifications
You must be signed in to change notification settings - Fork 0
/
notes
123 lines (86 loc) · 3.99 KB
/
notes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
# coding:utf-8
# 如使用mysql,则应安装:
pip install mysqlclient
# 默认开启的某些应用需要至少一个数据表,所以,在使用他们之前需要在数据库中创建一些表。请执行以下命令:
python3 manage.py migrate
# 为了在我们的工程中包含这个应用,我们需要在配置类 INSTALLED_APPS 中添加设置。
# 因为 PollsConfig 类写在文件 polls/apps.py 中,所以它的点式路径是 'polls.apps.PollsConfig'
#激活模型
python3 manage.py makemigrations polls
#创建管理员账号
python3 manage.py createsuperuser
#启动开发服务器
python3 manage.py runserver
#render()载入模板,填充上下文,再返回由它生成的 HttpResponse 对象
#The render() function takes the request object as its first argument,
#a template name as its second argument and a dictionary as its optional third argument.
#It returns an HttpResponse object of the given template rendered with the given context.
render(request, 'polls/index.html', context)
#get()用于只有一个结果的查询, pk:pramary key
#如果查无结果,会raise Question.DoesNotExist
Question.objects.get(pk=1)
#用get()查找对象,找不到则抛404
get_object_or_404(Question, pk=question_id)
#用filter()查找对象,空集抛404
get_list_or_404()
#因为你在 polls.urls 的 url() 函数中通过 name 参数为 URL 定义了名字,你可以使用 {% url %} 标签代替它:
<li><a href="{% url 'detail' question.id %}">{{ question.question_text }}</a></li>
#forloop.counter 指示 {% for %} 标签已经循环多少次
#POST方法防止跨站点伪造请求
{% csrf_token %}
#根据数量变成复数
{{ choice.votes|pluralize }}
#???DetailView 期望从 URL 中捕获名为 "pk" 的主键值,所以我们为通用视图把 question_id 改成 pk
# pk slug
在改写get或post方法时,需要接受参数pk/slug
#取用户名
{{user.username}}
#用例管理模型设计
用例 TestCase
用例no 用例名 所属项目(F) 创建人(F) 用例文件路径 sheet名 数据源(F 冗余)
数据源 DataSource
数据源no 数据源名 所属项目(F) 创建人(F) 数据源文件路径 sheet名 数据源个数 更新时间
任务管理(任务与用例一对多) TestPlan
任务no 任务名 所属项目(F) 创建人(F) 用例id(F) 数据源id(F) 执行机ip 数据源执行范围 执行状态 更新时间
任务执行历史 TP_Run_His
执行id 任务id(F) 用例id(F) 执行开始时间 执行结束时间 执行结果 日志path 更新时间
任务执行详情 TP_Run_Detail
执行id(F) 数据源序号 执行开始时间(varchar) 执行结束时间(varchar) 执行结果 更新时间
#项目管理模型设计
项目
项目名称 状态 创建人
用户项目
用户名(F) 项目名称(F)
#测试框架设计
日志类 ok
读写excel ok
读写txt ok
http接口类 ok
接口关键字类 ok
web element类
web关键字类
keyword类 ok
x 报告 x
x 邮件 x
全局参数类 ok
x testcase类 x
testsuit类 ok 废弃
runner类 ok
main类(多线程) ok
# 一个sheet存储一个testcase
# 一次测试任务的执行需要向系统返回:该任务总体结果 单个数据源结果 log日志path
废弃 suit[suit, case, initRow, endRow, initTime, endTime, result]
case[Suit, TestCase, Action, P1, P2, P3, Result, Detail]
有 有 如果是第一行 存储suit名,case名,initRow=当前 endRow=当前
如果不是第一行 存储上一个用例,存储新的suit名,case名,initRow=当前 endRow=当前
如果是最后一行 存储用例
有 存储上一个用例后
如果不是最后一行 存储新的case名,initRow=当前 endRow=当前
如果是最后一行 存储case名,initRow=当前 endRow=当前,存储用例
无 无 如果不是最后一行 endRow=当前
如果是最后一行 endRow=当前,存储用例
# 强制覆盖本地
git fetch --all && git reset --hard origin/master && git pull
如果你已经有已知的数据库及表格。
运行下面代码可以自动生成models模型文件
python manage.py inspectdb > your_app_name/models.py