自定义博客皮肤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:解析pyserial串口通讯

串行接口简称串口,也称串行通信接口或串行通讯接口(通常指COM接口),是采用串行通信方式的扩展接口。串行接口 (Serial Interface)是指数据一位一位地顺序传送。其特点是通信线路简单,只要一对传输线就可以实现双向通信(可以直接利用电话线作为传输线),从而大大降低了成本,特别适用于远距离通信,但传送速度较慢。:退出串口调试, ctrl + A 然后松开后按 X 即可实现退出串口调试模式。代码运行与手工输入回车都是返回 =>,说明调试成功。:对比步骤3手工调试可知,3、手工输入和返回尝试。

2024-04-25 23:56:44 388

原创 locust2.0+教程:016 - 结合ssh压测shell命令

Locust是一个Python编写的开源性能测试工具,它可以通过编写Python代码来模拟用户行为并进行压力测试。虽然Locust本身不直接支持对shell或者SSH进行压测,但可以编写自定义的插件或者使用第三方库来实现这样的功能。如果想要通过SSH进行压力测试,可以考虑使用paramiko库来与SSH进行交互,并将其集成到你的Locust脚本中。

2024-04-25 23:53:31 506 2

原创 主机电源相关测试脚本:ping通 - 停止唤醒

在进行一些涉及服务器或者PC主机的电源关机、开机、重启相关的测试中,远程开机或者唤醒,结合pythonping模块处理ping,可以节省出不必要的硬性等待时间,规避开机时间不稳定的情况,而且不会造成堵塞现象,易于提取。7、ping目标主机,如果ping不通则等待10秒(可变),重复执行步骤6。5、设置必要的基础等待时间。8、如果ping通,退出唤醒或者相关远程操作。1、初始化为开机状态,支持唤醒或者远程开机。9、重复执行 步骤 2 - 8。2、设置循环次数,循环开始。6、开机或者等待开机。

2024-04-25 23:49:10 169

原创 Mockaroo - 在线生成测试用例利器

Mockaroo 是一个无需安装的在线工具,用于生成大量的自定义测试数据。它支持多种数据格式,如JSON、CSV、SQL和Excel,并能模拟复杂的数据结构。:打开 Mockaroo。创建数据模式:在Mockaroo的界面中,你可以定义数据的字段,选择每个字段的类型(如姓名、电子邮件、地址等),并设置数据生成的规则。:设定需要生成的数据行数,然后点击“Download Data”来生成数据。数据会以你选择的格式下载到设备上。:多字段、带header,匹配sql类型,点击 - Generate Data。

2024-04-25 23:47:22 930 1

原创 重磅!!!监控分布式NVIDIA-GPU状态

同理可以监控各类服务,进程,端口,占用。本质是:通过启动一个接口服务,将Uptime Kuma监控平台的接口请求,先指向这个服务接口,接口通过paramiko的方式,在对应的服务器执行对应的命令,解析这个命令,然后返回给Uptime Kuma平台。:Uptime Kuma是一个易于使用的自托管监控工具,它的界面干净简洁,部署和使用都非常方便,用来监控GPU是否在占用,非常美观。3、搭建sanic服务端:主要是写访问nvidia-smi的一个接口。:多个机器的卡就发起多个监控项,填入对应账号密码即可。

2024-04-25 23:45:10 1900 2

原创 IPMI开源库pyghmi基本使用

IPMI(Intelligent Platform Management Interface,智能平台管理接口)是一种开放的标准,旨在帮助系统管理员在本地和远程管理服务器系统。使用IPMITool,我们可以进行许多管理任务,比如查询硬件状态信息(如CPU温度、电源状态、风扇转速等)、重启系统、查看系统日志等。而且,IPMITool的另一个强大之处在于,它可以从操作系统层面直接查询和设置BIOS参数,无需进入BIOS界面,大大方便了管理员的工作。

2024-03-23 22:36:48 1122

