前言:最近萌生了做UI自动化平台的想法,以前做UI自动化都是直接脚本化的,也一直觉得UI改动一般都是很频繁,所以慢慢的脚本化的工作都放弃了,但是目前在公司,发现还是有点用的,公司的前辈也一直在完善脚本,那我也顺其自然看看能不能平台化!

UI自动化平台(一)

  • 一、为什么是 Django
  • 二、Pycharm创建Django项目讲解
    • 1、新建一个django项目
  • 三、django项目的运行
  • 四、项目文件讲解

一、为什么是 Django

Python 常用的 Web 框架包含:Django、Flask、Tornado 等,我是从来没有用过Django的,以前都是用Flask,这次也就顺带学习下。

Django 框架本身功能和文档很完善,也提供一站式解决方案,自带后台管理系统、强大的数据库功能,能开箱即用,相比其他 Web 框架,使用更便捷。

二、Pycharm创建Django项目讲解

1、新建一个django项目

  • 位置(Location):是项目路径
  • Python解释器(Project interceptor):是选择使用的python版本【这里要注意,优先选择python3,我新电脑有毒,直接自带安装了4个python,然后遇到虚拟环境不可用的报错】
  • 模版语言(Template language):是模板语言,我们选择django
  • 模板路径(Template folder):是模板路径,默认是templates;
  • 应用程序名称(Application name):是应用程序名称即模块名,一个项目中可以有多个模块【这里也可以不填,可以后期通过命令或者手动创建】
  • 启用Django admin(Enable Django admin):是否开放django的admin后台管理功能,默认是选中这个功能。如果不选中那么admin这个会在setting.py的url中注释掉,同时在setting.py文件中的INSTALLED_APPS的变量中添加django.contrib.admin。

下图是django项目创建后,在本地项目文件夹中的目录:

三、django项目的运行

  • 前台:点击PyCharm右上角绿色小三角运行项目,浏览器输入127.0.0.1:8000或者localhost:8000。端口号默认是8000
  • 后台:如果需要访问django的admin后台,可以在浏览器中输入127.0.0.1:8000/admin

    但是有一个问题,就是可以访问admin登录页面,但不知道用户名和密码,这里就需要:
  • 同步/生效表结构:在项目根目录下,python3 manage.py makemigrations (django新版本可以不用执行)和 python3 manage.py migrate
  • 创建超级管理员:在项目根目录下,python3 manage.py createsuperuser 然后输入用户名/邮箱/密码等

四、项目文件讲解

  • uiProject:项目名称
  • uiProject下的uiProject:项目全局配置文件夹,该文件夹是项目自动生成的,相当于项目容器
  • init.py:这个文件是生成的空文件,用它标识一个目录为Python的标准包即模块包,如果没有那么他所在的文件夹就是个普通的文件夹不能被其他模块导入
  • asgi.py:Django3.0版本新出的异步功能
  • settings.py:Django 项目的配置文件,包括 Django 模块应用配置,数据库配置,模板配置等
  • urls.py:Django 项目的 URL 声明,Django下所有的页面都需要在该urls文件中配置一下,否则在访问的时候会找不到该文件
  • wsgi.py:全称是 webserver getway interface,即Web服务器的网关接口,是python应用与Web服务器交互的接口,一般不需要做任何修改
  • manage.py:manage.py文件位于整个项目的最外层,是该项目的项目管理器,它提供了很多的命令用来管理该项目,在终端中可以查看它提供的所有命令,可通过输入:python manage.py 查看其命令,项目的启动其实也是通过manage.py文件的命令
  • uiplatform:是应用程序文件夹
  • migrations:用于记录 models 中数据的变更
  • init.py:生成的空文件
  • 0001_initial.py:是在执行python manage.py makemigrations命令时生成的
  • 0002_db_duan.py:也是在执行python manage.py makemigrations命令时生成的
  • init.py:生成的空文件
  • static:我自己建立的,后面用来存放静态文件
  • templates:模版语言,用来存放HTML代码和逻辑控制代码(变量,标签,过滤器)
  • admin.py:映射 models 中的数据到 Django 自带的 admin 后台
  • apps.py:用于应用程序的配置
  • models.py:创建应用程序数据表模型(对应数据库的相关操作)
  • tests.py:创建 Django 单元测试用的
  • views.py:控制向前端显示哪些数据

