自动化平台测试开发方案(详解自动化平台开发)

目录:导读

前言

自动化平台开发方案自动化平台开发

功能需求

技术知识点

技术知识点如表所示

自动化平台开发技术栈如图所示。

开发时间计划

投资回报率可视化

后期优化计划

登录功能实现

退出功能实现

使用Django 内置用户认证退出函数logout。

权限功能操作

结语


前言

我先前长期负责过自动化平台产品的测试开发工作,所以说对过程还是算比较了解的。 从需求分析开始到大纲设计,再到原型开发,直到发布了第一个beta版本,再到正式版发布。 花了不少的精力,让我给大家总结一下设计过程和经验。

自动化平台开发方案自动化平台开发

功能需求

支持 API、AppUI、WebUI 性能等自动化测试,集成实现测试用例管理、产品管理、任务计划、测试报告、定时任务或持续集成等功能模块。使自动化测试的过程达到数据、脚本、任务分离易于维护和管理,成本更低、数 据更直观、产出更快等目标,甚至能让不会代码的手工业务测试人员参与后续自动化测试工作等。整体架构如图所示。

自动化平台测试开发方案(详解自动化平台开发)_第1张图片

自动化平台测试开发方案(详解自动化平台开发)_第2张图片

技术知识点

技术知识点如表所示

分 类

说 明

平台开发部分

Python

用于开发平台和编写自动化测试脚本

Django

用于自动化平台后台开发

MySQL

用于自动化平台开发和测试的数据存储

HTML,JS,CSS

用于自动化平台前端开发

Bootstrap4

用于自动化平台前端及优化

自动化测试部分

Request,Unittest

用于接口自动化测试、单元测试脚本

SDK,ADT,Uiautommuior

用于 App 运行开发环境,元素定位

Appium

用于 App 自动化测试

Selenium

用于 Web 自动化测试

Jenkins

用于定时任务邮件报告等持续集成

Celery,Django-Celery

用于定时任务管理模块开发

自动化平台开发技术栈如图所示。

自动化平台测试开发方案(详解自动化平台开发)_第3张图片

开发时间计划

如果是刚入门、但有一点代码基础的测试人员,大概3 个月能做出演示版(Demo)进行自动化测试,6 个月内胜任开展工作中项目的自动化测试。

如果是有自动化测试基础的测试人员,大概1 个月能做出演示版(Demo)进行自动化测试,3 个月内能胜任工作中项目的自动化测试。

投资回报率可视化

投资回报率可视化如表所示。

计算项

具体内容

自动化测试成本计算

自动化平台开发成本

用例编写成本

脚本维护成本

执行结果分析成本

续表

计算项

具体内容

自动化测试收益计算

自动化测试用例数

发现有效 Bug 数

节省的人力和时间,即效率提升

版本迭代次数,即自动化使用率

后期优化计划

后期有待优化的功能有平台 UI 优化、脚本管理优化、测试报告优化、性能测试模块优化、邮件模块优化等。将来会考虑集成人工智能、机器学习、Devops 装备等技术。

登录功能实现

步骤 1 创建登录函数,在autotest/views.py 中,写入如下代码。

from django.shortcuts import render

from django.http import HttpResponse,HttpResponseRedirect from django.contrib.auth.decorators import login_required from django.contrib import auth

from django.contrib.auth import authenticate, login

def login(request): if request.POST:

username = password = ''

username = request.POST.get('username') password = request.POST.get('password')

user = auth.authenticate(username=username, password=password) if user is not None and user.is_active:

auth.login(request, user) request.session['user'] = username response = HttpResponseRedirect('/home/') return response

else:

return render(request,'login.html', {'error': 'username or password error'})

#else:

# context = {}

# return render(request, 'login.html', context)

return render(request,'login.html')

步骤 2 创建向导。

在autotest/urls.py 文件中加入如下代码。

