28.七-27拆分的runtest

深入理解pytest执行机制:从命令行到钩子的全流程解析 pytest不仅是一个测试框架,更是一套具备完整生命周期的测试运行时系统。其核心原理涵盖用例收集、标记解析、执行排序、断言处理与状态管理等关键环节。理解pytest的执行流程,有助于解决CI环境间歇性失败、用例顺序失控、参数化ID冲突、标记失效及分布式执行异常等高频工程问题。本文结合真实故障复盘与源码级分析,系统阐述pytest命令行参数的契约本质、钩子函数的调用时机、标记的元指令属性以及多重断言的流式处理机制,为中大型项目提供可验证、可复现、可落地的自动化测试稳定性保障方案。 阅读详情
import unittest
#加载测试文件
#import test_add
#import testsub


#构造测试集
#suite=unittest.TestSuite()


#suite.addTest(test_add.TestAdd("test_add"))
#suite.addTest(test_add.TestAdd("test_add2"))


#suite.addTest(testsub.TestSub("test_sub"))
#suite.addTest(testsub.TestSub("test_sub2"))




#定义测试用例的目录为当前目录
test_dir='./'
discover =unittest.defaultTestLoader.discover(test_dir,pattern='test*.py')
if __name__ =='__main__':
    #执行测试
    runner=unittest.TextTestRunner()
    #runner.run(suite)

    runner.run(discover)


被注释的代码:对上一博客内容的测试用例进行拆分,拆分后的目录结构

testpro/

|--count.py

|--testadd.py

|--testsub.py

|--runtest.py


discover()方法会自动根据测试目录(test_dir)匹配查找测试用例文件(test*.py)并将查找到的测试用例组装到测试套件中,因此,可以直接通过run()方法执行discover,大大简化了测试用例的查找与执行。


Zemax操作40--序列模式中LD光源模拟 LD模拟 阅读详情

相关推荐

黑金AXU9EG开发板深度学习部署全流程解析

本文详细解析了黑金AXU9EG开发板的深度学习模型部署全流程,从环境搭建、模型转换到上板验证,提供了实用的技术指导和优化技巧。该开发板基于Xilinx Zynq UltraScale+ MPSoC架构,特别适合边缘计算场景,通过FPGA加速实现高效AI推理。

weixin_29062613的博客 447

[Caffe]:关于 Error parsing text-format Caffe.NetParameter: xxx.xx : Expected interger or identifier.

original url: http://blog.csdn.net/cham_3/article/details/55505363 错误描述   这是protobuf提示的一个错误。它的意思是在用户的prototxt中第xxx行,第xx 列缺少一个整型数或者标识符。 解决方法 检查对应的prototxt文件,在第xxx行,第xx 列是否缺漏了相应的信息。 =====

junmuzi的专栏 1万+

Anaconda离线创建python环境

既然是离线创建python环境,就需要有一个已经创建好的python环境。所以我们有两台win10的机器,分别是A和B。两台机器都安装了anaconda。其中A可以连网,因此我们在A上创建好一个python2.7的环境py27,然后将py27移植(安装)到B上。B连不连网都无所谓。 一、机器上A上创建python2.7的环境py27 有两种方法: 方法1:使用Anaconda的图形界面。首先,点击Environments->Create,然后输入要创建的环境名称"py27",然后选择2.7,如图

FY_2018的博客 6787

selenium-python-unittest自动化测试框架(数据和代码完全分离)

这套框架适合使用的场景: 1、测试数据不多 2、执行人员不需要会代码 3、看报告的时候要看执行详细结果 工程分为以下几部分: 1、公用方法包-Util 2、需要调用的固定变量包-ProjectVar 3、元素路径目录-Conf 4、页面元素常用动作方法+模块动作方法包-Action 5、测试用例执行包-TestUnittest 6、截图目录 看一下目录组成结构: 1.公...

vzdong1的博客 879

vLLM专题(七)-支持的模型列表

vLLM支持跨多种任务的生成式和池化模型。如果一个模型支持多个任务,您可以通过–task参数来设置任务。对于每个任务,我们列出了已在vLLM中实现的模型架构。每个架构旁边,我们列出了一些使用该架构的流行模型。

1259

NVIDIA Jetson之远程控制软件NoMachine安装使用

