fix: update release.md

Description:

Log:
This commit is contained in:
mikigo 2024-01-18 10:06:20 +08:00
parent a5c50338e0
commit 891864c099
1 changed files with 168 additions and 168 deletions

View File

@ -4,25 +4,25 @@
**New**
- 切换 `YouQu` 的正式域名为youqu.uniontech.com
- 重新构建了文档 UI 布局,对多个文档模块及文档内容进行了修改、调整、优化,增加了留言模块;
- 1070 窗管获取窗口信息的接口 `GetAllWindowStatesList` 换了调用逻辑YouQu 适配最新的接口;**[@泽铭](https://github.com/Jimijun)**
- 切换 `YouQu` 的正式域名为youqu.uniontech.com [@mikigo](https://github.com/mikigo)
- 重新构建了文档 UI 布局,对多个文档模块及文档内容进行了修改、调整、优化,增加了留言模块;[@mikigo](https://github.com/mikigo)
- 1070 窗管获取窗口信息的接口 `GetAllWindowStatesList` 换了调用逻辑YouQu 适配最新的接口;感谢 **[@泽铭](https://github.com/Jimijun)**
## 2.4.22023/12/27
**New**
- 将 `IMAGE_RATE` 默认值设置为 `0.8`;经过和业务专家多轮次讨论和反复验证观察,我们认为取 `0.8` 是一个相对平衡识别准确性和用例稳定性的值;
- 将 `IMAGE_RATE` 默认值设置为 `0.8`;经过和业务专家多轮次讨论和反复验证观察,我们认为取 `0.8` 是一个相对平衡识别准确性和用例稳定性的值;[@mikigo](https://github.com/mikigo)
## 2.4.12023/12/26
**New**
- `dagtail` 新增 `center` 方法;
- `dagtail` 新增 `center` 方法;[@mikigo](https://github.com/mikigo)
**Fix**
- 修复 `AssertCommon.assert_image_exist` 参数 `rate` 主动传入,没有用到全局配置 `IMAGE_RATE`
- 修复 `AssertCommon.assert_image_exist` 参数 `rate` 主动传入,没有用到全局配置 `IMAGE_RATE`[@mikigo](https://github.com/mikigo)
## 2.4.02023/12/22
@ -45,13 +45,13 @@
**New**
- `src/__init__.py` 里面的导入全部设置别名,以便后续各组件重命名之后仍能保持接口一致性和兼容性;
- `src/__init__.py` 里面的导入全部设置别名,以便后续各组件重命名之后仍能保持接口一致性和兼容性;[@mikigo](https://github.com/mikigo)
- 将 `Wayland` 下输入的方法区分中英文,中文按现有 `input_message` 处理,英文数字字符等使用 `press_key` 处理; [issues #17](https://github.com/linuxdeepin/deepin-autotest-framework/issues/17)
- 有些镜像没有 `$HOME/.Xauthority` 文件(咱也不知道为啥),`YouQu` 执行会报错,我们只能创建一个空的同名文件,以确保程序能正常运行,但 `Xlib.xauth` 获取不到有效信息会有一些 `warning` 日志,看着烦人我都能接受,不能接受的是经常会导致大家在分析用例失败原因的时候将矛头指向它,然后每次我就需要解释这个 `warning` 提示不是问题,因此在底层将这部分日志输出屏蔽掉;
- 有些镜像没有 `$HOME/.Xauthority` 文件(咱也不知道为啥),`YouQu` 执行会报错,我们只能创建一个空的同名文件,以确保程序能正常运行,但 `Xlib.xauth` 获取不到有效信息会有一些 `warning` 日志,看着烦人我都能接受,不能接受的是经常会导致大家在分析用例失败原因的时候将矛头指向它,然后每次我就需要解释这个 `warning` 提示不是问题,因此在底层将这部分日志输出屏蔽掉;[@mikigo](https://github.com/mikigo)
**Fix**
- 修改 `public` 目录权限,以解决远程开发时无法同步文件的问题;
- 修改 `public` 目录权限,以解决远程开发时无法同步文件的问题;[@mikigo](https://github.com/mikigo)
- 修复通过标签批量执行时,传入的标签超过 `1000` 个,报错超过 `Python` 默认最大递归深度的问题;感谢 **[@有志](https://github.com/zhao-george)**
## 2.3.62023/12/13
@ -68,7 +68,7 @@
- 修复 `Wayland` 下系统监视器使用 `WaylandWindowInfo.window_info()`,获取的窗口名称为空;[issues #18](https://github.com/linuxdeepin/deepin-autotest-framework/issues/20)
- 解除 `env.sh` 中某个 `deb` 包安装失败后替换源 `retry` 机制,因为用固定的源替换之后,容易出现某些包安装失败,而不容易关注到首次包安装失败的问题,给定位环境安装失败带来困难;[issues #19](https://github.com/linuxdeepin/deepin-autotest-framework/issues/19)
- 修复 `env.sh` 里面报错 `ERROR: unknown command "cache" - maybe you meant "check"`
- 修复 `env.sh` 里面报错 `ERROR: unknown command "cache" - maybe you meant "check"`[@mikigo](https://github.com/mikigo)
- 修复用例收集数量为 `0` 时,报错 `ci_result.json` 文件找不到;[issues #20](https://github.com/linuxdeepin/deepin-autotest-framework/issues/20)
## 2.3.52023/12/04
@ -81,11 +81,11 @@
**New**
- 用例执行过程中输出执行进度百分比;
- 用例执行过程中输出执行进度百分比;[@mikigo](https://github.com/mikigo)
**Fix**
- `env.sh` 增加清理 `pip` 缓存;
- `env.sh` 增加清理 `pip` 缓存;[@mikigo](https://github.com/mikigo)
- 修复在低版本系统上安装的 `libkf5wayland-dev` 版本过高与 `libkf5waylandclient5` 版本不匹配,根据获取 `libkf5waylandclient5` 版本指定 `libkf5wayland-dev` 版;感谢 **[@玉婷](https://github.com/momiji33)**
## 2.3.32023/11/22
@ -93,41 +93,41 @@
**Fix**
- 使用 `Xdotool` 检索窗口 ID 时,如果有多个窗口,则输出以 `\n` 结尾。在原始代码中,使用 `split("\n")` 直接拆分字符串可能会导致结果列表的最后一个元素为空字符串。在迭代窗口 ID 并将其转换为 `int` 类型时,这种情况会导致错误。感谢 **[@有志](https://github.com/zhao-george)**
- 图像识别(`image-center`)发布了新版本 `2023.11.22` **[@有志](https://github.com/zhao-george)**OCR`pdocr-rpc`)发布了新版本 `2023.11.17`,增加了识别的总耗时、每次识别间隔时间;
- 图像识别(`image-center`)发布了新版本 `2023.11.22` **[@有志](https://github.com/zhao-george)**OCR`pdocr-rpc`)发布了新版本 `2023.11.17`,增加了识别的总耗时、每次识别间隔时间;[@mikigo](https://github.com/mikigo)
## 2.3.22023/11/14
**New**
- 由于 `PMS` 用例管理系统存在缺陷,框架移除从 `CSV` 反向同步标签到 `PMS` 功能;
- 由于 `PMS` 用例管理系统存在缺陷,框架移除从 `CSV` 反向同步标签到 `PMS` 功能;[@mikigo](https://github.com/mikigo)
**Fix**
- 优化数据回填逻辑,修复同一个用例 `py` 包含多个用例,数据回填时,中间的失败结果被后续用例更新为成功的问题;
- 修复某些机型下(`华为W525`)失败录屏进程阻塞的问题,是由于特殊机型下 `FFmpeg` 的 Bug 导致,但 `FFmpeg` 修复更新太耗时,框架先做异常处理;
- 优化数据回填逻辑,修复同一个用例 `py` 包含多个用例,数据回填时,中间的失败结果被后续用例更新为成功的问题;[@mikigo](https://github.com/mikigo)
- 修复某些机型下(`华为W525`)失败录屏进程阻塞的问题,是由于特殊机型下 `FFmpeg` 的 Bug 导致,但 `FFmpeg` 修复更新太耗时,框架先做异常处理;[@mikigo](https://github.com/mikigo)
## 2.3.12023/11/08
**New**
- 集成 `ydotool` 键鼠控制方案,解决注销登录界面无法控制键鼠的问题;
- 集成 `ydotool` 键鼠控制方案,解决注销登录界面无法控制键鼠的问题;[@mikigo](https://github.com/mikigo)
**Fix**
- 修复 `PMS` 回填数据时,`timeout` 报错的问题;
- 修复反向同步标签,导致 `PMS` 产品库用例 `title` 为空的问题;
- 修复 `PMS` 回填数据时,`timeout` 报错的问题;[@mikigo](https://github.com/mikigo)
- 修复反向同步标签,导致 `PMS` 产品库用例 `title` 为空的问题;[@mikigo](https://github.com/mikigo)
## 2.3.02023/10/27
**New**
- 增加了 `YouQu` 最新版本的检查,如果本地执行版本不是最新的,会打印更新提示信息;
- `public` 独立发布,基础框架移除此模块,在环境部署阶段进行 `public` 模块的初始化;
- 增加了 `YouQu` 最新版本的检查,如果本地执行版本不是最新的,会打印更新提示信息;[@mikigo](https://github.com/mikigo)
- `public` 独立发布,基础框架移除此模块,在环境部署阶段进行 `public` 模块的初始化;[@mikigo](https://github.com/mikigo)
**Fix**
- 修复 `youqu` 命令无法接收带空格的参数的问题;感谢 **[@禄烨](https://github.com/lu-xianseng)**
- `OCR` 检测模型升级到 `V4` 之后,在识别某些文本情况下出现不能识别的问题,暂时先回滚到 `V3`
- `OCR` 检测模型升级到 `V4` 之后,在识别某些文本情况下出现不能识别的问题,暂时先回滚到 `V3` [@mikigo](https://github.com/mikigo)
- 修复了不同的 `case` 目录下 `py` 文件的名称一样,导出(`manage.py csvctl -p2c`)数据错误的问题;感谢 **[@有志](https://github.com/zhao-george)**
-----------------------
@ -136,11 +136,11 @@
**New**
- `OCR` 检测模型升级到 `V4` ,中英文场景检测模型准确率提升 4.9%,识别模型准确率提升 2%
- `OCR` 检测模型升级到 `V4` ,中英文场景检测模型准确率提升 4.9%,识别模型准确率提升 2%[@mikigo](https://github.com/mikigo)
- 支持标签反向同步:将 `csv` 中的标签同步到 `pms`
- 支持标签反向同步:将 `csv` 中的标签同步到 `pms` [@mikigo](https://github.com/mikigo)
- 解除子项目的工程名称以 `autotest_` 开头的限制,子项目工程名称可以为任意名称;
- 解除子项目的工程名称以 `autotest_` 开头的限制,子项目工程名称可以为任意名称;[@mikigo](https://github.com/mikigo)
配置文件 `globalconfig.ini` 中的 `APP_NAME` 和命令行参数 `-a/--app` 仅支持传入工程名称的全称:
@ -150,7 +150,7 @@
youqu manage.py run -a autotest_deepin_music
```
- 新增导入全局配置对象:
- 新增导入全局配置对象:[@mikigo](https://github.com/mikigo)
```python
from setting import conf
@ -162,19 +162,19 @@
from setting.globalconfig import GlobalConfig
```
- 继续尝试将一些功能模块拆分为独立构件;
- 继续尝试将一些功能模块拆分为独立构件;[@mikigo](https://github.com/mikigo)
- 增加了在线文档的显示宽度;
- 增加了在线文档的显示宽度;[@mikigo](https://github.com/mikigo)
- 增加执行前显示执行的Python文件数量
- 增加执行前显示执行的Python文件数量[@mikigo](https://github.com/mikigo)
**Fix**
- 修复从 `pms` 标签【设备类型】为 `null` 时,同步到 `csv` 文件写入为 `null`
- 修复无法导出 `csv` 文件的问题;
- 修复了键盘 `printscreen` 按钮无效的问题;
- 修复了 `sniff` 命令报错无法找到 `src` 模块的问题;
- 修复 `assert_ocr_not_exist` 传入多个识别目标逻辑判断错误的问题;
- 修复从 `pms` 标签【设备类型】为 `null` 时,同步到 `csv` 文件写入为 `null`[@mikigo](https://github.com/mikigo)
- 修复无法导出 `csv` 文件的问题;[@mikigo](https://github.com/mikigo)
- 修复了键盘 `printscreen` 按钮无效的问题; [@mikigo](https://github.com/mikigo)
- 修复了 `sniff` 命令报错无法找到 `src` 模块的问题;[@mikigo](https://github.com/mikigo)
- 修复 `assert_ocr_not_exist` 传入多个识别目标逻辑判断错误的问题;[@mikigo](https://github.com/mikigo)
--------------------------
@ -182,12 +182,12 @@
**New**
- 尝试将一些功能模块拆分为独立构件;
- 尝试将一些功能模块拆分为独立构件;[@mikigo](https://github.com/mikigo)
**Fix**
- 修复了远程执行传入 `app_name` 无法收集到用例的问题;
- 优化了 `docs` 文档内容及排版;
- 修复了远程执行传入 `app_name` 无法收集到用例的问题; [@mikigo](https://github.com/mikigo)
- 优化了 `docs` 文档内容及排版;[@mikigo](https://github.com/mikigo)
-----------------------------
@ -195,13 +195,13 @@
new
- 新增用例脚本 `py` 文件 `id` 自动同步到 `csv` 文件功能;
- 新增自动从 `pms` 上获取用例相关标签的功能;
- 新增用例脚本 `py` 文件 `id` 自动同步到 `csv` 文件功能;[@mikigo](https://github.com/mikigo)
- 新增自动从 `pms` 上获取用例相关标签的功能;[@mikigo](https://github.com/mikigo)
fix
- 修复了 `letmego` 在开发调试时也会记录执行过程的问题;
- 优化了在线文档内容和排版;
- 修复了 `letmego` 在开发调试时也会记录执行过程的问题;[@mikigo](https://github.com/mikigo)
- 优化了在线文档内容和排版;[@mikigo](https://github.com/mikigo)
----------------------------------
@ -209,35 +209,35 @@ fix
new
- 正式启用 `letmego` 技术方案;
- 正式启用 `letmego` 技术方案;[@mikigo](https://github.com/mikigo)
fix
- 对 `docs` 里面细化了远程执行章节的描述;
- 对 `docs` 里面优化了标签化管理章节的描述;
- 对 `docs` 里面细化了远程执行章节的描述;[@mikigo](https://github.com/mikigo)
- 对 `docs` 里面优化了标签化管理章节的描述;[@mikigo](https://github.com/mikigo)
## 2.1.52023/08/31
new
- 将有趣的文档系统迁移到 **[@linuxdeepin](https://github.com/linuxdeepin/deepin-autotest-framework)** ,剥离文档中的图片资源,采用 `CDN` 网络加速方式加载;
- 将有趣的文档系统迁移到 **[@linuxdeepin](https://github.com/linuxdeepin/deepin-autotest-framework)** ,剥离文档中的图片资源,采用 `CDN` 网络加速方式加载;[@mikigo](https://github.com/mikigo)
- 尝试合入一个有趣的功能;
fix
- 修复了 `Wayland` 键鼠工具没有鼠标相对移动方法 `moveRel` 的问题;
- 修复了` Wayland` 下获取窗口信息功能模块中环境变量的问题;
- 优化了 `startproject` 功能的一些信息输出;
- 修复了特殊场景下 `env_dev.sh` 开发环境部署是可能影响到正式环境 `env.sh` 的问题;
- 修复了 `Wayland` 键鼠工具没有鼠标相对移动方法 `moveRel` 的问题; [@mikigo](https://github.com/mikigo)
- 修复了` Wayland` 下获取窗口信息功能模块中环境变量的问题;[@mikigo](https://github.com/mikigo)
- 优化了 `startproject` 功能的一些信息输出;[@mikigo](https://github.com/mikigo)
- 修复了特殊场景下 `env_dev.sh` 开发环境部署是可能影响到正式环境 `env.sh` 的问题;[@mikigo](https://github.com/mikigo)
## 2.1.22023/08/22
new
- 增加 `OCR` 识别自动重试机制,默认重试 2 次,支持动态传入重试次数;
- 增加 `OCR` 识别自动重试机制,默认重试 2 次,支持动态传入重试次数;[@mikigo](https://github.com/mikigo)
- 使用窗管最新提供的二进制接口,优化基于 `UI` 的元素定位方案在 `Wayland` 下获取窗口信息的方法;感谢桌面测试部 **@何权 @孙翠** 、窗管研发 **@泽铭** 的大力支持。
- 扩充 `skipif` 条件跳过的功能函数:
- 扩充 `skipif` 条件跳过的功能函数:[@mikigo](https://github.com/mikigo)
- `skipif_xdg_type` 支持 `x11``wayland` 上跳过;
- `skipif_cpu_name` 支持不同 `cpu` 上跳过,比如:`skipif_cpu_name-KLVVW5821`
@ -246,11 +246,11 @@ new
fix
- 修复 SW 架构环境依赖的问题,原因是之前我这里本地没有 SW 的机器,没有做相关适配;
- 修复 SW 架构环境依赖的问题,原因是之前我这里本地没有 SW 的机器,没有做相关适配;[@mikigo](https://github.com/mikigo)
- 修复子项目单独需要三方包 `pexpect`,由于之前是预装到镜像里面的,但基础框架不需要,因此没有装载到虚拟环境里面,导致子项目依赖报错。
- 修复子项目单独需要三方包 `pexpect`,由于之前是预装到镜像里面的,但基础框架不需要,因此没有装载到虚拟环境里面,导致子项目依赖报错。[@mikigo](https://github.com/mikigo)
- 修复子项目 cv 导入报错的问题;
- 修复子项目 cv 导入报错的问题;[@mikigo](https://github.com/mikigo)
原因为youqu 的图像识别功能兼容两种情况,一种是面向服务,就是本地测试机不需要安装 `OpenCV`,用例中的图像识别会通过远程服务接口进行图像识别和结果获取;第二种是原生,就是本地直接安装 `OpenCV` 直接用。两个情况的优先级是优先判断本地存在,否则走服务。
@ -343,7 +343,7 @@ youqu manage.py run
**5、其他一些小小功能更新**
1新增关闭分辨率检测的参数值
1新增关闭分辨率检测的参数值[@mikigo](https://github.com/mikigo)
```sh
youqu manage.py run --resolution no
@ -359,7 +359,7 @@ RESOLUTION = 1920x1080
`resolution` 这个参数一直都有的,只不过之前是用于指定分辨率大小,比如 `--resolution 1920x1080`,但有些接口的项目不需要这个检查,可以给它个 no 就好了,当然 CICD 上关闭,需要流水线上把这个参数加上;
2新增失败录屏从第几次失败开始录制视频的命令行参数
2新增失败录屏从第几次失败开始录制视频的命令行参数[@mikigo](https://github.com/mikigo)
之前这个配置项只能在 `setting/globalconfig.ini` 里面的配置:
@ -379,37 +379,37 @@ youqu manage.py run --record_failed_case 2
fix
- 修复 `remote` 执行时,在某些情况下无法生成测试报告的问题;
- 修复 `remote` 执行时,在某些情况下无法生成测试报告的问题;[@mikigo](https://github.com/mikigo)
## 1.3.02023/07/10
fix
- 进一步优化了 `env.sh` 安装 `Python` 的三方源;参考:[配置Python源的几种方法](https://funny-dream.github.io/funny-docs/Python/配置Python源的几种方法/)
- 修复 `wayland_autotool` 受安全管控的问题;
- 修复了`wayland`下偶现找不到 `.Xauthority` 文件的问题;
- 修复 `wayland_autotool` 受安全管控的问题;[@mikigo](https://github.com/mikigo)
- 修复了`wayland`下偶现找不到 `.Xauthority` 文件的问题; [@mikigo](https://github.com/mikigo)
## 1.2.92023/06/26
fix
- 优化远程执行 `remote` 的参数直接传给远程机器的 `run` 命令,不用再单独处理远程执行的参数逻辑,后续专注于本地执行功能开发,远程执行自动适用;
- 优化远程执行 `remote` 的参数直接传给远程机器的 `run` 命令,不用再单独处理远程执行的参数逻辑,后续专注于本地执行功能开发,远程执行自动适用;[@mikigo](https://github.com/mikigo)
- `env.sh` 移除 `pyyaml` 安装,由子项目在 `requirement.txt` 里面定义,框架自动加载;
- `env.sh` 移除 `pyyaml` 安装,由子项目在 `requirement.txt` 里面定义,框架自动加载;[@mikigo](https://github.com/mikigo)
- 优化了 `env.sh` 安装 `Python` 的三方源;
- 优化了 `env.sh` 安装 `Python` 的三方源;[@mikigo](https://github.com/mikigo)
## 1.2.82023/06/09
fix
- 修复了 `pypi` 安装 `numpy` 存在系统安全管控的问题;
- 修复了 `pypi` 安装 `numpy` 存在系统安全管控的问题;[@mikigo](https://github.com/mikigo)
## 1.2.72023/06/08
fix
- `env.sh` 中安装 `Python` 包未指定版本时,日志输出安装的版本;
- `env.sh` 中安装 `Python` 包未指定版本时,日志输出安装的版本;[@mikigo](https://github.com/mikigo)
```shell
pdocr-rpc 2.0.1
@ -417,16 +417,16 @@ fix
funnylog 1.1.3
```
- 修复 `-f` 测试套件执行报错的的问题;
- 修复 `-f` 测试套件执行报错的的问题;[@mikigo](https://github.com/mikigo)
## 1.2.62023/06/07
fix
- 修复 `wayland` 上调用鼠标中键、右键不生效的问题;
- 修复 `pubilic/dde_desktop_public_widget` 里面通过配置文件定位桌面文件的方法,坐标没有拆包的问题;
- 优化了等待的日志输出;
- `pycreeze` 版本升级到 `0.1.29`,导致与 `pyautogui` `0.9.53` 不兼容,`env.sh` 里面增加指定 `pycreeze` 版本为 `0.1.28`
- 修复 `wayland` 上调用鼠标中键、右键不生效的问题;[@mikigo](https://github.com/mikigo)
- 修复 `pubilic/dde_desktop_public_widget` 里面通过配置文件定位桌面文件的方法,坐标没有拆包的问题;[@mikigo](https://github.com/mikigo)
- 优化了等待的日志输出;[@mikigo](https://github.com/mikigo)
- `pycreeze` 版本升级到 `0.1.29`,导致与 `pyautogui` `0.9.53` 不兼容,`env.sh` 里面增加指定 `pycreeze` 版本为 `0.1.28`[@mikigo](https://github.com/mikigo)
## 1.2.52023/05/16
@ -441,9 +441,9 @@ new
~$: youqu run -a apps/autotest_deepin_music
```
后两种入参方式可以很方便在输入命令的过程中使用补全。
后两种入参方式可以很方便在输入命令的过程中使用补全。[@mikigo](https://github.com/mikigo)
- remote 远程执行新增从命令行传入测试机信息,远程机器的`user@ip:password`,多个机器用'/'连接,如果 `password` 不传入,默认取 `setting/remote.ini``CLIENT_PASSWORD` 的值,比如:`uos@10.8.13.xx:1` 或 `uos@10.8.13.xx`
- remote 远程执行新增从命令行传入测试机信息,远程机器的`user@ip:password`,多个机器用'/'连接,如果 `password` 不传入,默认取 `setting/remote.ini``CLIENT_PASSWORD` 的值,比如:`uos@10.8.13.xx:1` 或 `uos@10.8.13.xx` [@mikigo](https://github.com/mikigo)
```shell
python3 manage.py remote -c uos@10.8.13.xx/uos@10.8.13.xx
@ -452,50 +452,50 @@ new
fix
- 日志模块修改为函数执行之前打印日志;
- 日志模块增加白名单,通过类名开头,结束,包含等关键字控制需要打印的函数日志;
- 远程执行时,如果传入了 `app_name` 只会将 `apps` 目录下 `app_name` 的目录发送到测试机;
- `env.sh` 移除 `python3-dev`
- 修复 `Wayland``env.sh` 环境安装失败的问题,优化了 `deb` 依赖安装的逻辑;
- 将 `env.sh` 刷新源的日志在终端显示,解决在 `CI` 环境下,长时间不输出日志连接中断的问题;
- 修复`1060` 华为机型安装键鼠工具时依赖不兼容的问题;
- 日志模块修改为函数执行之前打印日志;[@mikigo](https://github.com/mikigo)
- 日志模块增加白名单,通过类名开头,结束,包含等关键字控制需要打印的函数日志;[@mikigo](https://github.com/mikigo)
- 远程执行时,如果传入了 `app_name` 只会将 `apps` 目录下 `app_name` 的目录发送到测试机;[@mikigo](https://github.com/mikigo)
- `env.sh` 移除 `python3-dev`[@mikigo](https://github.com/mikigo)
- 修复 `Wayland``env.sh` 环境安装失败的问题,优化了 `deb` 依赖安装的逻辑;[@mikigo](https://github.com/mikigo)
- 将 `env.sh` 刷新源的日志在终端显示,解决在 `CI` 环境下,长时间不输出日志连接中断的问题;[@mikigo](https://github.com/mikigo)
- 修复`1060` 华为机型安装键鼠工具时依赖不兼容的问题;[@mikigo](https://github.com/mikigo)
## 1.2.42023/02/27
fix
- 修改 `CURRENT` 文件;
- 修改 `CURRENT` 文件;[@mikigo](https://github.com/mikigo)
## 1.2.32023/02/27
new
- `pylint.sh` 支持通过位置参数传入文件路径:`bash pylint.sh apps/autotest_deepin_music`,好处是参数路径可以在终端补全;
- 新增系统命令 `youqu-pylint` ,用于静态代码扫描,使用方法: `youqu-pylint apps/autotest_deepin_music`
- 由于系统一些 `dbus` 接口改变,公共库中的 `dbus` 方法将不再维护,由子项目在 `other_widget.py` 里面进行维护;
- `pylint.sh` 支持通过位置参数传入文件路径:`bash pylint.sh apps/autotest_deepin_music`,好处是参数路径可以在终端补全;[@mikigo](https://github.com/mikigo)
- 新增系统命令 `youqu-pylint` ,用于静态代码扫描,使用方法: `youqu-pylint apps/autotest_deepin_music`[@mikigo](https://github.com/mikigo)
- 由于系统一些 `dbus` 接口改变,公共库中的 `dbus` 方法将不再维护,由子项目在 `other_widget.py` 里面进行维护;[@mikigo](https://github.com/mikigo)
fix
- 修复 `ssh` 环境下运行提示 “无法连接” 的问题;
- 修复运行时程序退出,不输出异常日志的问题;
- 修复`youqu remote xxx` 远程执行时,在服务端 `Ctrl + C` 无法停止程序运行的问题;
- 修复 `ssh` 环境下运行提示 “无法连接” 的问题;[@mikigo](https://github.com/mikigo)
- 修复运行时程序退出,不输出异常日志的问题;[@mikigo](https://github.com/mikigo)
- 修复`youqu remote xxx` 远程执行时,在服务端 `Ctrl + C` 无法停止程序运行的问题;[@mikigo](https://github.com/mikigo)
## 1.2.22023/02/08
new
- 新增气泡类图像识别方案;`image_utils.py::ImageUtil::get_during`
- 图像识别新增指定区域识别,传入 `[x, y, w, h]`x: 左上角横坐标y: 左上角纵坐标w: 宽度h: 高度;根据匹配度返回坐标;
- 图像识别新增指定目标图片,传入目标图片路径;
- `env.sh` 移除 `pypinyin`;
- 优化执行 `env.sh` 时的日志输出;
- `manage.py` 移除了参数 `session_timeout` ,框架根据全局的 `timeout` 以及用例自定义的 `timeout` 自动计算出 `sessiontimeout` 的值;
- 新增 ocr 服务器链接重试默认重试1次支持动态传入参数
- 新增气泡类图像识别方案;`image_utils.py::ImageUtil::get_during`[@mikigo](https://github.com/mikigo)
- 图像识别新增指定区域识别,传入 `[x, y, w, h]`x: 左上角横坐标y: 左上角纵坐标w: 宽度h: 高度;根据匹配度返回坐标;[@mikigo](https://github.com/mikigo)
- 图像识别新增指定目标图片,传入目标图片路径;[@mikigo](https://github.com/mikigo)
- `env.sh` 移除 `pypinyin`[@mikigo](https://github.com/mikigo)
- 优化执行 `env.sh` 时的日志输出;[@mikigo](https://github.com/mikigo)
- `manage.py` 移除了参数 `session_timeout` ,框架根据全局的 `timeout` 以及用例自定义的 `timeout` 自动计算出 `sessiontimeout` 的值;[@mikigo](https://github.com/mikigo)
- 新增 ocr 服务器链接重试默认重试1次支持动态传入参数[@mikigo](https://github.com/mikigo)
fix
- 修复了一些 pylint 扫描的代码风格问题;
- 重新设计了测试报告主题;
- 修复了一些 pylint 扫描的代码风格问题;[@mikigo](https://github.com/mikigo)
- 重新设计了测试报告主题;[@mikigo](https://github.com/mikigo)
## 1.2.12023/01/06
@ -507,14 +507,14 @@ new
youqu run -a deepin-music -k 001
```
- `RPC` 服务 `IP` 地址修改为域名http://youqu.uniontech.com指定不同的端口
- 在线文档地址修改为域名http://youqu.uniontech.com原来的地址 10.8.10.215 将不在使用;
- `RPC` 服务 `IP` 地址修改为域名http://youqu.uniontech.com指定不同的端口[@mikigo](https://github.com/mikigo)
- 在线文档地址修改为域名http://youqu.uniontech.com原来的地址 10.8.10.215 将不在使用;[@mikigo](https://github.com/mikigo)
fix
- 修复 `--count` 参数可能出现与其他框架的工程依赖存在冲突,报错重复注册的问题;
- 修复 CI 环境下多个工程存在 Python 环境变量指向错误,导包报错的问题;
- 修复单独运行方法时无日志输出的 Bug
- 修复 `--count` 参数可能出现与其他框架的工程依赖存在冲突,报错重复注册的问题;[@mikigo](https://github.com/mikigo)
- 修复 CI 环境下多个工程存在 Python 环境变量指向错误,导包报错的问题;[@mikigo](https://github.com/mikigo)
- 修复单独运行方法时无日志输出的 Bug[@mikigo](https://github.com/mikigo)
## 1.2.02022/12/30
@ -523,24 +523,24 @@ fix
new
- 修改工程名称为 `youqu`
- 将 sphinx 文档工程迁移到单独的仓库;
- 修改工程名称为 `youqu`[@mikigo](https://github.com/mikigo)
- 将 sphinx 文档工程迁移到单独的仓库;[@mikigo](https://github.com/mikigo)
fix
- 修复 startapp 创建工程时存在工程名称时无法继续创建;
- 修复了 OCR 服务在并发时可能出现无法返回结果的问题,提升 OCR 服务高并发稳定性;
- 修复 PMS 同步标签到 CSV 文件不支持用例库的问题;
- 修复 startapp 创建工程时存在工程名称时无法继续创建;[@mikigo](https://github.com/mikigo)
- 修复了 OCR 服务在并发时可能出现无法返回结果的问题,提升 OCR 服务高并发稳定性;[@mikigo](https://github.com/mikigo)
- 修复 PMS 同步标签到 CSV 文件不支持用例库的问题;[@mikigo](https://github.com/mikigo)
## 1.1.42022/12/14
new
- 新增 `startapp` 子命令创建子项目工程模板: `python3 manage.py startapp autotest_deepin_xxx`
- 新增 `startapp` 子命令创建子项目工程模板: `python3 manage.py startapp autotest_deepin_xxx` [@mikigo](https://github.com/mikigo)
- 新增指定用例重复执行次数;
- 新增指定用例重复执行次数;[@mikigo](https://github.com/mikigo)
- 去掉批量执行前收集用例的步骤;
- 去掉批量执行前收集用例的步骤;[@mikigo](https://github.com/mikigo)
- 增加开始执行时打印一些执行参数,如:
@ -552,9 +552,9 @@ new
会话超时时间: 11880s (3小时18分0秒)
```
- 定制修改allure报告logo、title、默认语言
- 定制修改allure报告logo、title、默认语言[@mikigo](https://github.com/mikigo)
- `manage.py` 执行开始时打印 logo 和当前版本:
- `manage.py` 执行开始时打印 logo 和当前版本:[@mikigo](https://github.com/mikigo)
```shell
██╗ ██╗ ██████╗ ██╗ ██╗ ██████╗ ██╗ ██╗
@ -569,7 +569,7 @@ new
█ ▄ █ ▄ ▀▀█
```
- 新增指定用例执行次数;
- 新增指定用例执行次数;[@mikigo](https://github.com/mikigo)
- 装饰器方法指定次数;
@ -585,7 +585,7 @@ new
python3 manage.py run -a deepin-music -k 001 --count 2
```
- image_utils 增加函数 save_temporary_picture支持指定屏幕区域截图并返回图片存放的本地路径后续使用 assert_image_exist 进行断言
- image_utils 增加函数 save_temporary_picture支持指定屏幕区域截图并返回图片存放的本地路径后续使用 assert_image_exist 进行断言[@mikigo](https://github.com/mikigo)
- ```Python
def test_music_679537(self):
@ -594,7 +594,7 @@ new
self.assert_image_exit(pic_path)
```
- button_center 新增 btn_size 获取控件左上角坐标及长宽,用于动态的截取元素的图片,可用于定位断言
- button_center 新增 btn_size 获取控件左上角坐标及长宽,用于动态的截取元素的图片,可用于定位断言[@mikigo](https://github.com/mikigo)
- ```python
def test_music_679537(self):
@ -603,123 +603,123 @@ new
self.assert_image_exit(pic_path)
```
- allure 报告中定位问题除了日志、截图、录屏外,调用的函数增加了 step 步骤展示;
- allure 报告中定位问题除了日志、截图、录屏外,调用的函数增加了 step 步骤展示;[@mikigo](https://github.com/mikigo)
- `env.sh` 新增安装子项目 `Python` 三方依赖,在子项目根目录下写 `requirement.txt` 文件,`env.sh` 会自动加载;
- `env.sh` 新增安装子项目 `Python` 三方依赖,在子项目根目录下写 `requirement.txt` 文件,`env.sh` 会自动加载;[@mikigo](https://github.com/mikigo)
- ocr 识别新增支持传入目标图片路径进行文字识别,减少因全屏识别时,其他文字的干扰
- ocr 识别新增支持传入目标图片路径进行文字识别,减少因全屏识别时,其他文字的干扰[@mikigo](https://github.com/mikigo)
- ```Python
# 断言音乐的删除弹窗中,包含了“确认”的文字
self.assert_ocr_exist("确认", picture_abspath=DeepinMusicWidget.save_temporary_picture(*DeepinMusicWidget().ui.btn_size("删除弹窗")))
```
- 断言函数的调用也会自动打印日志;
- 断言函数的调用也会自动打印日志;[@mikigo](https://github.com/mikigo)
- `env.sh` 新增裁剪依赖的方案;
- `env.sh` 新增裁剪依赖的方案;[@mikigo](https://github.com/mikigo)
fix
- 修复 `Jenkins` 环境下, `apps` 目录下子项目存在 `auotest_deepin_xxx@tmp` 目录,在传入 `app_name` 后无法执行用例的问题;
- 修复自动生成 `case_list.csv` 文件时,用例顺序被调整的问题;
- `env.sh` 环境安装移除 git 和 curl
- 修复用例在 setup 阶段报错后,未写入 ci_result.json 的问题;
- 移除 `uos_ci.py`
- 修复 `Jenkins` 环境下, `apps` 目录下子项目存在 `auotest_deepin_xxx@tmp` 目录,在传入 `app_name` 后无法执行用例的问题;[@mikigo](https://github.com/mikigo)
- 修复自动生成 `case_list.csv` 文件时,用例顺序被调整的问题;[@mikigo](https://github.com/mikigo)
- `env.sh` 环境安装移除 git 和 curl[@mikigo](https://github.com/mikigo)
- 修复用例在 setup 阶段报错后,未写入 ci_result.json 的问题;[@mikigo](https://github.com/mikigo)
- 移除 `uos_ci.py`[@mikigo](https://github.com/mikigo)
## 1.1.32022/10/28
new
- 新增图像断言成功输出匹配度;
- 新增环境安装 yaml 依赖;
- 新增测试套执行、数据回填兼容用例库ID和产品库ID
- 新增测试结果表情显示,并优化了日志的排版;
- 新增 `--top {number}` 用于记录系统资源占用情况,日志生成到 `report/logs/top.log`
- 新增图像断言成功输出匹配度;[@mikigo](https://github.com/mikigo)
- 新增环境安装 yaml 依赖;[@mikigo](https://github.com/mikigo)
- 新增测试套执行、数据回填兼容用例库ID和产品库ID[@mikigo](https://github.com/mikigo)
- 新增测试结果表情显示,并优化了日志的排版;[@mikigo](https://github.com/mikigo)
- 新增 `--top {number}` 用于记录系统资源占用情况,日志生成到 `report/logs/top.log`[@mikigo](https://github.com/mikigo)
fix
- 修复用例收集阶段报错,但终端没有错误日志输出的问题;
- 修改失败用例回溯日志为详细级别;
- 修复了执行进度未计算跳过用例的问题,并优化了进度获取的算法;
- 修复 `env.sh` 在 V23 环境下安装无法读取密码的问题;
- 修复了 pms 测试套执行或测试单执行时用例ID兼容用例库ID和产品库ID
- env.sh 里面 hub.deepin.com 更换成 it.uniontech.com
- uos_ci.py 测试结果统计时,总数剔除 skip 的数量
- 修复用例收集阶段报错,但终端没有错误日志输出的问题;[@mikigo](https://github.com/mikigo)
- 修改失败用例回溯日志为详细级别;[@mikigo](https://github.com/mikigo)
- 修复了执行进度未计算跳过用例的问题,并优化了进度获取的算法;[@mikigo](https://github.com/mikigo)
- 修复 `env.sh` 在 V23 环境下安装无法读取密码的问题;[@mikigo](https://github.com/mikigo)
- 修复了 pms 测试套执行或测试单执行时用例ID兼容用例库ID和产品库ID[@mikigo](https://github.com/mikigo)
- env.sh 里面 hub.deepin.com 更换成 it.uniontech.com[@mikigo](https://github.com/mikigo)
- uos_ci.py 测试结果统计时,总数剔除 skip 的数量[@mikigo](https://github.com/mikigo)
## 1.1.22022/09/21
new
- 在没有安装 `dogtail` 的情况下,也能使用 `sniff` 工具;
- 在没有安装 `dogtail` 的情况下,也能使用 `sniff` 工具;[@mikigo](https://github.com/mikigo)
fix
- 修复持续集成流水线中没有安装 AT 环境执行 `uos_ci.py` 报错的问题;
- 修复持续集成流水线中没有安装 AT 环境执行 `uos_ci.py` 报错的问题;[@mikigo](https://github.com/mikigo)
## 1.1.12022/09/19
new
- 新增执行进度显示,每条用例执行时日志输出当前进度:[当前指定第几条/用例总数]
- 新增终端输出用例执行结束之后所有失败用例的列表;
- 关闭终端输出捕获用例执行过程日志快照;
- 优化终端输出失败信息冗长为简要信息输出;
- 新增终端输出显示 10 个执行最慢的用例列表,并详细列出各个阶段的耗时;
- 失败重跑用例重跑之前延迟 1 秒;
- 新增收集阶段报错,仍然强制执行;
- 用例收集时仅在 `apps` 目录下进行,忽略 `src,setting,public` 目录;
- 新增 `allure` 报告备份功能,默认备份至 `allure_back` 目录下;
- `manage.py`新增参数 `--lastfailed` 用于只跑上次失败用例的功能;
- 新增执行进度显示,每条用例执行时日志输出当前进度:[当前指定第几条/用例总数][@mikigo](https://github.com/mikigo)
- 新增终端输出用例执行结束之后所有失败用例的列表;[@mikigo](https://github.com/mikigo)
- 关闭终端输出捕获用例执行过程日志快照;[@mikigo](https://github.com/mikigo)
- 优化终端输出失败信息冗长为简要信息输出;[@mikigo](https://github.com/mikigo)
- 新增终端输出显示 10 个执行最慢的用例列表,并详细列出各个阶段的耗时;[@mikigo](https://github.com/mikigo)
- 失败重跑用例重跑之前延迟 1 秒;[@mikigo](https://github.com/mikigo)
- 新增收集阶段报错,仍然强制执行;[@mikigo](https://github.com/mikigo)
- 用例收集时仅在 `apps` 目录下进行,忽略 `src,setting,public` 目录;[@mikigo](https://github.com/mikigo)
- 新增 `allure` 报告备份功能,默认备份至 `allure_back` 目录下;[@mikigo](https://github.com/mikigo)
- `manage.py`新增参数 `--lastfailed` 用于只跑上次失败用例的功能;[@mikigo](https://github.com/mikigo)
fix
- 修复了在没有指定应用名称执行时xml 报告生成路径异常的问题;
- 修复了 `uos_ci.py` 传入 `timeout``session_timeout` 不生效的问题;
- 修复了在没有指定应用名称执行时xml 报告生成路径异常的问题;[@mikigo](https://github.com/mikigo)
- 修复了 `uos_ci.py` 传入 `timeout``session_timeout` 不生效的问题;[@mikigo](https://github.com/mikigo)
## 1.1.02022/09/16
new
- 新增PMS数据回填功能支持多种数据回填模式
- 优化了通过测试套件执行时PMS 爬虫的性能;
- 新增 `.gitmodules` 文件,用于标记所有子项目,方便统一拉取代码;
- `env.sh` 适配社区版上安装自动化环境;
- 增加执行过程中立即显示错误的功能;
- `README.md` 增加 `Wayland` 下使用、测试报告查看、常见问题等的文档说明;
- 增加了用例执行过程中对 `setup`、`call`、`teardown` 进行日志分段;
- 新增PMS数据回填功能支持多种数据回填模式[@mikigo](https://github.com/mikigo)
- 优化了通过测试套件执行时PMS 爬虫的性能;[@mikigo](https://github.com/mikigo)
- 新增 `.gitmodules` 文件,用于标记所有子项目,方便统一拉取代码;[@mikigo](https://github.com/mikigo)
- `env.sh` 适配社区版上安装自动化环境;[@mikigo](https://github.com/mikigo)
- 增加执行过程中立即显示错误的功能;[@mikigo](https://github.com/mikigo)
- `README.md` 增加 `Wayland` 下使用、测试报告查看、常见问题等的文档说明;[@mikigo](https://github.com/mikigo)
- 增加了用例执行过程中对 `setup`、`call`、`teardown` 进行日志分段;[@mikigo](https://github.com/mikigo)
fix
- 修复了 `确认修复` 列没写表头,但写了 `fixed-xxx` 标签,出现的程序报错问题;
- 修复了同一应用内多个 `csv` 文件中 `确认修复` 列有的写了,有的没写,可能出现的程序报错的问题;
- 修复了 `INFO` 日志,显示为 `DEBUG` 的问题;修复了部分机器上 `INFO` 日志内容显示为红色的问题;
- 修复了用例收集阶段报错看不到详细信息的问题;
- 修复了 `确认修复` 列没写表头,但写了 `fixed-xxx` 标签,出现的程序报错问题;[@mikigo](https://github.com/mikigo)
- 修复了同一应用内多个 `csv` 文件中 `确认修复` 列有的写了,有的没写,可能出现的程序报错的问题;[@mikigo](https://github.com/mikigo)
- 修复了 `INFO` 日志,显示为 `DEBUG` 的问题;修复了部分机器上 `INFO` 日志内容显示为红色的问题;[@mikigo](https://github.com/mikigo)
- 修复了用例收集阶段报错看不到详细信息的问题;[@mikigo](https://github.com/mikigo)
## 1.0.22022/08/22
new
- 移除 `loguru`,替换为 `logging`,接口保持不变,上层用例不受影响;
- 默认开启 `coredump`
- 移除 `loguru`,替换为 `logging`,接口保持不变,上层用例不受影响;[@mikigo](https://github.com/mikigo)
- 默认开启 `coredump`[@mikigo](https://github.com/mikigo)
fix
- 修复了三方库 `loguru` 偶现异常,导致程序中断的问题;
- 修复了第一次失败不会关闭文件选择框的问题;
- 修复了三方库 `loguru` 偶现异常,导致程序中断的问题;[@mikigo](https://github.com/mikigo)
- 修复了第一次失败不会关闭文件选择框的问题;[@mikigo](https://github.com/mikigo)
## 1.0.12022/08/12
new
- 新增 `RELEASE.md` 文件,用于记录历史发布版本的更新内容;
- 新增 `RELEASE.md` 文件,用于记录历史发布版本的更新内容;[@mikigo](https://github.com/mikigo)
- 兼容 `Wayland` 模式下执行用例,上层用例不用管当前测试机执行环境,框架会自动根据当前环境走不同的代码逻辑;
- 由于需要修改 `dogtail` 源代码,因此将修改后的源码放入到核心库里面 `src/depends/dogtail` 后续版本**将**不需要在系统中安装`dogtail`
- 如果应用库同样使用了系统安装的 `dogtail` 可能会报错,解决方案是将代码中的 `import dogtail` 修改为 `from src.depends import dogtail` ;
- 兼容 `Wayland` 模式下执行用例,上层用例不用管当前测试机执行环境,框架会自动根据当前环境走不同的代码逻辑;[@mikigo](https://github.com/mikigo)
- 由于需要修改 `dogtail` 源代码,因此将修改后的源码放入到核心库里面 `src/depends/dogtail` 后续版本**将**不需要在系统中安装`dogtail`[@mikigo](https://github.com/mikigo)
- 如果应用库同样使用了系统安装的 `dogtail` 可能会报错,解决方案是将代码中的 `import dogtail` 修改为 `from src.depends import dogtail` ;[@mikigo](https://github.com/mikigo)
fix
- 重跑失败之后才会关闭文件选择框,修改为失败之后会关闭文件选择框;
- 重跑失败之后才会关闭文件选择框,修改为失败之后会关闭文件选择框;[@mikigo](https://github.com/mikigo)