自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

we chat:玩转测试开发

we chat:玩转测试开发

  • 博客(427)
  • 收藏
  • 关注

原创 python高阶:一等公民

在Python中,一切皆对象,面向对象的更彻底。class是对象,函数是对象,代码和模块也是对象,其中类(相当于模板)和函数属于Python的一等公民,所以可以动态进行修改类的属性等。3、可以作为参数传递给函数。2、可以添加到集合对象中。4、可以当做函数的返回值。1、赋值给一个变量。

2024-08-18 19:54:44 375

原创 conda配置国内源

Conda 是一个开源的软件包管理系统和环境管理系统,用于安装多个版本的软件包及其依赖关系,并在它们之间轻松切换。Conda 是为 Python 程序创建的,适用于 Linux,OS X 和Windows,也可以打包和分发其他软件。由于某些原因,有时我们需要设置国内源,优化网络配置。

2024-08-18 19:52:29 504

原创 Python:异步编程③

事件循环则每次执行都会去检查任务列表的每个任务,如果是可执行,则会把所有可执行的任务,会把这些任务放到可执行的列表。遇到io请求,处于io等待的行为,就忽略它,自动切换去执行其他事件。如果io请求已经处理完成了。io完成后在去执行之后的事件。

2024-08-11 18:49:12 344

原创 Python:异步编程2

在一个线程中,如果遇到IO等待时间,线程不会傻等,而是利用空闲的时间自动切换到其他函数或者方法,执行别的任务。:下载多个图片(会存在网络IO)

2024-08-11 18:48:15 380

原创 Python异步编程1

当前随着GO的强势性能影响,异步非堵塞,asyncio,fastAPI,django3X的asgi都在向异步趋势发展,能够提升性能。:协程在计算机中不是真实存在的,真实只存在线程和进程。协程也称为微线程,通过用户态,上下文切换的方式,程序员人为创造的一种技术。具体表现为:协程就是用一个线程在代码之间切换游走的运行方式。含yield的就是生成器函数,伪造的切换比较牵强,可以满足,但是现实不会使用,只进行了解即可。实现协程的方式主要要4种:当前主要使用greenlet和async,await。

2024-08-11 18:47:34 226

原创 Python:协程 - 快速创建三步骤

【代码】Python:协程 - 快速创建三步骤。

2024-08-11 18:45:18 391

原创 Python:单例 - 模块的方式

Python天然支持单例模式。原理:文件A,编写类,并且实例化。文件B,导入A中对象s,分别取不同的别名,就是产生了不同的对象,但是内存地址此时一样。即:完成了单例模式。

2024-08-11 18:43:48 390

原创 Python:99乘法表

【代码】Python:99乘法表。

2024-08-11 18:42:38 220

原创 Python:水仙花数

转换成字符串再切割提取,最后进行相加运算判断。: 百位数内各个位数上的立方相加等于该数本身。

2024-08-11 18:42:08 244

原创 Python:functools.lru_cache函数缓存示例

functools.lru_cache 是 Python 标准库中的一个非常实用的工具,它用于缓存函数的返回值,以提高程序性能。本文将介绍如何安装和使用 lru_cache,并通过函数式和面向对象的方式给出简单的示例。:lru_cache 的 maxsize 参数控制缓存的大小。如果函数的行为取决于外部状态或依赖的输入数据变化,可能需要手动管理缓存失效或使用其他缓存策略。:lru_cache 在多线程环境下是线程安全的,但需要确保被缓存的函数本身是线程安全的。:自动管理缓存,减少手动实现缓存逻辑的需要。

2024-08-11 13:27:29 284

原创 Python:省略号...的食用说明和技巧