原创 pytest运行结果解析及其改造

场景假设 - 当运行pytest完成后,需要针对运行的结果进行即时的反馈,打印 PASS 或者 FAIL,及其运行失败的原因,最后将结果推送给消息机器人。即:根据pytest的运行结果,控制台输出打印PASS或者FAIL,并显示allure报告,推送机器人(略),详见前一篇攻略。pytest.main()的执行结果为枚举,依次为以下6种情况。

2024-03-23 22:35:09 462

原创 python:消息推送 - 飞书机器人推送 - 富文本格式

机器人 ( bot ) 是一种自动化的程序,可以用拟人化的身份自动推送消息,或在聊天里与你进行简单的交互。在自动化完成测试任务后,推送测试报告等是一种很常用的收尾工具。:可以用机器人发送文本、图片、文件消息,还能进一步发送呈现样式更友好、支持互动的消息卡片,使推送内容更好地触达用户。:只需要服务端开发,就能实现内容呈现友好、可进行互动的机器人。并且一次开发后,可以被企业内的其他成员轻松使用。:参考 - python:消息推送 - 飞书机器人推送。:在聊天中通过消息完成内容的触达、信息收集等操作。

2024-03-15 15:25:06 1731

原创 Excel转Markdown神器:TableConvert使用全攻略

在数字化时代,数据的呈现方式多种多样,而Excel作为最常用的数据处理工具之一,其重要性不言而喻。然而,在进行线上分享、撰写技术博客或文档时,我们常常需要将Excel表格转换为Markdown格式,以便更好地在网页上展示。:TableConvert为我们提供了一个简单高效的解决方案,将Excel数据转换为Markdown格式,不仅提升了数据的展示效果,也极大地方便了在不同平台间的数据共享。在数字化信息共享的时代,掌握这样的工具,无疑将为你的工作和分享带来更多的便利和可能。选择一种方式进行数据导入。

2024-03-12 11:34:11 2302

原创 Python:数据分析工具Streamlit

Streamlit是一个开源Python库,可以轻松创建和共享用于机器学习和数据科学的漂亮的自定义web应用程序。只需几分钟,您就可以构建和部署功能强大的数据应用程序,同时可以结合 matplotlib 做出漂亮的图表,实现数据可视化。:结合matplotlib, 请参考 -

2024-03-12 11:24:32 2022

原创 Python:JSON查询工具​JMESPath

JMESPath是JSON的一种查询语言。对于经常需要解析json的数据的小伙伴都知道,在多层嵌套的情况下,我们需要写各种if-else来判断,非常的麻烦。JMESPath提供了便利的方式可以支持通用性高的查询方法。:当涉及多层嵌套时,jmespath可以更简洁高效的提取数据,方便我们编写更少的判断,所以当需要处理复杂的JSON或字典数据时,推荐使用该模块。

2024-03-12 11:18:55 357

原创 Python:解析获取连续的重叠对pairwise

pairwise函数,返回从输入迭代器获取的重叠对的迭代器,是Python 3.10 新特性,表示一个迭代器从对象中获取连续的重叠对,在某些场景中可以优化代码运行效率。pairwise 函数是一种用于处理列表中元素之间配对操作的通用方法。它将一个列表中的元素两两配对,并返回一个包含所有配对的新列表。通过pairwise函数可以方便地处理多种操作,比如计算成绩差异、相似度计算等。然而,在处理大型列表时,需要考虑到性能问题,并可能采取一些优化措施。

2024-02-11 22:44:39 1394 1

原创 Python:解析数组二分查找算法bisect

在 a 中找到 x 合适的插入点以维持有序。如果 a 是列表(list)的话,返回值是可以被放在 list.insert() 的第一个参数的。:类似于 insort_left(),但是会把 x 插入到 a 中任何现有条目 x 之后。然后,它会在 a 上运行 insert() 方法在适当的位置插入 x 以保持排序顺序。然后,它会在 a 上运行 insert() 方法在适当的位置插入 x 以保持排序顺序。:类似于 bisect_left(),但是返回的插入点是在 a 中任何现有条目 x 之后(即其右侧)。

