【pytest】獲取所有用例名稱并存于數據庫

數據庫操作包,引用前面創建的py文件,【sqlite】python操作sqlite3(含測試)

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time    : 2025-02-11 8:45
# @Author  : duxiaowei
# @File    : get_filename.py
# @Software: 這個文件是 : 將編寫的pytest自動測試用例,中所有用例路徑名,存儲到pytest_ready表中import os
import re
from datetime import datetimefrom com.connect_sqllite import DBlite"""
1. 獲取所有用例名稱
2. 將所有用例名稱存到表pytest_ready表
"""
# 獲取所有用例名稱
def get_test_files(current_dir):matching_files = []# 遍歷當前目錄下的所有文件和文件夾for root, dirs, files in os.walk(current_dir):for file in files:# 檢查文件是否以 .py 結尾,并且以 test_ 開頭或以 _test 結尾if file.endswith('.py') and (file.startswith('test_') or file.endswith('_test.py')):# 文件名path = os.path.join(root, file).replace(current_dir, "")# 洗出來,文件名中jira號,如果沒有jira號,輸入''numbers = re.findall(r'\d+', path)if len(numbers) == 0:# # 如果用例名稱解析不出數組,輸入''matching_files.append((path, ''))elif len(numbers) == 1:matching_files.append((path, numbers[0]))else:# 如果用例名稱解析出多個數字,輸入2matching_files.append((path, '2'))# 打印符合條件的文件列表return matching_filesdef insert_pytest_ready():folder_path = os.path.abspath('..')test_files = get_test_files(folder_path)for jira in test_files:# 先查詢是否有記錄sql_select = "select count(1) from pytest_ready  where filename = ?"arg = (jira[0],)result = DBlite().select(sql_select, arg)if result[0][0] == 0:current_time = datetime.now().strftime("%Y-%m-%d %H:%M:%S")sql_insert = "insert into pytest_ready(filename, jira_num, createtime) values (?,?,?)"arg = (jira[0], jira[1], current_time)DBlite().change(sql_insert, arg)else:current_time = datetime.now().strftime("%Y-%m-%d %H:%M:%S")sql_update = "update pytest_ready set updatetime=? where filename=?"arg = (current_time, jira[0])DBlite().change(sql_update, arg)
#
# 獲取所有用例名稱
# 插入數據庫,pytest_ready
# insert_pytest_ready()

建表語句

create table pytest_ready_dg_tmp
(id INTEGERprimary key autoincrement,filename VARCHAR(100),jira_num VARCHAR(20),updatetime TIMESTAMP,createtime TIMESTAMP,status INTEGER default 0
);

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/895349.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/895349.shtml
英文地址,請注明出處:http://en.pswp.cn/news/895349.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

2024年12月中國電子學會青少年軟件編程(Python)等級考試試卷(四級)

青少年軟件編程(Python)等級考試試卷(四級) 一、單選題(共25題,共60分) 1.以下有關位置實參和關鍵字實參的表述中,錯誤的選項是?(C) A.位置實參和關鍵字實參可以混用。 B. 形參不占用內存地址。 C.調用函…

c/c++藍橋杯經典編程題100道(18)括號匹配

括號匹配 ->返回c/c藍橋杯經典編程題100道-目錄 目錄 括號匹配 一、題型解釋 二、例題問題描述 三、C語言實現 解法1:棧匹配法(難度★) 解法2:計數器法(僅限單一括號類型,難度★☆) …

day02冒泡排序

思路&#xff1a; 外層循環控制循環次數(i<len)&#xff0c;設置swapFlagfalse內層循環j1(j<len-i)&#xff0c;兩兩(j和j-1)比較&#xff0c;逆序則交換內層每次循環結束&#xff0c;沒有交換&#xff0c;則break結束 內層循環j從1開始&#xff0c;小于len&#xff0c;…

如何在華為harmonyOS上調試軟件

1、設置-》關于手機-》HarmonyOS 版本連按多下&#xff0c;輸入鎖屏密碼。顯示開發者模式已打開。 2、設置-》搜索“開發人員選項”-》開啟“開發人員選項”選項。 3、在 開發者選項 中找到 “USB 調試” 并開啟。 4、開啟 “僅充電時允許 ADB 調試”。 5、設置中開啟 &quo…

供應SW7208 NVDC升降壓電池充電控制器IC

1. 概述 SW7208 是一款支持 NVDC 充電路徑管理&#xff0c;SMBus 接口和 USB PD 標準的同步雙向 buckboost 充電控制器。 SW7208 支持寬電壓輸入為 3.5 V ~ 36V&#xff0c;可以為 1 ~ 5 節電池充電&#xff0c;并且支持電池反向放電功能&#xff0c;輸出電壓可調 3V ~ 24V。…

fpga系列 HDL:Quartus II JTAG 間接配置文件 Indirect Configuration File (.jic) AS模式燒錄

先編譯生成pof文件 File->Convert Programming Files 轉換文件 Tools->Programer 燒錄

Python:凱撒密碼

題目內容&#xff1a; 凱撒密碼是古羅馬愷撒大帝用來對軍事情報進行加密的算法&#xff0c;它采用了替換方法對信息中的每一個英文字符循環替換為字母表序列該字符后面第三個字符&#xff0c;對應關系如下&#xff1a; 原文&#xff1a;A B C D E F G H I J K L M N O P Q R …

如何保證緩存和數據庫一致性