在实际编程中,确保用省略号标记的部分最终得到实现。:使用省略号时,最好在代码中添加注释,以说明待实现的功能或逻辑,这有助于团队协作和代码的可读性。:在调试过程中,可以使用省略号帮助定位代码块,但在测试和生产环境中,确保省略号被实际代码替代。4、增加代码可读性:增强代码的可读性,通过明确标记未完成的部分,使代码意图更加清晰。5、其他特殊用法:在特定库或框架中,省略号也可以用于特殊功能或用作特定语法的一部分。1、充当占位符:在开发过程中,省略号可以用作占位符,标记尚未实现的功能或代码块。

2024-08-11 13:25:30 311

原创 Python:50个代码优化案例 - 甲篇

优化Python代码可以显著提升程序的性能、降低资源消耗,并提高可维护性。通过优化代码可以使程序运行更快、减少内存和计算资源的使用,同时提升用户体验并增强系统的扩展性。常见的优化方法包括算法优化、减少重复计算、代码重构、利用内置函数及并行处理。优化过程需平衡性能与可读性,以确保代码在提升效率的同时仍保持清晰和易于维护。

2024-08-11 13:23:51 1038

原创 生成RSA公钥的n值

RSA算法是一种非对称加密算法,与对称加密算法不同的是,RSA算法有两个不同的密钥,一个是公钥,一个是私钥。原理是:根据数论,寻求两个大素数比较简单,而将它们的乘积进行因式分解却极其困难,因此可以将乘积公开作为加密密钥。RSA公开密钥密码体制是一种使用不同的加密密钥与解密密钥,“由已知加密密钥推导出解密密钥在计算上是不可行的”密码体制。RSA允许选择公钥的大小。512位的密钥被视为不安全的;768位的密钥不用担心受到除了国家安全管理(NSA)外的其他事物的危害;:编辑 vim key_n.py。

2024-07-28 22:36:54 293

原创 CI/CD:Job failed: execution took longer than 1h0m0s seconds

当在CI/CD配置运行Gitlab-runner流水线中,一般默认情况下,Job的执行时间默认为1小时,如果超出1小时,任务会中断。:前往CI/CD Settings 修改Timeouts默认参数。:必须为10分钟或更长时间,且不超过一个月。

2024-07-28 22:35:19 221

原创 个人私藏的常用shell命令

ping + ip / ping + 网址:sudo apt install inetutils-ping。:工欲善其事必先利其器,一些高效的shell命令相关可以极大提升工作效率。匹配符合的行的个数:grep -a -i “hg” myfile.log | wc -l。匹配符合的行:grep -a -i “hg” myfile.log。:在1运行后,2查出PID端口,并杀死PID进程。2、当前路径排序文件大小:du -sh ./telnet ip + 空格 + 端口。案例:安全性考虑谨慎使用。

2024-07-20 13:46:57 315

原创 校验deb、rpm、apt、yum安装文件完整性测试

RPM包管理员(简称RPM,全称为The RPM Package Manager)是在Linux下广泛使用的软件包管理器。RPM此名词可能是指.rpm的文件格式的软件包,也可能是指其本身的软件包管理器(RPM Package Manager)。RPM仅适用于安装用RPM来打包的软件,目前是GNU/Linux下软件包资源最丰富的软件包类型之一。:deb包在Linux操作系统中类似于windows中的软件包(msi),几乎不需要什么复杂的编译即可通过鼠标点击安装使用。以htop为例,不完整时提示:遗漏。

2024-07-20 13:43:20 366

原创 pytest:4种方法实现 - 重复执行用例 - 展示迭代次数

在本文中,我们介绍了四种实现重复执行测试用例的方法,并显示当前迭代次数和剩余执行次数。希望这些方法能帮助你更好地进行测试管理,提高测试效率和代码稳定性。:在软件测试中,我们经常需要重复执行测试用例,以确保代码的稳定性和可靠性。在本文中,我们将介绍四种方法来实现重复执行测试用例,并显示当前迭代次数和剩余执行次数。这些方法将帮助你更好地追踪测试执行过程,提升测试效率。:在方法四中,我们使用了类变量来追踪迭代次数。:在大量重复执行的情况下,打印日志或控制台输出可能会影响性能。可以在每次迭代前重置测试环境。