2024-02-11 22:40:53 484

原创 “/bin/bash“: stat /bin/bash: no such file or directory: unknown

常规情况下,在进入容器时习惯使用 /bin/bash为结尾,如:docker exec -it test-sanic /bin/bash, 但是如果容器本身使用了精简版,只装了sh命令,未安装bash。这时就会抛出"/bin/bash": stat /bin/bash: no such file or directory: unknown 的错误。:将 /bin/bash换成 /bin/sh成功,即。

2024-01-14 20:20:12 1824

原创 docker应用:搭建uptime-kuma监控站点

Uptime Kuma是一个易于使用的自托管监控工具,它的界面干净简洁,部署和使用都非常方便。综上:站点监控工具uptime-kuma安装和使用完成。

2024-01-14 20:15:29 1237 1

原创 pip查看某个包存在的历史版本

当没有指定版本号或指定了一个错误的版本号时,就会出现错误【ERROR: No matching distribution found for requests==】。而当出现这个错误之后,pip模块会自动把该包的所有能安装的版本都展示出来,也就是后面的这一串信息。:当我们想查看某个包有哪些可安装版本,但是又不想去官网查询,如何用pip命令查询出全部历史版本?

2024-01-14 20:13:15 878

原创 docker应用:vocechat

VoceChat是一款超轻量级的Rust聊天应用程序、API和SDK,优先考虑私人托管。使用VoceChat建立您自己的聊天功能!作为一款非常好用的通讯应用程序,它可以让你与朋友、家人和同事进行即时消息聊天,支持图片视频的分享发送,并且提供安卓,iOS、网页挂件等多种聊天方式。

2024-01-14 20:10:52 693

原创 Pandoc:markdown转word

Pandoc是由John MacFarlane开发的标记语言转换工具,可实现不同标记语言间的格式转换,堪称该领域中的“瑞士军刀”。Pandoc使用Haskell语言编写,以命令行形式实现与用户的交互,可支持多种操作系统;Pandoc是一个跨平台的文本转换工具,可以将Markdown文本转换为多种格式,包括Word文档。Pandoc有一个Python包装器pypandoc,可以通过Python调用Pandoc进行Markdown到Word的转换。:找到相应的安装程序或二进制文件,或者通过包管理器安装。

2024-01-14 20:08:02 1014

原创 ubuntu卸载docker

1、空间占用过大,Docker在本地存储映像文件和容器,如果没有及时清理会占用大量磁盘空间。2、安全性问题:虽然Docker提供了一些安全机制,但仍有可能发生容器之间的攻击或数据泄露。3、性能问题:Docker在启动和运行容器时可能会消耗大量系统资源,导致系统变慢或出现崩溃。4、与其他软件冲突:与其他软件或工具不兼容,导致系统出现异常情况。:docker虽然好用,但是。:返回空则为成功卸载。

2024-01-14 20:01:47 1852

原创 matplotlib:热图、箱形图、小提琴图、堆叠面积图、雷达图、子图

选择合适的可视化方法不仅能帮助我们更快地理解数据,还能让我们的分析结果更容易被他人理解。:在数字化的世界里,从Web、HTTP到App,数据无处不在。例如,对比不同的Web服务,你可以在多个维度(如响应时间、用户满意度、访问量)上进行全面比较。它能展示数据的中位数、四分位数和异常值,对于发现性能瓶颈或优化响应策略尤为有用。比如,在分析App的使用时长时,它不仅显示了数据的分布范围,还展示了数据密度。例如,它可以用来分析用户最常点击的网页区域,帮助优化页面布局和用户体验。

2024-01-14 19:55:24 911

原创 ubuntu apt 更换阿里云源

