- 博客(140)
- 收藏
- 关注
原创 dify+rag+钉钉自动化助手搭建智能客服
摘要:本文解决Dify部署中的两个常见问题。1)端口冲突:当443端口被占用时,修改.env文件中的NGINX_SSL_PORT和EXPOSE_NGINX_SSL_PORT参数,若修改EXPOSE_NGINX_PORT需在访问时添加新端口号。2)权限不足报错:通过编辑.env文件将OPENDAL_FS_ROOT指向有权限的目录(如/home/qadevops/storage),并创建相应目录设置权限,避免直接修改源码。注意提示AI建议可能误导,应结合实际判断。
2025-12-08 14:51:12
731
原创 docker 命令
本文总结了Docker常用操作命令及优化技巧,主要包括: 容器操作:临时进入容器(docker run -it --rm)与持久容器(docker exec)的区别 镜像构建:docker build命令详解及上下文路径说明 镜像打包解压:使用docker save/load命令进行镜像压缩传输 容器清理:--rm参数的作用及使用场景对比 缓存优化:Docker镜像分层缓存机制解析,通过合理编写Dockerfile(将变动部分后置)来提高构建效率。
2025-11-21 13:37:09
256
原创 `.gitignore` 和 `.dockerignore`忽略范围
本文总结了 .gitignore 和 .dockerignore 文件中常用符号的匹配规则: /temp 仅匹配根目录下的 temp 文件/目录 temp 匹配任意层级的同名文件/目录 *temp 匹配所有以 temp 结尾的文件/目录 规则优先级从上到下,例外规则需后置。注意已跟踪文件需手动移除索引才能生效。.dockerignore 可能需用 temp/* 明确匹配目录内容。
2025-11-06 20:10:46
299
原创 Appium笔记(微信公众号)
Appium连接设备时,当系统仅连接一台Android设备,会忽略deviceName参数值,这是为简化测试配置。在多设备环境下,deviceName参数才用于匹配目标设备,但需配合udid确保准确性。此外,Appium 1.x版本使用inspect工具时,需在路径中添加/web/hub,并正确配置自动化名称、应用包名和活动等参数。这一机制提高了单设备测试的便捷性,同时确保多设备场景下的精确控制。
2025-09-24 18:58:03
311
原创 阿里测试之道读书笔记
《阿里测试之道》摘要:本文系统梳理了阿里巴巴在软件测试领域的核心方法论与实践经验。主要内容包括:代码门禁系统的架构设计与优化策略(拦截率达20%);质量反馈的三级决策体系;测试效能与质量的辩证关系;缩短反馈时间、降低成本和提升可信度的三维破局方案;稳定性四原则与创新度量指标(如变异测试);影子数据体系在压测中的应用;SQL预热技术提升数据库性能;移动端自动化测试方案;以及测试三定律等核心理念。文章特别强调工程能力对平衡质量与效率的关键作用,为不同规模企业提供了可落地的测试优化思路。
2025-06-27 16:03:11
789
原创 pytest心得体会
在参数化测试中总有些用例失败,由于前后置数据的关系需要单独运行那条用例如何运行呢。两个参数化,他们之间是存在组合关系的,组合方式就是笛卡尔积,我想要保证。是我们想要的数据,若写成。两个参数,参数需要写为。
2025-04-23 12:08:05
401
原创 Fastbot_Android安装与使用
running-minutes 遍历时长(分钟) # 遍历时间:–running-minutes 时间。–throttle 事件频率 遍历事件频率,建议为500-800。-s 设备号 多个设备需要指定设备号,单独设备无需此-s参数。–agent reuseq 遍历模式,无需更改。-p 包名 遍历app的包名,-p+包名。日志就在手机文件管理下找到。文章一 此处是可以跳过的。进入clone的路径。
2025-03-14 20:26:31
398
原创 以deepseek为例的AI学习及公司知识库的搭建
大概流程:数据准备→预处理→向量化存储→模型集成→构建检索和生成系统→权限和界面开发→测试优化→部署维护。列出本地已下载的 AI 模型。
2025-02-19 22:37:02
669
原创 测试工程师的linux 命令学习(持续更新中)
ls-l除文件名称外,亦将文件型态、权限、拥有者、文件大小等资讯详细列出第一列共10位,第1位表示文档类型,d表示目录,-表示普通文件,l表示链接文件。后9位,依次对应三种身份所拥有的权限,身份顺序为:owner、group、others,权限顺序为:readable、writable、excutable。如:-r-xr-x—的含义为当前文档是一个文件,拥有者可读、可执行,同一个群组下的用户,可读、可执行,其他人没有任何权限。第二列表示链接数,表示有多少个文件链接到inode号码。第三列表示拥
2025-01-17 17:22:24
2394
2
原创 CentOS 下载软件时报Error: Failed to synchronize cache for repo ‘AppStream‘解决方法
想要下载软件通通失败了,解决方法当然是问AI,按照AI的步骤试了几个小时都还是不行,这台服务器是centos8 和另一台服务器相同目录()进行了比较发现另一台服务根本没有。的名称改了下,就可以下载软件了,把AI问遍,无人会,解决法。算是瞎猫碰到死耗子吧。
2025-01-17 15:00:56
692
3
原创 mysql if函数如何处理无匹配记录的情况?使用聚合函数
让它返回一个结果,如使用count让它返回一个0,这条sql就可以按照预期运行了。如下图所示预期显示不存在,但是什么也没显示,很迷惑,这是笔者认为不存在就是。那就是False,应该显示不存在,实际上这是无匹配记录的情况,没有记录满足。,遇到匹配不到的数据,结果没有如期运行,不显示。表中如果能查到具体某辆车这辆车就是我司。问题描述:编者在使用mysql中的。,差不到就不是我司监管车辆显示。函数时,场景为在一个。
2024-11-08 12:40:35
462
1
原创 jenkins中的allure和email问题梳理
1.Allure Jenkins Plugin 只是一个集成插件,它要求你在 Jenkins 服务器上安装 Allure 命令行工具(Allure Commandline)来实际生成报告。需要需要邮箱地址和授权码,相当于邮箱的发送服务器。注意password中需要输入邮箱的。这是因为每次构建生成的报告jenkins都会进行归档,如。那么为何每个构建的报告不一样呢?那么需要将用例结果复制过来解决空报告问题。下图可见每次的报告路径均是。和下图填的用例结果路径(就是第一次构建生成的报告。)不一致会产生空的报告。
2024-10-10 14:35:01
1635
5
原创 一文看懂json(chatgpt4o辅助编写)
使用{}包裹的键值对集合。使用[]包裹的有序值列表。使用双引号包裹的文本。整数或浮点数。true或false。null表示空。这些元素可以相互嵌套,形成更复杂的 JSON 结构。
2024-09-26 17:16:36
677
原创 django快速上手admin
打开 PyCharm,点击 “File” > “New Project”。在左侧选择 “Django”,然后在右侧配置项目的路径和设置。勾选 “Enable Django Admin” 选项,PyCharm 会自动配置 Django 环境。指定 Python 解释器,通常可以选择一个虚拟环境或系统中的 Python 版本。点击 “Create”,PyCharm 会自动为你创建一个 Django 项目。在 PyCharm 的项目结构中,右键点击项目的根目录,选择 “New” > “Python Pa
2024-09-08 22:06:20
650
原创 agiletc通过触发器阻止公网用户进行注册
由于公司服务器断电损坏,开机失败,导致部署在其上面的程序无法运行,联系厂商进行修复还有一段时间,因此换了台服务器进行部署,但是这台服务器是公网服务器。agileTC是开放了注册接口,如果把用例放在公网上则有其它用户访问、删除共公司用例的风险?答案是使用触发器,当用户对user表执行。打开user表对此表进行设计 快捷键。效果如下 此sql不会被执行。操作时,拒绝执行此命令。对触发器进行编辑即可。
2024-08-14 18:02:03
285
原创 github工作流 码农高天版本
从远程分支复制一个到我的分支,比如现在我在stable那么就在stable复制一份到新分支。需要登录网站进行合并。
2024-07-04 10:22:14
487
原创 jenkins 动态参数实现让同事选择执行pytest框架的用例列表
选择 This project is parameterized 作为一个参数化的项目。注意 : pytest 需要填写绝对路径 或 将pytest 加入环境变量中。这将作为一个变量,后面有用到。具体逻辑请查看下列代码注释。填写选项 一行一个选项。(linu系统选这个)
2024-06-06 16:15:22
463
原创 SQL 的三值逻辑 (TRUE/FALSE/UNKNOW。)
前言 工作中要删除 运营表示username="张三"的数据有5条,某张表中username"张三"的数据,username的默认值为null,但是笔者在进行查询时username="张三"比username=张三少了100多条数据,故发现sql存在三值逻辑。因此,如果你执行 username ‘张三’ 这样的比较,对于那些用户名为 NULL 的记录,比较结果将是未知。根据 SQL 的三值逻辑,未知的结果将被视为不满足条件(即不为 true),因此这些记录会被过滤掉。
2024-04-23 16:01:20
506
原创 卸载jenkins和docker
如果您在安装Docker时添加了官方的存储库,您可能还需要移除它们,以避免未来自动更新或其他与Docker相关的操作。使用Docker命令找到Jenkins容器的ID(如果您还不知道),然后停止并删除该容器。总结 : -v /usr/local/jenkins:/var/jenkins_home \ 记得卸载数据持久化的目录。根据您的实际情况,可以考虑删除这些目录或其中的部分文件。),您需要确保在删除容器后也移除这个数据卷,以彻底清除所有配置和工作空间。文件并移除相关行,或者使用特定的命令(如。
2024-04-19 18:28:08
1340
1
原创 playwright页面加载速度度量
在正常重加载中,浏览器会检查页面中的缓存控制头(例如 Cache-Control、Expires等),并根据这些头信息来决定是否使用缓存。如果服务器响应中包含了不需要缓存的标志,或者缓存时间已经过期,浏览器就会强制重新请求页面的内容,否则就会使用缓存。这种方式会先清空浏览器的缓存,然后再进行硬性重加载。它会清除浏览器中的所有缓存,包括缓存的页面、图片、脚本等,然后再强制重新请求页面的所有资源。正常重加载只会重新请求那些被修改了或者过期的资源,对于未修改且仍在缓存有效期内的资源,浏览器会直接从缓存中加载。
2024-03-20 18:18:22
2314
原创 笔记 mysql text 不能设置他的默认值如not null
这是因为在 MySQL 中,当插入记录时,如果字段没有指定值且没有设置默认值,则会将其设置为 ‘’(空字符串)。然而,虽然不能在表定义中为 TEXT 字段指定默认值,但是在插入记录时,如果你省略了这个字段,MySQL 会自动将其设置为默认值。所以,如果你在插入记录时没有为 TEXT 类型的字段提供值,它们的默认值将会是 ‘’(空字符串)。因此,如果你尝试在创建表时为 TEXT类型的字段指定默认值,MySQL 会抛出错误。在 MySQL 中,TEXT 类型的字段不能直接指定默认值。
2024-03-11 10:14:01
1418
原创 测试好文及心得体会
目前我对下宣导也累了,点到了但下面人执行意识还是没转变,他们就是缺少特定触动的契机,只好放执行角色用。我一直和底下人说:测试能力就是自己的工具箱,积累的多少种工具并熟练掌握多少种工具的使用决定了能干什么,工作中发挥的个人创造力和想象力并为成果和效率提升提供贡献才是匠人。和执行人员,通过测试策略调整,人力安排优化,人员培养,技术方案引进,在满足质量把控前提下提高人效,控制漏测率和成本,这才是测试管理干的事。其中测试意识的培养很关键,很多执行人员就是听安排死执行,不思考测试目的和换位思考对方实际需要的是什么。
2024-03-01 17:12:53
568
原创 vlookup快速匹配相应数据
用B2的数据去找运输企业映射表A和B列的数据,如果找到了则返回第二列,匹配方式为精准匹配。=VLOOKUP(B2,运输企业映射表!A:B,2,FALSE)1.尽量都使用文本格式,但函数列一定要使用常规格式。2 若绝对引用不行则试下相对引用。
2024-02-20 14:19:25
361
原创 《谷歌软件测试之道》读书笔记——认知的提升之道
数据的准确性。对于搜索是性能,对新闻来说是时效性,对地图来说是综合性和完整性。(我司的特点就是核对对数据,数据要对)(确实是,发现这种问题首先检查测试用例,再去沟通是否漏测,开发如何产生的bug)
2023-12-13 18:14:37
333
原创 python解析xmind统计测试用例/测试点 个数及执行情况
前言:统计的是每个分支最后一个节点的状态。xmind版本 23.0911172。
2023-11-07 17:17:55
1128
2
原创 MySQL空间函数知识点总结
函数计算两个地理坐标点之间的距离,使用的是球面几何学的方法,考虑了地球的曲率。这在计算全球范围的距离时更为准确。函数计算两个地理坐标点之间的距离,使用的是平面几何学的直线距离,这在小范围的距离计算上是准确的。是两个用于计算两个地理坐标点之间距离的函数。它们的区别在于计算距离的方法和结果的单位。(degrees)。这意味着结果以度为单位,不考虑地球的曲率,适用于小范围的距离计算。第二个参数 4326 表示坐标系统的编号,这里是使用 WGS 84 坐标系统。结果单位通常是与坐标系的单位相同,通常是。
2023-10-13 10:44:29
1763
原创 pytest执行顺序,不要迷恋pytest-order
执行是按照ascII码的顺序执行的,pytest是按照每个模块从上到下的顺序执行的这样就很好,同一个模块就不需要排序了。序号1-12来进行排序,执行时导致先会执行两个文件夹中order=1的用例造成测试结果错误。所以说pytest的执行顺序是默认编写的顺序来执行的。解决办法:使用pytest默认排序,不使用。笔者在编写场景化测试用例时。序号1-12来进行排序。
2023-08-26 11:19:39
419
原创 allure相关笔记
allure.story:表示一个具体的测试场景,位于特性下。具体主流程或分支流程-如增、删、改。@allure.epic:最高级别的分类,表示一个大的功能、模块或业务场景。@allure.feature:表示一个功能模块或业务子场景,位于史诗下。@allure.title:表示故事中的一个具体测试场景的标题。
2023-08-15 09:55:11
300
原创 编写一个服务(python为例)
首先服务也是一种程序,但它是一种比较特殊的程序:服务是在系统后台运行、并等待用户或其它软件调用的一类特殊程序。我们通过执行命令所打开的进程大都属于是交互式进程,如果不采用nohup进行处理,那么这些进程基本上都是与终端相关,只要将进程所在的终端关闭,那么这些进程也就自动终止了。但是服务则不同,我们无论在哪个终端上运行了一个服务,这个服务所产生的进程都与终端无关,也就是说,将终端关闭之后,这些服务进程仍然会在系统后台自动运行。一般以d结尾d是英文单词daemon的缩写,表示这是一种守护进程。
2023-08-13 02:12:00
1535
原创 mysql 一条数据若干个字段,有多少字段是可以用户实现业务的字段,筛选无效字段小于两个的数量
最后把这些字段值加起来 无效字段的和小于等于2就可以使用。是对字段进行清洗,如果符合条件就是0不符合条件就是1,总结,对某一条数据筛选要放在where后。
2023-06-21 13:08:46
126
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