2024-07-20 13:40:51 547

原创 docker: No space left on device处理与迁移目录

工作中当遇到Docker容器内部的磁盘空间已满。可能的原因包括日志文件过大、临时文件过多或者是Docker容器的存储卷已满,需要我们及时清理相关文件,并对docker的路径进行迁移。

2024-07-20 13:32:05 532

原创 ClamAV:Linux病毒查杀软件安装使用

ClamAV是一个开源防病毒工具包,专为邮件网关上的电子邮件扫描而设计。它提供了许多实用程序,包括一个灵活且可扩展的多线程守护进程、一个命令行扫描程序和用于自动数据库更新的高级工具。该软件包的核心是以共享库的形式提供的防病毒引擎。支持扫描各主流文件格式,如zip、tar、img、png、iso、pkg、html、pdf、邮件附件等等。

2024-07-20 13:28:46 751

原创 conda:导出与创建环境快照

Conda还具有跨平台性,可以在不同的操作系统上运行,并且具有良好的环境隔离能力,使得在同一台机器上同时管理多个不同版本的Python和相关软件包成为可能。:确保使用的是兼容的 Conda 版本。: 确保 environment.yml 文件中指定的 Python 版本在目标环境中是可用的,并且与项目兼容。:使用Conda导出和创建Python开发环境的快照,可以轻松地解决在不同的机器上共享、备份和恢复工作环境。: 在导出环境时,确保所有的依赖项都已经安装并且在环境中正常运行。

2024-07-20 13:26:12 477

原创 Python-subprocess激活远程conda

subprocess.Popen() 需要使用 shell=True 参数,这样可以让它执行带有管道和重定向的命令,但要小心避免使用带有用户输入的命令,因为这可能会导致安全风险(例如,遭受命令注入攻击)。:在一些实现远程执行任务、自动化部署、测试或远程控制台等场景下,某些需要依赖于特定的 conda 环境,如何激活是指定conda环境,是一个值得探讨学习的地方。

2024-07-20 13:24:09 209

原创 docker应用:搭建云手机

近来慵懒,身体懈怠良多,思来想去随手看点小攻略以宽慰不懈怠的心。云手机Cloudphone,就是将云计算技术运用于网络终端服务,通过云服务器实现云服务的手机。其实就是深度结合了网络服务的智能手机,这类手机凭借自带的系统以及厂商架设的网络终端可以通过网络实现众多的功能。要检查虚拟化是否已启用。

2024-07-20 13:21:29 928

原创 pytest常用命令行参数解析

pytest作为一个成熟的测试框架,它提供了许多命令行参数来控制测试的运行方式,以配合适用于不同的测试场景。例如 -x 可以用于希望出现错误就停止,以便定位和分析问题。–reruns=num适用于希望进行失败重跑等个性化测试策略。: 启用多线程或分布式运行测试用例。允许并行运行的测试用例数量,当设置为auto时,设置为CPU核心数,效率最高。: 与 -x 功能相似,但允许指定失败用例的最大数量后停止执行。: 一旦有任何一个用例执行失败,就停止当前线程的测试执行。: 失败用例重跑指定次数。

2024-07-20 13:19:08 456

原创 局域网唤醒平台:UpSnap

UpSnap是一个简单的唤醒局域网网络应用程序。UpSnap为每个用户、每个设备提供了唯一的访问权限。虽然管理员拥有所有权限,但他们可以为用户分配特定的权限,如显示/隐藏设备、访问设备编辑、删除和打开/关闭设备电源。唤醒过程中可以看到等待的时间,唤醒完成会变成绿色,表示唤醒成功。

2024-05-05 17:01:08 574

原创 解锁WSL下Docker使用

Windows Subsystem for Linux(简称WSL)是一个在Windows 10上能够运行原生Linux二进制可执行文件(ELF格式)的兼容层。