Ubuntu系统的APT(Advanced Package Tool)是一个包管理器,用于在Ubuntu上安装、卸载和更新软件包。默认情况下,APT会从Ubuntu官方源中下载软件包,但由于网络原因,有时候下载速度较慢。阿里云是国内较为常用的镜像源之一,其提供了Ubuntu官方源的镜像。2、打开 sources.list 文件。docker:更换镜像源。

2024-01-07 23:56:28 1426 1

原创 数据结构与算法Python版:基数排序

基数排序(radix sort)属于“分配式排序”(distribution sort),又称“桶子法”(bucket sort)或bin sort,顾名思义,它是透过键值的部份资讯,将要排序的元素分配至某些“桶”中,藉以达到排序的作用,基数排序法是属于稳定性的排序,其时间复杂度为O (nlog®m),其中r为所采取的基数,而m为堆数,在某些时候,基数排序法的效率高于其它的稳定性排序法。它是这样实现的:将所有待比较数值(正整数)统一为同样的数位长度,数位较短的数前面补零。

2024-01-07 23:48:41 575

原创 数据结构与算法Python版:计数排序

计数排序的基本思想是对于给定的输入序列中的每一个元素x,确定该序列中值小于x的元素的个数(此处并非比较各元素的大小,而是通过对元素值的计数和计数值的累加来确定)。它的优势在于在对一定范围内的整数排序时,它的复杂度为Ο(n+k)(其中k是整数的范围),快于任何比较排序算法。此外,我们还看到,由于算法第4行使用了downto语句,经计数排序,输出序列中值相同的元素之间的相对次序与他们在输入序列中的相对次序相同,换句话说,计数排序算法是一个稳定的排序算法。在这两个条件下,计数排序的复杂性为O(n)。

2024-01-07 23:46:53 677

原创 Python:利用cv2模块对图片进行高斯模糊

高斯模糊(英语:Gaussian Blur),也叫高斯平滑,是在Adobe Photoshop、GIMP以及Paint.NET等图像处理软件中广泛使用的处理效果,通常用它来减少图像噪声以及降低细节层次。这种模糊技术生成的图像,其视觉效果就像是经过一个毛玻璃在观察图像,这与镜头焦外成像效果散景以及普通照明阴影中的效果都明显不同。:图片对比,左边为高斯模糊后的图片,右边为原图。

2024-01-07 23:42:51 1146

原创 构建高效PythonWeb:GraphQL+Sanic

GraphQL,作为一个强大的数据查询语言,为前端和后端之间的通信提供了极大的灵活性。在某些情况下,结合使用GraphQL和RESTful API,利用两者的优势,也是一种可行的策略。应用场景:对于需要高度灵活性和定制化数据请求的应用,GraphQL是更好的选择。团队熟悉度:考虑团队对这两种技术的熟悉程度也是非常重要的,一个熟悉REST的团队可能更快地实现和维护RESTful API。灵活的数据查询:GraphQL允许客户端指定所需的确切数据,减少了数据的过度获取和不必要的网络开销。

2024-01-07 23:39:55 1647

原创 深度学习-PyTorch:02-基于BERT-base打造AI芯片高效 - 简易版压力测试工具

随着人工智能的迅猛发展,AI芯片的性能测试成为了行业关注的焦点。BERT-base,作为一种高级的语言表示模型,因其复杂度和计算需求,可以视为进行高功耗压力测试的理想选择之一。:在探讨在进行压力测试时应注意的关键问题,包括内存溢出、GPU优化、数据预处理和模型的微调等,另外保证风量充足,电源供电稳定,同时开启smi进行观测记录这个测试观测。:网络正常版,如果运行抛出网络原因,请使用本地版。

2024-01-03 23:52:15 777

原创 win下持续观察nvidia-smi

