自动化测试平台的搭建(一)

工具:pycharm

django+mysql

1.创建django项目autotest:

django-admin startproject autotest 

2.修改数据库信息

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql', #mysql数据库
        'NAME': 'api_test', # 数据库名
        'USER': 'dagnkai',# 用户
        'PASSWORD': 'dangkai', # 密码
        'HOST': '127.0.0.1', # 本地
        'PORT': '3306',
        # 'OPTIONS': {
        #     'init_command': "SET sql_mode='STRICT_TRANS_TABLES'",
        #     'sql_mode': 'traditional',
        #     },
    }
}

3. 启动服务:

Python manage.py runserver  默认端口8000,  也可以修改端口启动 Python manage.py runserver 127.0.0.1:80

4. 创建相应的表:

  4.1 根据model.py中的类创建:

    python manage.py makemigrations  这个命令是记录我们对models.py的所有改动,并且将这个改动迁移到migrations这个文件下生成一个文件

python manage.py makemigrations

 如下所示:

E:\Python_Web\autotest>python manage.py makemigrations
No changes detected

4.2 根据模型类创建表   

python manage.py migrate

如果要想精确到某一个迁移文件则可以使用:

python manage.py migrate appname

E:\Python_Web\autotest>python  manage.py migrate
Operations to perform:
  Apply all migrations: admin, auth, contenttypes, sessions
Running migrations:
  Applying contenttypes.0001_initial... OK
  Applying auth.0001_initial... OK
  Applying admin.0001_initial... OK
  Applying admin.0002_logentry_remove_auto_add... OK
  Applying contenttypes.0002_remove_content_type_name... OK
  Applying auth.0002_alter_permission_name_max_length... OK
  Applying auth.0003_alter_user_email_max_length... OK
  Applying auth.0004_alter_user_username_opts... OK
  Applying auth.0005_alter_user_last_login_null... OK
  Applying auth.0006_require_contenttypes_0002... OK
  Applying auth.0007_alter_validators_add_error_messages... OK
  Applying auth.0008_alter_user_username_max_length... OK
  Applying auth.0009_alter_user_last_name_max_length... OK
  Applying sessions.0001_initial... OK

4.3 创建超级用户:

python manage.py createsuperuser
E:\Python_Web\autotest>python manage.py createsuperuser
Username (leave blank to use 'xjy'): dangkai
Email address: 1370465454@qq.com
Password:
Password (again):
This password is too short. It must contain at least 8 characters.
Password:
Password (again):
This password is too short. It must contain at least 8 characters.
Password:
Password (again):
Superuser created successfully.

4.4 浏览器中输入127.0.0.1:8000/admin  输入刚创建的超级用户

自动化测试平台的搭建(一)

5 汉化中文界面:

# LANGUAGE_CODE = 'en-us'
#
# TIME_ZONE = 'UTC'
LANGUAGE_CODE = 'zh-Hans'

TIME_ZONE = 'Asia/Shanghai'

6 创建应用

    python manage.py startapp apitest

   将app注册到django中 setting中加入apitest

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'apitest'
]

 

7 创建视图:   

  在views中加入test函数

from django.shortcuts import render
from django.http import HttpResponse #加入引用
# Create your views here.
def test(request):
    return HttpResponse("hello test") #返回响应函数

8 创建映射:

在autotest/urls.py中加入:

from django.contrib import admin
from django.urls import path
from apitest import views

urlpatterns = [
    path('admin/', admin.site.urls),
    path('test/',views.test),# 加入关联路径和函数
]

浏览器中输入:127.0.0.1:8000/test

 9 创建模板:

在apitest下创建templates文件夹,然后创建login.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Login</title>
</head>
<body>
<h1>login</h1>
<form method="post" action="/login/">
    {% csrf_token %}
    <br> <input name="username" type="text" placeholder="username">
    <br> <input name="password" type="password" placeholder="password">
    {{ error }}<br>
    <br> <button id="submit" type="submit">submit</button>
</form>

</body>
</html>

 在autotest/urls.py中创建关联映射

from django.contrib import admin
from django.urls import path
from apitest import views

urlpatterns = [
    path('admin/', admin.site.urls),
    path('test/',views.test),# 加入关联路径和函数
    path('login/',views.login)
]

在apitest/views.py创建login函数

from django.shortcuts import render
from django.http import HttpResponse #加入引用
# Create your views here.
def test(request):
    return HttpResponse("hello test") #返回响应函数

def login(request):
    return render(request,'login.html')

然后输入127.0.0.1:8000/login,可以看到登录页面

自动化测试平台的搭建(一)

使用mysql数据库

在autotest/__init__.py文件中加入

import pymysql
pymysql.install_as_MySQLdb()

 

上一篇:启用Admin


下一篇:MMC子系统