2024-05-05 16:56:43 624

原创 Pycharm:常用插件安装和使用

简介:好用的插件可以美化界面或者提升效率,使工作事半功倍。推荐插件:1、CSV插件:美化csv数据展示2、Translation:翻译的插件,可以进行中英互译3、CodeGlance:代码小地图4、Markdown support:支持markdown展示5、Rainbow Brackets:代码块之间很清晰的显示出各种颜色的高亮通用安装步骤:File->settings > Plugins > 搜索插件名称 > 安装 > 应用 > 重启pycharm图

2024-04-28 01:12:40 1235

原创 monkey常用命令解析

简介:1、monkey程序由android系统自带,使用Java语言写成,在Android文件系统中的存放路径是:/system/framework/monkey.jar2、Monkey.jar程序是由一个名为“monkey”的Shell脚本来启动执行,shell脚本在Android文件系统中的存放路径是:/system/bin/monkey3、Monkey测试是Android平台自动化测试的一种手段,通过Monkey程序模拟用户触摸屏幕、滑动Trackball、按键等操作来对设备上的程序进行测试,检

2024-04-28 01:09:18 422 2

原创 centos7.6:安装python、miniconda

默认配置下:腾讯云,阿里云是已经预装了Python环境的,如果购买的是centos7.6的服务。可以直接使用输入命令:python / python3,分别将运行 python2.7.5 和 python3.6.8。如下图所示:图片安装其他版本Python3:使用miniconda,自给自足,需要什么python包自己安装。新建1个文件夹:mkdir minicondafiles下载miniconda:清华大学开源软件站,使用国内资源下载速度比较快https://mirrors.tuna.ts

2024-04-27 20:35:53 335

原创 GPU:使用gpu-burn压测GPU

在测试GPU的性能问题时,通常需要考虑电力和散热问题。使用压力测试工具,可以测试GPU满载时的状态参数(如温度等)。gpu_burn是一个有效的压力测试工具。通过以下步骤可以进行测试。3、 跑完之后关机,找出那张没有温度的卡,即故障卡。

2024-04-27 20:32:58 2740

原创 Labelme安装和使用