在Windows操作系统中,没有与Linux中watch命令直接对应的内置工具,但有1种方法快速简单的方法可以实现类似的效果,尤其是用于监控类似于nvidia-smi的命令输出。:在Windows的PowerShell中,你可以编写一个简单的循环脚本来定期执行命令并刷新输出。例如,要模拟watch -n 1 nvidia-smi的效果。:按Ctrl+C来中断。

2024-01-03 23:50:12 1014

原创 Python:将print内容写入文件

print函数是Python中使用频率非常非常高的函数,其包含四个参数:sep、end、file、flush。

2023-12-30 11:01:13 1276

原创 Python:获取Ctrl+C中断事件进行后置处理

在某些场景中,我们希望当对程序进行中止事件后,程序也能进行处理某些逻辑,例如还原测试环境;生成截止当前结果的测试报告等。这个时候就需要对Ctrl+C事件进行捕获后,进行必要的事务处理。

2023-12-30 10:56:39 558

原创 Python:数字转英文num2words库

在编程中,将数字转换为其对应的英文表述是一个常见的需求,尤其是在处理金融、教育或数据报告的应用时。这个第三方库可以轻松地将数字转换为英文单词,支持多种语言和格式。:num2words 是一个功能强大且易于使用的库,非常适合需要将数字转换为单词的各种应用场景。它简化了代码,提高了开发效率,并支持多种语言,使其成为处理数字到单词转换的首选工具。金融应用:在发票或财务报告中,需要将数字金额转换为英文单词。数据报告:在生成的报告中以文字形式展示数字,提高可读性。教育软件:为学习英语的学生提供数字的英文表述。

2023-12-16 22:54:56 445

原创 国产浪潮服务器:风扇免手动调节脚本

浪潮集团旗下拥有浪潮信息、浪潮软件、浪潮国际,业务涵盖云计算、大数据、工业互联网等新一代信息技术产业领域,为全球120多个国家和地区提供IT产品和服务,浪潮致力于成为世界一流的新一代信息技术产业龙头企业,经济社会数字化转型的优秀服务商,新型基础设施建设的骨干企业。浪潮服务器面向智慧时代所设计,以“硬件重构+软件定义”技术理念, 为云计算、大数据和人工智能提供高度定制化的承载平台,适合云数据中心部署环境, 赋能各行业的数字化、智慧化转型与重塑。

2023-12-16 00:36:20 1054 1

原创 Python:解决with打开文件错误UnicodeDecodeError

在使用with打开部分编码不是utf-8和gbk时,可能出现报错UnicodeDecodeError: ‘gbk’ codec can’t decode byte 0xff in position 0: illegal multibyte sequence. UnicodeDecodeError 是一个很常见的错误,它通常在你试图解码一个特定编码的文本时发生,但文本不符合那个编码的规则。在你的情况下,你正在试图用 ‘gbk’ 编码来读取你的文件,但文件的某些部分可能并不符合 ‘gbk’ 编码的规则。

2023-12-16 00:34:12 381

原创 人工智能和机器学习在测试中的应用

这种测试通常需要大量的人工工作,但是通过使用AI,Applitools可以自动比较和识别用户界面中的变化,即使是微小的变化也能被检测出来。:这是一个AI驱动的测试平台,能够自动学习和适应应用程序的变化,从而提高测试的准确性和速度。:这是一个基于AI的自动化测试解决方案,它可以自动修复脚本中的问题,从而提高测试的稳定性。:Selenic 是一个强大的工具,但它可能不适合所有的测试场景。:使用 Selenic 运行你的 Selenium 测试,然后根据 Selenic 提供的建议和修复策略优化你的测试脚本。

2023-12-16 00:32:40 432

原创 深度解析AI算力:软件测试工程师的新挑战与新机遇