urlpatterns = [

path('admin/', admin.site.urls), path('test/', views.test), path('login/', views.login),

# path(r'^home/$', views.home),

]

步骤 3 在登录页面http://127.0.0.1:8000/login,如输入错误的用户名和密码,提示如图所示。

自动化平台测试开发方案(详解自动化平台开发)_第4张图片

步骤 4 输入正确的用户名(admin)和密码(test123456),单击“submit”按钮后,会出现错误,如图所示。

自动化平台测试开发方案(详解自动化平台开发)_第5张图片

根据关键错误日志信息定位问题,排查错误,得知 home.html 不匹配,在 autotest/apitest/ templates 目录下新建

home.html 文件,添加如下内容:









自动化测试平台









在apitest/views.py 中加入以下内容:

def home(request):

return render(request,"home.html")

在autotest/urls.py 中加入以下内容:

urlpatterns = [

path('admin/', admin.site.urls), path('test/', views.test),

path('login/', views.login), path('home/', views.home), #加入

]

在登录页面,再次输入正确的用户名(admin)和密码(test123456),单击“submit”按钮,如出现如图 所示的错误,可按下述方法解决。

自动化平台测试开发方案(详解自动化平台开发)_第6张图片

步骤 5 根据关键错误日志信息定位问题,排查错误,通过把home.html 修改另存为UTF-8 编码格式,即可解决上面的问题。









自动化测试平台















以及 apitest/views.py 函数,

def home(request):

return render(request,"home.html")

以及 autotest/urls.py urlpatterns = [

path('admin/', admin.site.urls), path('test/', views.test),

path('login/', views.login), path('home/', views.home), #加入

]

步骤 6 再次登录后,如图所示,登录功能已经成功实现。

步骤 7 优化页面,把login.html 修改为如下内容。











AutotestPlat







《自动化平台测试开发》书

{% csrf_token %}
  用户名:

  密    码:
{{ error }}
 

查看登录页面,如图所示。

自动化平台测试开发方案(详解自动化平台开发)_第7张图片

退出功能实现

使用Django 内置用户认证退出函数logout。

步骤 1 在apitest/views.py 中加入如下代码。

def logout(request): auth.logout(request)

return render(request,'login.html')

步骤 2 在autotest/urls.py 中加入如下代码。

path('logout/', views.logout),

步骤 3 在apitest/home.html 中加入如下代码。

  • 退出
  • 步骤 4 在浏览器中输入地址,输入用户名和密码登录,单击“退出”按钮,可以看到已返回至首页。

    权限功能操作

    在创建数据库后,使用命令python manage.py createsuperuser,创建超级用户。

    创建成功后,在Django admin 后台,用超级用户登录,可以增加用户、组,以及对权限进行控制等。

    步骤 1 在浏览器中输入 http://127.0.0.1:8000/admin,输入用户名(admin)和密码(test123456)后登录。单击“用户”→“添加用户”,如上图所示,输入用户名和密码单击“保存”按钮。

    单击刚创建的test 用户,密码为test123456。

    如上图所示,往下拉会看到“权限”,勾选“职员状态”复选框,再往下选择用户权限中的模块权限,单击箭头按钮,会显示在上图右边的文本框中。

    自动化平台测试开发方案(详解自动化平台开发)_第8张图片

    自动化平台测试开发方案(详解自动化平台开发)_第9张图片

    如图所示,单击保存。即完成了创建新用户,以及设置新用户的访问操作权限。

    自动化平台测试开发方案(详解自动化平台开发)_第10张图片

    结语

    这篇贴子到这里就结束了,最后,希望看这篇帖子的朋友能够有所收获。

    如需了解更多自动化测试技术信息资源   请私❤【自动化平台测试开发】

    如果你觉得文章还不错,请大家 点赞、分享、留言 下,因为这将是我持续输出更多优质文章的最强动力!

    你可能感兴趣的:(自动化测试,测试开发,经验分享,自动化,运维)