Go to file
DarkLii e0e16fac57 Merge branch 'master' of github.com:DarkLii/deepin-autotest-framework 2024-05-16 19:37:00 +08:00
.github fix: 修复在线文档 base url 不能动态配置的问题; 2024-05-10 17:03:19 +08:00
.reuse fix: update some shields 2023-08-23 19:08:34 +08:00
apps fix: 1.发布到PyPI;2.新增youqu-startproject命令,用于创建项目; 2023-08-10 11:52:00 +08:00
docs fix: 1、修复获取commit中方法修复数量错误的问题;2、更新README.md 2024-05-16 11:49:22 +08:00
setting Merge branch 'master' of github.com:DarkLii/deepin-autotest-framework 2024-05-16 19:37:00 +08:00
src fix: 修复 env.sh 提示找不到youqu-shell-rm的问题; 2024-05-16 14:15:34 +08:00
.gitignore fix: update docs 2024-04-20 15:15:39 +08:00
CONTRIBUTING.md fix: 1、修复了远程交互式控制执行的Bug;2、优化了文档内容; 2024-04-19 17:47:04 +08:00
CURRENT fix: 1、release for 2.6.0;2、update docs; 2024-05-14 17:46:18 +08:00
LICENSE fix: update some shields 2023-08-23 19:08:34 +08:00
README.md fix: 修复 env.sh 提示找不到youqu-shell-rm的问题; 2024-05-16 14:15:34 +08:00
RELEASE.md fix: update release.md 2024-05-14 18:08:05 +08:00
conftest.py fix: 1、报告增加PMS用例维度统计数据;2、update docs 2024-04-28 11:25:35 +08:00
env.sh fix: 1、ocr增加链式调用; 2024-05-13 16:27:07 +08:00
manage.py fix: 1、新增youqu子命令和参数在终端补全;2、修复远程调用返回None报错的问题; 2024-04-29 16:38:51 +08:00
package.json fix: 1、release for 2.6.0;2、update docs; 2024-05-14 17:46:18 +08:00
publish.sh fix: update docs 2024-04-25 10:48:59 +08:00
pyproject.toml fix: 1、release for 2.6.0;2、update docs; 2024-05-14 17:46:18 +08:00
pytest.ini fix: 1.`public` 独立发布,基础框架移除此模块,在环境部署阶段进行 `public` 模块的初始化; 2023-10-23 14:53:20 +08:00
ruff.toml fix: 启用 ruff 做代码扫描 2024-02-02 13:27:22 +08:00

README.md

YouQu

YouQu有趣一个使用简单且功能强大的自动化测试基础框架。

GitHub issues PyPI Static Badge

Downloads Hits


Deepin 社区: GitHub | Gitee

openEuler 社区: Gitee

官方文档: https://youqu.uniontech.com

欢迎加入 YouQu官方兴趣小组


YouQu有趣是统信公司Deepin/UOS开源的一个 Linux 操作系统的自动化测试框架,支持多元化元素定位和断言、用例标签化管理和执行、强大的日志和报告输出等特色功能,同时完美兼容 X11、Wayland 显示协议,环境部署简单,操作易上手。🔥

YouQu有趣能做什么

  • 💻 Linux 桌面应用 UI 自动化测试
  • 🌏 Web UI 自动化测试
  • 🚌 Linux DBus 接口自动化测试
  • 🚀 命令行自动化测试
  • 🕷️ HTTP 接口自动化测试
  • ⏲️ Linux 桌面应用性能自动化测试
  • 💥 Fuzzy Desktop 桌面模糊测试

安装

从 PyPI 安装:

$ sudo pip3 install youqu
不加 sudo ?
其实不加 sudo 也是可以的:
pip3 install youqu
但某些情况下可能出现 youqu-startproject 命令无法使用,这是因为不加 sudo 时,安装包路径是在 $HOME/.local/lib/pythonX.X/site-packages而此路径可能不在环境变量PATH您可以通过添加环境变量的方式使用 youqu-startproject 命令:
export PATH=$PATH:$HOME/.local/lib/pythonX.X/site-packages

创建项目

您可以在任意目录下,使用 youqu-startproject 命令创建一个项目:

$ youqu-startproject my_project

如果 youqu-startproject 后面不加参数,默认的项目名称为:youqu

安装依赖

安装部署 YouQu 执行所需环境:

$ cd my_project
$ bash env.sh

创建 APP 工程

使用 startapp 命令自动创建 APP 工程:

$ youqu manage.py startapp autotest_deepin_some

自动创建的 APP 工程遵循完整的 PO 设计模式,让你可以专注于用例和方法的编写维护。

apps 目录下会自动创建一个 APP 工程:autotest_deepin_some,同时新建好工程模板目录和模板文件:

my_project
├── apps
│   ├── autotest_deepin_some  # <-- APP 工程
...     ├── ...

在你的远程 Git 仓库中,只需要保存 APP 工程这部分代码即可。

autotest_deepin_some 是你的 APP 工程名称,在此基础上,你可以快速的开始你的 AT 项目,更重要的是确保创建工程的规范性。

apps 目录下可以存在任意多个 APP 工程。

运行

1. 执行管理器

在项目根目录下有一个 manage.py ,它是一个执行器入口,提供了本地执行、远程执行等的功能。

2. 本地执行

$ youqu manage.py run

2.1. 命令行参数

在一些 CI 环境下使用命令行参数会更加方便:

$ youqu manage.py run -a apps/autotest_deepin_some -k "xxx" -t "yyy"

更多用法可以使用 -h--help 查看。

2.2. 配置文件

通过配置文件配置参数

在配置文件 setting/globalconfig.ini 里面支持配置对执行的一些参数进行配置。

3. 远程执行

远程执行就是用本地作为服务端控制远程机器执行,远程机器执行的用例相同。

使用 remote 命令:

$ youqu manage.py remote

贡献

贡献文档

开源许可证

YouQu 在 GPL-2.0 下发布。