在我们的测试环境中,有两台设备,一台的AI算力是2TOPS,另一台的AI算力是10TOPS。在一些特定的计算任务,尤其是涉及大数据和复杂算法的情况下,通常的CPU和GPU可能无法满足需求,这时我们就会用到专为AI计算设计的硬件,如TPU(Tensor Processing Unit,张量处理单元)。例如,如果我们知道一个AI功能需要10TOPS的计算能力,而我们的测试设备的AI算力只有5TOPS,那么我们可以预见,在这个设备上,这个AI功能可能无法正常运行,或者运行效率较低。

2023-12-16 00:30:10 258

原创 扫地机器人测试点

在科技发展的浪潮下,扫地机器人已经成为越来越多家庭的“贴心管家”,助力我们迎战尘埃和杂物。但是,面对市面上五花八门的扫地机器人,以下为一般情况下扫地机器人的功能测试要点。总的来说,测试扫地机器人的功能需要围绕这些主要领域进行,具体的测试内容应基于具体的产品特性和用户需求。

2023-12-16 00:28:22 238

原创 动手制作个人电脑对话机器人transformers+DialoGPT

DialoGPT是一个对话模型,由微软基于GPT-2训练。由于DialoGPT在对话数据上进行了预训练,所以它比原始的GPT-2更擅长生成类似对话的文本。DialoGPT的主要目标是生成自然且连贯的对话,而不是在所有情况下都提供事实上的正确答案。此外,由于模型的预训练数据主要是英文,因此它可能无法很好地处理中文输入。在运行代码之前,请确保已经安装了Hugging Face的Transformers库。

2023-12-03 12:23:02 749

原创 Docker安装Memcached+Python调用

Memcached是一个通用的分布式内存缓存系统。它通常用于通过在RAM中缓存数据和对象来加速动态数据库驱动的网站,以减少必须读取外部数据源(如数据库或API)的次数。Memcached的API提供了一个分布在多台机器上的非常大的哈希表。当表已满时,随后的插入会导致以最近使用最少的顺序清除较旧的数据。使用Memcached的应用程序通常会将请求和添加分层到RAM中,然后再返回到较慢的后备存储(如数据库)。

2023-12-03 12:19:28 237

原创 高效配置Python应用:使用Hydra探索新视野

Python开发中经常面临如何管理大量配置参数的困扰Python库 - Hydra,它由Facebook研究团队开发,并旨在帮助开发者简化应用配置的复杂性。无论是需要处理大量配置参数的大型项目,还是需要快速改变配置用于多个环境和实验的小型项目,Hydra都能够胜任。:Hydra是一个非常强大的配置管理工具,它可以帮助我们更高效地管理复杂的Python应用配置。:命令将更改db.driver的值为postgres,db.user的值为admin,db.password的值为pass。

2023-12-02 21:29:49 1023

原创 Prompt Toolkit探索:打造交互式CLI应用

prompt_toolkit 是一个 Python 的库,它提供了一系列功能丰富的用户界面元素,比如自动完成、语法高亮、多行编辑、提示等等,让你可以轻松地构建出功能强大的命令行工具。通过使用prompt_toolkit,你可以轻松为你的应用添加自动补全、语法高亮等特性,这将极大提高用户体验,使你的应用更易使用且更专业。:prompt_toolkit是一个非常强大的Python库,它为创建交互式命令行应用提供了丰富的工具和元素。通过了解和使用这个库,你可以打造出更强大、更易用的应用。

2023-12-02 21:27:44 781

原创 Python配置与测试利器:Hydra + pytest的完美结合

Hydra 在 pytest 环境中的行为可能与在常规 Python 环境中的行为略有不同,因为 pytest 可能会干扰 Hydra 的工作方式。:Hydra 和 pytest 可以一起使用,基于 Hydra + Pytest 的应用可以轻松地管理复杂配置,并编写参数化的单元测试,使得Python开发和测试将变得更为高效。实际上,可以利用 Hydra 的强大功能和 pytest 的灵活性,创建更复杂的测试和应用。:新建conf目录,新建文件 config.yaml。

2023-12-02 21:23:52 92

空空如也

空空如也

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

TA关注的人

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