参考:https://www.bilibili.com/video/BV1cg4y1i776?t=12 0 背景

ZONGXP的博客 1万+

python----unittest测试固件的分离

固件分离可以将一些大量重复性的代码分离出来 作为一个公共的类 比如接口的登录 或者web前端的启动浏览器开打网页等 这些代码可能在所以的脚本中都一样 那么如果每个脚本都写一边就有一些多余的 所以我们可以将这些代码分离出来作为一个 公共的类来使用 所有的脚本都使用同一个类方法 可以省很多事 我们新将一个项目 命令为login作为存放登录代码模块 将登录的代码分离出来 然后在主要的...

记录小白的成长之路 522

Explorer.exe系统错误,电脑重启后刚开始一段时间正常,过一会桌面任务栏就卡死,可以打开任务管理器

联想E14Win10专业版。

本博客,博文仅代表个人操作经验,不能完全解决你的问题,仅供参考,佛系回复。 8051

caffe runtest 3 failed

[  FAILED  ] 3 tests, listed below: [  FAILED  ] DetectNetTransformationLayerTest/1.TestHueRotation, where TypeParam = caffe::CPUDevice [  FAILED  ] DetectNetTransformationLayerTest/1.TestAllAugment

成长的脚印 1386

LangGraph实战训练营-打造 WhatsApp 全自动消息收发AI智能助手

本文系统梳理了项目架构(WhatsApp Bridge + Talon Host + LangGraph Agent Harness三层设计)、完整环境搭建流程(Docker/本地双模式部署)、核心原理(WhatsApp桥接机制、NVIDIA Parakeet语音转录管线、Cron定时调度、Agent图状状态机),并提供了基础对话、文件操作、语音处理、定时任务等六大实战示例。同时涵盖安全策略、性能优化、数据备份等生产级运维实践,以及十个高频问题的排查方案。

program哲学 191

【Unity URP渲染管线下Shader的自定义物体半透明和投影半透明效果_半透明案例分享】

Unity Shader Graph URP渲染管线下的自定义半透明效果_半透明案例分享

暴走约伯的博客 3295

Python+Selenium获取HTML-Table表格数据

在自动化中,有时我们会遇到html表格,需要对表格添加的内容判断其正确性,那么怎么才能取得表格数据呢?1.通过selenium定位方式(id,name,xpath等方式)定位table标签定义基类base# -*- coding: utf-8 -*- from selenium.webdriver.support.wait import WebDriverWait class PageMeth...

lvxiaoting的专栏 2万+

【部署】Ubuntu 24.04.4虚拟机下部署OpenClaw