保證緩存和數據庫一致性是分布式系統中的一個常見挑戰。以下是幾種常用的策略和方法,用于解決緩存與數據庫之間的數據一致性問題: 1. 基礎同步策略 基礎同步策略包括以下幾種常見的操作順序: 先更新緩存再更新數據庫:這種方法可能導致緩存中的數據成為臟數據,因為如果數…

JavaScript系列(71)--函數式編程進階詳解

JavaScript函數式編程進階詳解 &#x1f3af; 今天&#xff0c;讓我們深入探討JavaScript函數式編程的進階內容。函數式編程是一種強大的編程范式&#xff0c;它通過使用純函數和不可變數據來構建可預測和可維護的應用程序。 函數式編程進階概念 &#x1f31f; &#x1f4a1;…

postman登錄cookie設置

1.設置環境變量&#xff0c; 定義變量存放共享的登錄信息 如Cookie 2.登錄接口編碼test腳本獲取cookie信息 let jsessionidCookie pm.cookies.get("JSESSIONID");if (jsessionidCookie) {let cookie "JSESSIONID" jsessionidCookie "; Admin-Tok…

c/c++藍橋杯經典編程題100道(21)背包問題

背包問題 ->返回c/c藍橋杯經典編程題100道-目錄 目錄 背包問題 一、題型解釋 二、例題問題描述 三、C語言實現 解法1&#xff1a;0-1背包&#xff08;基礎動態規劃&#xff0c;難度★&#xff09; 解法2&#xff1a;0-1背包&#xff08;空間優化版&#xff0c;難度★…

講解下MySql的外連接查詢在SpringBoot中的使用情況

在Spring Boot中使用MySQL的外連接查詢時&#xff0c;通常通過JPA、MyBatis或JDBC等持久層框架來實現。外連接查詢主要用于從多個表中獲取數據&#xff0c;即使某些表中沒有匹配的記錄。外連接分為左外連接&#xff08;LEFT JOIN&#xff09;、右外連接&#xff08;RIGHT JOIN&…

【大模型知識點】什么是KV Cache?為什么要使用KV Cache?使用KV Cache會帶來什么問題?

1.什么是KV Cache&#xff1f;為什么要使用KV Cache&#xff1f; 理解此問題&#xff0c;首先需理解自注意機制的計算和掩碼自注意力機制&#xff0c;在Decoder架構的模型中&#xff0c;每生成一個新的token&#xff0c;便需要重新執行一次自注意力計算&#xff0c;這個過程中…

【STM32】HAL庫Host MSC讀寫外部U盤及FatFS文件系統的USB Disk模式

【STM32】HAL庫Host MSC讀寫外部U盤及FatFS文件系統的USB Disk模式 在先前 分別介紹了FatFS文件系統和USB虛擬U盤MSC配置 前者通過MCU讀寫Flash建立文件系統 后者通過MSC連接電腦使其能夠被操作 這兩者可以合起來 就能夠實現同時在MCU、USB中操作Flash的文件系統 【STM32】通過…

1.1計算機的發展

一、計算機系統的概念 1、計算機系統軟件&#xff0b;硬件 軟件&#xff1a;由具有各種特殊功能的程序組成。 硬件&#xff1a;計算機的實體。如&#xff1a;主機、外設等。 硬件決定了計算機系統的上限&#xff0c;軟件決定了硬件性能發揮了多少。 2、軟件 軟件有系統軟…

本地生活服務平臺開發進入發展熱潮

本地生活服務平臺&#xff1a;當下的發展熱潮 本地生活服務平臺開發模式 在當今數字化時代&#xff0c;本地生活服務平臺開發已成為人們日常生活中不可或缺的一部分。只需動動手指&#xff0c;打開手機上的 APP&#xff0c;就能輕松滿足各類生活需求。像某團、餓XX這樣的平臺&a…

LSTM變種模型

GRU GRU簡介 門控循環神經網絡 (Gated Recurrent Neural Network&#xff0c;GRNN) 的提出&#xff0c;旨在更好地捕捉時間序列中時間步距離較大的依賴關系。它通過可學習的門來控制信息的流動。其中&#xff0c;門控循環單元 (Gated Recurrent Unit &#xff0c; GRU) 是…

詳解tensorflow的tensor和Python list及Numpy矩陣的區別

TensorFlow中的張量&#xff08;tensor&#xff09;、Python列表和NumPy矩陣在數據結構和功能上有一些顯著的區別。以下是它們的詳細介紹及代碼示例。 1、Python List 定義&#xff1a;Python列表是一種內置的數據結構&#xff0c;可以存儲不同類型的對象&#xff0c;包括數字…

多模態模型詳解

多模態模型是什么 多模態模型是一種能夠處理和理解多種數據類型&#xff08;如文本、圖像、音頻、視頻等&#xff09;的機器學習模型&#xff0c;通過融合不同模態的信息來提升任務的性能。其核心在于利用不同模態之間的互補性&#xff0c;增強模型的魯棒性和準確性。 如何融合…

微服務與網關

什么是網關 背景 單體項目中&#xff0c;前端只用訪問指定的一個端口8080&#xff0c;就可以得到任何想要的數據 微服務項目中&#xff0c;ip是不斷變化的&#xff0c;端口是多個的 解決方案&#xff1a;網關 網關&#xff1a;就是網絡的關口&#xff0c;負責請求的路由、轉發…