UI自动化平台(一)相关推荐

  1. 国际化分布式WEB UI自动化测试平台搭建

    国际化分布式WEB UI自动化平台 一 背景 二 特色功能 三 系统架构设计&框架选型 自动化测试框架 Selenium WebDriver Selenium Grid 四 功能介绍 平台化 ...

  2. 测试自动化平台 | 测试开发工程师的进阶之路

    https://mp.weixin.qq.com/s/WU5h8FW6BT5YZtlsSuCIcw 「摘要」随着近几年国内IT行业高速发展,对测试工程师的要求也越来越高,其作用也越来越重要,但很多测试 ...

  3. IM场景的移动端UI自动化测试平台实践

    在公司做了两三年IM平台开发,基本上把IM的所有能力都搭建齐全了:单聊.群聊.文本消息.语音消息.视频消息.卡片消息.音视频通话等,而且把整个聊天页面各个区域都开放了出去.整个IM系统的框架以及开发流 ...

  4. LuckyFrameWeb测试平台(一款支持接口自动化、WEB UI自动化、APP自动化,并且支持分布式测试的全纬度免费开源测试平台)

    官网:luckyframe.cn 源码地址:https://gitee.com/seagull1985/LuckyFrameWeb 分布式测试:使用Web-Client的方式,Web端负责基本信息管理 ...

  5. 手机APP自动化之uiautomator2 +python3 UI自动化

    题记: 之前一直用APPium直到用安卓9.0  发现uiautomatorviewer不支持安卓 9.0,点击截屏按钮 一直报错,百度很久解决方法都不可以,偶然间看见有人推荐:uiautomator ...

  6. 我猜你没听过UI自动化技术?

    来自:高德技术 一.背景 汽车导航作为ToB业务,需要满足不同汽车厂商在功能和风格上体现各自特色的需求.针对这种情况,传统的UI开发方式,基本上是一对一的特别定制.但是这种方式动辄就要500~600人 ...

  7. UI自动化新思路-基于RUNTIME的自动化测试设想

    [背景] 移动端app飞速发展后,导致各种自动化框架雨后春笋般的发展.纵观这类框架都在声称对于控件的操作是很牛逼的,深入分析后可以看出它们最终会回归到UI基本的坐标点操作. 于是,app自动化测试工程 ...

  8. python测试开发自学教程-自动化平台测试开发:Python测试开发实战_PDF电子书

    因资源下载地址容易失效,请加微信号359049049直接领取,直接发最新下载地址. 前言 ======================================================= ...

  9. python测试开发自学教程-自动化平台测试开发- Python 测试开发实战

    适读人群 :本书适合从事自动化测试开发技术的广大开发和测试人员使用,也可供产品测试开发管理人员参考. 自动化测试平台测试开发是指开发一个平台系统,结合相关的开源自动化框架进行集成,如 Selenium ...

最新文章

  1. java多线程总结图_Java多线程总结之Queue
  2. js基础篇——localStorage使用要点
  3. Spring学习11之AOP
  4. java main方法背后的故事?(转)
  5. Extjs中三种不同的数据提交方式
  6. Alibaba Nacos 服务消费者工程接入nacos并实现调用服务提供者工程
  7. Pentium 4处理器架构/微架构/流水线 (7) - NetBurst前端详解 - 分支预测
  8. 设计模式(五)学习----装饰模式
  9. python ip代理池维护_python3编写网络爬虫18-代理池的维护
  10. SPSS实现多因素方差分析
  11. cf两边黑屏怎么解决win10_电脑黑屏怎么解决
  12. html页面出现504,web生产环境故障页面提示504错误
  13. cannot load facet kotlin
  14. 【火炉炼AI】深度学习001-神经网络的基本单元-感知器
  15. 【游戏客户端】实现刮刮乐效果
  16. 锐龙r7 5800x怎么样 相当于什么水平
  17. spss 通径分析_使用SPSS线性回归实现通径分析的方法-学习资料.pdf
  18. solaris系统关闭服务器,Solaris下如何关闭SUN服务器
  19. swftools java_SWFTools pdf2swf 参数详解 及中文乱码问题
  20. 安全生产管理云执法平台方案

热门文章

  1. iframe根据内容自适应高度教程
  2. 全网最细华为路由器mpls 虚拟专用网络intranet 组网配置
  3. 基于SpringBoot的旅游管理系统设计与实现
  4. 解决Android11 无法访问/Android/data文件夹的问题
  5. java 发送邮件(SSL加密方式,含附件)
  6. winXP也能纯DOS启动
  7. 深信服SCSA认证最新知识点四
  8. 电子助力方向机控制模块_易力达电子助力控制器模块ECU威旺五菱长安电动助力方向机电脑板...
  9. 对绝缘子污闪以及绝缘子干冰清洗方法的探讨研究
  10. 作品1:MIDI彩虹钢琴(将简谱或五线谱制作成mid)