Django测试平台搭建学习笔记1
一安装
pip离线安装requests==2.32.0所需要的依赖:
: charset-normalizer<4,>=2 (3.0.0b1)
: idna<4,>=2.5 (3.7)
: urllib3<3,>=1.21.1 (2.2.0)
: certifi>=2017.4.17 (2024.6.2)
pip离线安装pytest==8.2.0所需要的依赖:
: iniconfig (2.0.0)
: packaging (24.0)
: pluggy<2.0,>=1.5 (1.5.0)
: exceptiongroup>=1.0.0rc8 (1.2.1)
: tomli>=1 (2.0.1)
: colorama (0.4.5)
更改pip下载源地址:
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
导出包依赖
pip freeze > requirements.txt
查看依赖关系:
pipdeptree -p 库名
二、Django测试平台
Pycharm(专业版)中创建Django工程
Tools->Run manage.py Task进入django模式
>runserver,启动项目(开发模式)
>makemigrations 创建数据库迁移脚本
>migrate 执行数据库迁移数据脚本
>createsuperuser创建管理员账号
>changepassword 修改账号密码
三、测试框架
类型:接口、web、APP
用处:管理用例、执行用例、失败重跑、日志记录、生成报告、发送通知
安装测试框架
python.exe -m pip install --upgrade pip
pip install pytest allure-pytest requests
pytest --alluredir=./allure-results
allure generate ./allure-results -o ./allure-report --clean
allure open -h 127.0.0.1 -p 8083 ./allure-report
四、平台创建
1)新建app
startapp case
注意:新建app,需要在settings中进行注册,才算成为项目的一部分
2)定义module
Model驱动开发
MDD
class Task(models.Model):
name = models.CharField("用例名称",max_length=20)
case = models.FileField("用例文件",upload_to='tests/%Y_%m_%d_%H_%M_%s/')
status = models.IntegerField("测试状态",choices=[
(0,'未执行'),
(1,'正在执行用例'),
(2,'正在生成报告'),
(3,'执行完毕')
])
注意修改了Model,必须及时修改数据库
执行下面的命令,可以自动完成修改
>makemigrations 创建数据库迁移脚本
>migrate 执行数据库迁移数据脚本
3.创建视图
MVT
主要的业务代码,通过视图完成
视图作用:
1.接收请求
2.处理请求,完成业务
3.生成响应
两种写法:
1.完全自定义前端+后端代码
2.使用admin框架编写前端+后端代码
视图需要完成的功能:
1.展示已有用例
2.新建用例(文件上传)
3.修改用例
4.执行用例&生成测试报告
Django内置的admin,会自动实现model,并自动完成大部分功能
1)创建admin页面
@admin.register(Task)
class TaskAdmin(admin.ModelAdmin):
list_display = ("id","name","status")
2)定义用例执行代码
需求:
当用例状态改为"正在执行时",后台就调用测试框架完成用例的执行
实现:
1.如何知道用例状态变为"正在执行用例"
2.如何调用框架执行用例
3)展示报告
新的视图,展示报告
from django.conf.urls.static import static
urlpatterns += static('tests/',document_root="tests")
首页看板
今天执行了多少用例
今天测试多少用例
今天测试通过率多少
最近七天的失败趋势
相关文章:
Django测试平台搭建学习笔记1
一安装 pip离线安装requests2.32.0所需要的依赖: : charset-normalizer<4,>2 (3.0.0b1) : idna<4,>2.5 (3.7) : urllib3<3,>1.21.1 (2.2.0) : certifi>2017.4.17 (2024.6.2) pip离线安装pytest8.2.0所需要的依赖: : iniconfig (2…...
本地离线模型搭建指南-RAG架构实现
搭建一个本地中文大语言模型(LLM)涉及多个关键步骤,从选择模型底座,到运行机器和框架,再到具体的架构实现和训练方式。以下是一个详细的指南,帮助你从零开始构建和运行一个中文大语言模型。 本地离线模型搭…...
【IPython 使用技巧整理】
IPython 使用技巧整理 IPython 是一个交互式 Python 解释器,比标准 Python 解释器提供了更加强大的功能和更友好的使用体验。它为数据科学、机器学习和科学计算提供了强大的工具,是 Python 开发人员不可或缺的工具之一。本文将深入探讨 IPython 的各种使…...
什么是孪生素数猜想
什么是孪生素数猜想 素数p与素数p2有无穷多对 孪生素数的公式(详见百度百科:孪生素数公式) 利用素数的判定法则,可以得到以下的结论:“若自然数q与q2都不能被任何不大于的素数 整除,则q与q 2都是素数”…...
Python学习笔记16:进阶篇(五)异常处理
异常 在编程中,异常是指程序运行过程中发生的意外事件,这些事件通常中断了正常的指令流程。它们可能是由于错误的输入数据、资源不足、非法操作或其他未预料到的情况引起的。Python中,当遇到这类情况时,会抛出一个异常对象&#…...
Mac 安装依赖后依旧报错 ModuleNotFoundError: No module named ‘Crypto‘
ModuleNotFoundError: No module named ‘Crypto’ 解决办法 pip uninstall pycryptodome pip uninstall pycrypto pip uninstall crypto pip install pycrypto...
【07】持久化-数据库选择和设计
1. 数据库选择 在比特币原始论文中,并没有提到要使用哪一个具体的数据库,它完全取决于开发者如何选择。Bitcoin Core ,最初由中本聪发布,现在是比特币的一个参考实现,它使用的是 LevelDB。 我们将要使用的是BoltDB。Bolt DB是一个纯键值存储的 Go 数据库。没有具体的数据…...
压力测试
1.什么是压力测试 压力测试考察当前软硬件环境下系统所能承受的最大负荷并帮助找出系统瓶颈所在。压测都是为了系统在线上的处理能力和稳定性维持在一个标准范围内,做到心中有数 使用压力测试,我们有希望找到很多种用其他测试方法更难发现的错误&#…...
C语言| 数组元素的删除
同数组元素的插入差不多。 数组元素的插入,是先移动要插入元素位置后面的所有元素,再插入新元素,长度1。 C语言| 数组的插入-CSDN博客 数组元素的删除,是先删除元素,再把后面的元素往前移动一位,而本程序…...
QListView、QTableView或QTreeView截取滚动区域(截长图)
本文以QTreeView为例,理论上继承自QAbstractScrollArea的类都支持本文所述的方法。 一.效果 一共5个文件夹,每个文件文件夹下有5个文件,先把文件夹展开,然后截图。将滚动条拖到居中位置,是为了证明截图对滚动条无影响 下面是截的图 二.原理 将滚动区域的viewport设置为…...
论文《Tree Decomposed Graph Neural Network》笔记
【TDGNN】本文提出了一种树分解方法来解决不同层邻域之间的特征平滑问题,增加了网络层配置的灵活性。通过图扩散过程表征了多跳依赖性(multi-hop dependency),构建了TDGNN模型,该模型可以灵活地结合大感受场的信息&…...
控制下属很简单,用好这3大管人绝招,再跳的刺头也不敢造次
控制下属很简单,用好这3大管人绝招,再跳的刺头也不敢造次 第一招:给压力 很多团队中的员工都是自己不带脑子工作,遇事就喜欢请示领导,让领导拿方案、拿决策。 还有一些人,推一下,他才动一下&a…...
2.APP测试-安卓adb抓取日志
1.打开手机的开发者模式,打开USB调试 (1)小米手机打开开发者模式: 【设置】-【我的设备】-【全部参数信息】-快速多次点击【OS版本】-进入开发者模式 (2)连接手机和电脑,手机打开USB调试 【设置…...
高考填报志愿选专业,要善于发掘自身优势
每年的高考季,如何填报志愿又再成为困扰家长以及学生的难题,可能在面对大量的专业时,无论是考生还是家长都不知道应该如何选择,好的专业孩子不一定有优势,感兴趣的冷门专业又担心日后找工作难。 实际上,专业…...
如何在 Ubuntu 14.04 上使用 HAProxy 实现 SSL 终止
前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站。 简介 HAProxy,全称高可用代理,是一款流行的开源软件 TCP/HTTP 负载均衡器和代理解决方案,可在 Linu…...
dockercompose
安装dockerconpose #上传docker-compose安装包 chmod x docker-compose mv docker-compose /usr/bin/ [rootlocalhost ~]# docker-compose --version docker-compose version 1.24.1, build 4667896b文件格式以及编写注意事项 YAML 是一种标记语言,它可以很直观的…...
「51媒体」活动会议,展览展会,直播曝光的一种方法
传媒如春雨,润物细无声,大家好,我是51媒体网胡老师。 我们在做活动会议,或者参加展览展会,需要进行直播的时候,可以通过一键同步多个媒体平台的方法,来扩大曝光,比如一场直播我们可…...
Go WebSocket入门+千万级别弹幕系统架构设计
Go实现WebSocket(千万级别弹幕系统架构设计) 1 websocket简介(基于HTTP协议的长连接) 使用WebSocket可以轻松的维持服务器端长连接,其次WebSocket是架构在HTTP协议之上的,并且也可以使用HTTPS方式,因此WebSocket是可靠…...
uniapp使用伪元素实现气泡
uniapp使用伪元素实现气泡 背景实现思路代码实现尾巴 背景 气泡效果在开发中使用是非常常见的,使用场景有提示框,对话框等等,今天我们使用css来实现气泡效果。老规矩,先看下效果图: 实现思路 其实实现这个气泡框的…...
字节跳动:从梦想之芽到参天大树
字节跳动掌舵人:张一鸣 2012年:梦想的起点:在一个阳光明媚的早晨,北京的一座普通公寓里,一位名叫张一鸣的年轻人坐在电脑前,眼中闪烁着坚定的光芒。他的心中有一个梦想——通过技术改变世界,让…...
终极文档下载神器:一键获取全网免费文档的完整指南
终极文档下载神器:一键获取全网免费文档的完整指南 【免费下载链接】kill-doc 看到经常有小伙伴们需要下载一些免费文档,但是相关网站浏览体验不好各种广告,各种登录验证,需要很多步骤才能下载文档,该脚本就是为了解决…...
LFM2.5-1.2B-Thinking-GGUF基础教程:理解llama.cpp中n_ctx/n_batch/n_threads参数协同
LFM2.5-1.2B-Thinking-GGUF基础教程:理解llama.cpp中n_ctx/n_batch/n_threads参数协同 1. 模型与运行环境概述 LFM2.5-1.2B-Thinking-GGUF是Liquid AI推出的轻量级文本生成模型,特别适合在资源有限的设备上快速部署。这个模型采用GGUF格式,…...
清华大学重磅突破:让AI汽车真正听懂你说话,想去哪就去哪!
这项由清华大学计算机科学与技术系和GigaAI公司联合开展的研究于2026年3月26日发表在计算机视觉顶级会议论文中,论文编号为arXiv:2603.25741v1。有兴趣深入了解技术细节的读者可以通过该编号查询完整论文内容。汽车能像人类司机一样理解复杂的语言指令,并…...
Pandas 操作指南(一):DataFrame 的构建与表格数据组织
在数据分析与数据处理中,原始数据往往并不是一开始就以规范表格的形式出现。它可能来自列表(list)、字典(dict)、CSV/Excel 文件,或程序运行过程中临时生成的数据集合。若这些数据尚未被整理为结构明确的表…...
如何高效实现金融核心系统客户证件影像预览?kkFileView完整解决方案
如何高效实现金融核心系统客户证件影像预览?kkFileView完整解决方案 【免费下载链接】kkFileView Universal File Online Preview Project based on Spring-Boot 项目地址: https://gitcode.com/GitHub_Trending/kk/kkFileView 在金融行业日常运营中…...
Jedi-Vim 终极自定义指南:如何集成其他Python分析工具提升开发效率
Jedi-Vim 终极自定义指南:如何集成其他Python分析工具提升开发效率 【免费下载链接】jedi-vim Using the jedi autocompletion library for VIM. 项目地址: https://gitcode.com/gh_mirrors/je/jedi-vim Jedi-Vim 是一款强大的 Vim 插件,它通过集…...
GLM-4.1V-9B-Base实际作品集:10张典型图片的多角度中文理解结果
GLM-4.1V-9B-Base实际作品集:10张典型图片的多角度中文理解结果 1. 模型能力概览 GLM-4.1V-9B-Base是智谱开源的视觉多模态理解模型,专为中文视觉理解任务设计。这个模型最令人印象深刻的地方在于,它能像人类一样"看"图片并回答各…...
OpenClaw性能调优:降低Phi-3-mini-128k-instruct长任务token消耗的技巧
OpenClaw性能调优:降低Phi-3-mini-128k-instruct长任务token消耗的技巧 1. 问题背景:长任务带来的token消耗困境 上周我在用OpenClaw处理一个文档整理任务时,遇到了一个棘手的问题。这个任务需要读取50多份Markdown格式的技术文档ÿ…...
有了这个Python备忘录,代码拿来即用
这段时间代码写的少了,周末用python写一个小爬虫,却发现连线程的一些方法都不记得了,还得百度查教程。工作越忙,记性越差,发现我疏远了代码,代码也疏远了我。 PS:对于小白来说自学也不是件容易…...
3 个高级思路,让你的 AI 绘画 / 视频从此充满想象力
前言 如今 AI 视频与绘画工具的画质越来越卷,清晰度、光影、细节几乎都已触达天花板。但真正能让人记住、能脱颖而出的作品,靠的从来不是画质,而是想象力。 当所有人都在追求 “大片感” 时,你只需要换一种思路 ——用创意打破平…...
