UI自动化平台(一)

article/2025/10/24 12:35:02

前言:最近萌生了做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:控制向前端显示哪些数据

http://chatgpt.dhexx.cn/article/lE4Lgkx6.shtml

相关文章

ui自动化设计思路

小伙伴让我周末做技术分享,想着这是一件有意义的事情,便答应了下来,那就给大家讲讲ui自动化吧。这里会结合具体的代码给大家讲ui自动化一些理念,方案设计。 本文将探讨ui自动化设计思路,主要围绕以下方面展开讲解&…

使用UI Automation库用于UI自动化测试

📌 博客主页: 程序员二黑 📌 专注于软件测试领域相关技术实践和思考,持续分享自动化软件测试开发干货知识! 📌 公号同名,欢迎加入我的测试交流群,我们一起交流学习! UI A…

你知道什么叫三目表达式吗

目录 什么是三目表达式? 运用 1.单个使用 2.嵌套使用 什么是三目表达式? 1.三目表达式是一种编程中常见的表达式,它能够有效地帮助我们解决一些问题。 2.三目表达式由三个部分组成,分别是:条件表达式、结果表达式 听不懂么,那我们就来举个…

使用UI Automation实现自动化测试 --工具使用

当前项目进行三个多月了,好久也没有写日志了;空下点时间,补写下N久没写的日志 介绍下两个工具 我本人正常使用的UISpy.exe工具和inspect.exe工具 这是UISPY工具使用的图,正常使用到的几个属性 这里重点说一下微软件的UI Autom…

自动化测试平台(十):UI自动化元素页面的管理功能实现

一、前言 上一章我们完成了列表组件公共化封装和项目管理功能的实现,这一章将实现UI元素及元素页面的管理功能,换句话说就是对selenium执行定位操作的元素进行管理。 完整教程地址:《从0搭建自动化测试平台》 项目在线演示地址:http://121.43.43.59/ (帐号:admin 密码…

Android自动化测试入门(二)UI Automator

UI Automator是一个界面测试框架,支持跨进程,几乎可以模拟所有的人工操作。需要运行在4.3或者更高的系统版本上。它的测试代码的编写不依赖于目标应用的内部实现细节,非常适用编写黑盒自动化测试。 UI Automator 测试框架的主要功能包括&…

03-vue基础-插值表达式

文章目录 vue插值表达式vue通过data提供数据通过插值表达式显示数据安装vue开发者工具总结 vue插值表达式 本文要讲解的内容如下: 通过data提供数据通过插值表达式显示数据vue开发者工具的安装与使用 vue通过data提供数据 vue中通过template可以提供模板&#xf…

接口自动化和UI自动化:定义、区别及示例代码

目录 1.接口自动化 2.UI自动化 3.接口自动化和UI自动化的区别 4.结论 5.总结 在软件测试领域中,接口自动化和UI自动化是两个常见的测试类型,它们分别用于测试应用程序的不同层面。本文将介绍接口自动化和UI自动化的基本定义、区别以及示例代码。 1…

autojs,ui,界面学习,以及定时脚本页面的构建

注释掉ui或者ui的报错 再来就是认识几个单词,gravity 重力 简单来说就是你所创造的东西你想要它所处的位置在什么地方: left 靠左right 靠右top 靠顶部bottom 靠底部center 居中center_vertical 垂直居中center_horizontal 水平居中 text的一些属性&…

UI自动化测试03

一、警告框处理 <!DOCTYPE html> <html><head><meta charset"utf-8"><title>警告窗口操作</title><script type"text/javascript">// JavaScript一些函数// 定义了一个函数function alterbutton(){alert("…

【UI自动化-3】UI自动化元素操作专题

前言 在熟悉了元素定位之后&#xff0c;我们接下来就要学习对定位到的元素进行操作这项内容了。我简要做了个总结&#xff0c;如下图&#xff1a; 1 基本操作 元素的基本操作有很多&#xff0c;常用的有三个&#xff1a;click&#xff08;点击&#xff09;、clear&#xff…

mysql数据库命令备份还原

一、备份指定表&#xff1a; 在安装有mysql客户端的服务器命令行执行&#xff1a; mysqldump -h mysqlip -uusername -ppassword dbname tablename1 tablename2 > /home/XXXX.sql 如果表特别大&#xff0c;可以加入“nohup &” 来后台执行&#xff0c;以防窗口关闭等…

cmd 下mysql常用的数据库命令

其实如果不想打开mysql软件去操作数据库的话&#xff0c;可以通过DOS命令去操作数据库&#xff0c;也是比较快捷的方式&#xff0c;根据个人的操作喜好而定。 按 winR 键后输入 cmd 进入DOS命令窗口 切换目录到mysql文件下的bin目录&#xff0c;这里以phpstudy_pro 集成环境为…

oracle创建数据库命令

oracle创建数据库命令 1.打开cmd 连接系统默认数据库 2. 创建表空间 CREATE TABLESPACE DATA DATAFILE ‘D:\oracle\DATA\DATA.ORA’ size 10G autoextend on next 1M Maxsize unlimited logging extent management local segment space management auto; 3.创建临时空间 CRE…

css grid 自动高度_十一款游戏教你学会 CSS!

关注“脚本之家”&#xff0c;与百万开发者在一起 网上有很多有助于学习CSS的游戏&#xff0c;本文收集了一些非常实用的免费CSS游戏&#xff0c;希望这些游戏可以帮助你再次体验CSS的乐趣&#xff01; 作者 | Andreas Mller 译者 | 弯月&#xff0c;责编 | 郭芮 出品 | CSDN(I…

CSS设置高度等于动态的宽度

如果子元素根据父元素设置宽度&#xff0c;那么将其高度设置为0&#xff0c;并将padding-bottom设置为百分比&#xff0c;则该子元素的高度将根据它的宽度计算。 <div class"div1"><div class"div2"></div> </div>.div1{width:40…

通关这8个游戏,保证你能精通CSS

在知乎上随便一艘,CSS难学,就会找到很多关于CSS为什么这么难学的提问?各种回答都有,但是我觉得在游戏中学习CSS是最好的,毕竟人的天性就是爱玩。以以 Flexbox 布局为例。弹性容器的属性justify-content可以有12 个不同的值,我们要怎么记住呢?在Flexbox Froggy这款游戏就…

Web前端--HTML+CSS+JavaScript酷炫游戏动漫网页设计

临近期末, 你还在为HTML网页设计结课作业,老师的作业要求感到头大&#xff1f;网页要求的总数量太多&#xff1f;HTML网页作业无从下手&#xff1f;没有合适的模板&#xff1f;等等一系列问题。你想要解决的问题&#xff0c;在这里常见网页设计作业题材有 个人、 美食、 公司、…

css 真正意义上达到height:100%,自适应屏幕高度

最近发现了个用绝对布局写自适应屏幕的写法&#xff0c;让我觉得&#xff0c;之前小程序傻傻读屏幕高再给背景view赋值min-height的写法简直太傻了毕竟能用css解决的问题最好就不要js .shi{position: absolute;top: 0px;bottom: 0;left: 0;width: 20%;background-color: black…

CSS如何设置高度为屏幕高度_HTML和CSS中你应该知道的12个重点难点问题

这12个问题&#xff0c;基本上就是HTML和CSS基础中的重点个难点了&#xff0c;也是必须要弄清楚的基本问题。其中定位的绝对定位和相对定位到底相对什么定位&#xff1f;这个还是容易被忽视的&#xff0c;浮动也是一个大坑&#xff0c;有很多细节。 这12个知识点是我个人认为的…