OpenClaw是一款基于AI的智能助手工具,本文详细介绍了在Ubuntu 24.04.4系统上的三种安装方法。推荐使用一键安装脚本(curl -fsSL https://openclaw.ai/install.sh | bash),自动完成Node.js检测、CLI安装和引导配置。对于开发者,提供了从源码构建的详细步骤,包括环境准备、依赖安装和构建流程。文章还包含常见问题解决方案(如sharp构建错误处理)以及后续维护建议(更新、配置检查和日志查看)。安装完成后,用户可通过终端TUI或Web UI进行初始

海兰 1万+

python的字符串切片操作

回文是一种无论从左还是从右读都一样的字符序列。比如 “madam”。在这个例子中,我们检查用户输入的字符串是否是回文,并输出结果。一:取字符串中第几个字符print "Hello"[0] 表示输出字符串中第一个字符print "Hello"[-1] 表示输出字符串中最后一个字符二:字符串分割print "Hello"[1:3]#第一个参数表示原来字符串中的下表#第二个阐述表示分割后剩下的字符串的第...

lvxiaoting的专栏 1万+

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

多个用户登录导致python出现’no module named 'selenium'异常解决

之前系统一直使用administrator账户登录,python环境搭建好之后使用正常,最近新建了个账户后,若程序中有“from selenium import webdriver”,那么久报错‘no module named 'selenium’。1.查看系统安装的selenium:pip show selenium,可以发现,selenium安装在administrator用户权限的目录下,那...

lvxiaoting的专栏 9865

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

解决Pycharm无法导入包问题 Unresolved reference

从SVN更新下来的代码,突然导入包路径都有问题,必须加上根路径才正确,之前运行是OK的。检查了运行的环境路径,也是没有问题,最后查资料,是package的source路径设置问题。在pycharm中设置source路径file–>setting–>project:server–>project structure将放package的文件夹设置为source,这样import的模块...

lvxiaoting的专栏 8168

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

python运行的unknown error: call function result missing 'value'

之前调试好的程序,这两天打开一直报错unknown error: call function result missing 'value',经过不断确认代码没问题之后,找到问题原因,由于自己使用的chrome版本升级,原先使用的chromedriver不匹配。这是在网上查询的浏览器与驱动匹配信息,但是已经不是最新的了我这里稍作补充V2.29  V56-58V2.30  V57-59V2.31  V...

lvxiaoting的专栏 5984

selenium报错:is not clickable at point (1214, 124). Other element would receive the clickd

    定位元素没有问题,但是执行脚本时候,循环第二遍时候,就报错is not clickable at point (1214, 124). Other element would receive the click。  具体错误:selenium.common.exceptions.WebDriverException: Message: unknown error: Element <...

lvxiaoting的专栏 5907

python+selenium随机添加用户自动化测试脚本

from selenium import webdriver import time import random global userName,userPassword #为了便于使用,定义为全局变量 userName = '' userPassword = '' driver = webdriver.Chrome() driver.maximize_window() driver .get(...

lvxiaoting的专栏 3023

6.Selenium2 自动化测试实战-基于Python语言-126邮箱登陆、获得验证信息

from selenium import webdriver import time driver = webdriver.Chrome() driver .get("http://www.126.com") print("Before login.........") #打印当前页面title title=driver.title print(title) #打印当前页面URL now...

lvxiaoting的专栏 2884

1.Selenium2 自动化测试实战-基于Python语言-设置窗口大小、调用JS调整滚动条、截取图片

#coding=utf-8 from selenium import webdriver from time import sleep #访问百度 driver =webdriver.Chrome() driver.get("http://www.baidu.com") #设置浏览器窗口大小 driver.set_window_size(1024,1024) #搜索 driver.find_el

lvxiaoting的专栏 2398

13.Selenium2 自动化测试实战-基于Python语言-多表单切换

在Web应用中,经常会遇到frame/iframe表单嵌套页面的应用,Webdriver只能在一个页面上对元素识别和定位,对于frame/iframe表单内嵌页面的元素无法直接定位,这时,就需要通过switch_to.frame()方法将当前定位的主体切换为frame/iframe表单内嵌的页面中。 ''' Date: 2017/03/28 Method: * switch_to.fram

lvxiaoting的专栏 1706

15.Selenium2 自动化测试实战-基于Python语言-警告框处理

最近学习Selenium2,关于警告框处理这里,碰到“保存设置”按钮点击,始终报错ElementNotVisibleException,书中的例子,仔细核对,还是有问题,查了很多资料,终于解决。 ''' Author: lxt Date: 2017/03/29 Method: * text:返回 alert/confirm/prompt 中的文字信息。 * accept():接受现有警告

lvxiaoting的专栏 1494

5.Selenium2 自动化测试实战-基于Python语言-控制浏览器后退、前进

from selenium import webdriver import time driver=webdriver.Chrome() #访问百度首页 first_url='http://www.baidu.com' print("now access %s" %(first_url)) driver.get(first_url) #访问新闻页面 second_url='http://ne

lvxiaoting的专栏 1250

4. Selenium2 自动化测试实战-基于Python语言-跨目录模块调用

projec/ |___model/ |      |___count.py |      |___new_count.py |___test.py count.py class A(): def add(self,a,b): return a +b new_count.py      from count import A class B (A)

lvxiaoting的专栏 1140

8.Selenium2 自动化测试实战-基于Python语言-WebElement接口2

*size:  返回元素的尺寸 *text: 获取元素的文本 *get_attribute(name):获得属性值 *is_displayed(): 设置该元素是否用户可见 from selenium import webdriver driver = webdriver.Chrome() driver.get("http://www.baidu.com") #获得输入框的尺寸 siz

lvxiaoting的专栏 1028
上一篇: 27.七-封装测试类setUp和tearDown
下一篇: 29.七-27拆分的testsub
lxting21
博客等级 码龄18年 33粉丝 49原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值