简介:labelme是图形图像注释工具,它是用Python编写的,并将Qt用于其图形界面,是麻省理工(MIT)的计算机科学和人工智能实验室(CSAIL)研发的图像标注工具,人们可以使用该工具创建定制化标注任务或执行图像标注,项目源代码已经开源。功能:1、对图像进行多边形,矩形,圆形,多段线,线段,点形式的标注(可用于目标检-测,图像分割等任务)。2、对图像进行进行 flag 形式的标注(可用于图像分类 和 清理 任务)。3、视频标注 - 生成 VOC 格式的数据集(for semantic / in

2024-04-27 20:30:25 1261

原创 pytest-asyncio:协程异步测试案例

pytest-asyncio是一个pytest插件。它便于测试使用异步库的代码。具体来说,pytest-asyncio提供了对作为测试函数的协同程序的支持。这允许用户在测试中等待代码。

2024-04-27 20:24:17 883

原创 shell并行工具parallel

GNU parallel是一种shell工具,用于使用一台或多台计算机并行执行作业。作业可以是单个命令,也可以是必须为其运行的小脚本输入中的每一行。典型的输入是文件列表、主机列表、用户列表、URL列表或表列表。工作也可以从管道中读取的命令。然后GNU并行可以将输入拆分为多个块,并将一个块并行的管道传输到每个命令中。:parallel 在各种场景中都可以发挥作用,只要有需要同时执行多个任务的情况。

2024-04-27 20:20:24 351 1

原创 Pytest用例自定义 - 重复、并行、串行

面对快速迭代和持续交付的需求,提高测试效率变得至关重要。在某些情况下,串行执行是必要的,以确保测试的正确性和稳定性。本文将探讨在自动化测试中部分串行、部分并行执行的必要性和实践方法,帮助测试开发者在提高测试效率的同时,确保测试结果的可靠性和准确性。1、同一文件中混合串行和并行测试,并且需要更精细的控制,可能需要编写更复杂的自定义逻辑或查找是否有现成的插件能满足这种特定的需求。结论:适当拆分错开并行和串行的测试类,通过pytest-xdist auto参数,可以便捷有效的大幅度提升运行测试用例的效率。

2024-04-26 00:30:13 707

原创 纯分享:实时全球天际线、地标、野生动物、水族馆 直播

身体和灵魂,总要有一个走在路上。分享一些有意思的直播。高清摄像头是公开的网络摄像头,不会存在侵犯隐私的情况,大家可以放心进入观看景点实况。

2024-04-26 00:25:15 593

原创 DALL-E mini:在线可玩 - 文生图

Craiyon 的前身是 DALL-E mini,它的灵感来自一个名为 DALL-E 的类似 AI 模型。随着时间的推移,Craiyon 改进了其模型,并添加了新功能,例如否定词和下一个提示建议。Craiyon 还有一个移动应用程序,您可以从 Google Play 商店下载。1、生成比较慢,大约60秒。

2024-04-26 00:21:32 1060 1

原创 Pytest+Yaml 数据驱动测试用例

当需要执行的测试用例达到一定的量后,存储和管理测试用例直接放在test_case显然是不合理的,需要将测试用例存储在测试用例文件。: 提供了丰富的格式和功能,可以方便地进行编辑和维护。但不是纯文本格式,不适合版本控制,也不易于自动化测试工具的集成。:可读性高,可读取的数据序列化格式,易于维护和阅读。: 纯文本格式,易于版本控制,也易于自动化工具处理。缺乏Excel的直观性和功能,不适合存储复杂的测试用例数据。:萝卜青菜各有所爱,如果需要设计比较复杂的业务场景,个人更倾向于yaml。

2024-04-26 00:18:42 474

原创 pytest-xdist:远程多主机 - 分布式运行自动化测试

需要特别注意的是rsync功能被弃用,因为它的实现在远程工作者中再现开发环境方面存在缺陷,而且没有明确的解决方案。出于这个原因,rsync计划在4.0版中删除,让团队专注于一组较小的功能。请注意,SSH和套接字服务器不是计划删除的,因为它们是execnet功能集的一部分。:pytest-xdist插件使用新的测试执行模式扩展了pytest,最常用的是在多个CPU之间分发测试以加快测试执行,即。:在远程服务器端会生成一份相应的项目数据,因为我们使用的是 ./ 即 把当前项目远程拷贝到目标服务器执行。

2024-04-26 00:14:47 895

原创 pytest-stress:好用的pytest压力测试插件

pytest-stress允许在用户定义的时间内循环测试。特别适用于一些已知测试时间,但不知道运行次数的场景。

2024-04-26 00:10:34 521 1

原创 pytest-asyncio:协程异步测试案例

pytest-asyncio是一个pytest插件。它便于测试使用异步库的代码。具体来说,pytest-asyncio提供了对作为测试函数的协同程序的支持。这允许用户在测试中等待代码。

2024-04-26 00:07:21 518

原创 pytest-cov:好用的统计代码测试覆盖率插件

pytest-cov是pytest统计测试代码覆盖率的一个插件。pytest-cov插件生成覆盖率报告。运行coverage run-m pytest,您将有稍微不同的sys.path(CWD将在其中,与运行pytest时不同)。4、覆盖率包提供的所有功能都应该可以通过pytest-cov的命令行选项或覆盖率的配置文件工作。2、支持xdist:可以使用pytest-xist的所有功能,并且仍然可以获得覆盖范围。1、可以在子流程中派生或运行东西,并且可以在没有任何麻烦的情况下进行覆盖。

2024-04-26 00:00:08 359

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除