jugid/auto-mate

通过 YAML 文件实现自动化

0.9.0 2021-06-04 23:22 UTC

This package is auto-updated.

Last update: 2024-09-23 00:17:52 UTC


README

Tests codecov Latest Stable Version Issues License PHP Version

AutoMate - Yaml 自动化库

版本 0.9.0 查看变更日志 Changelogs

您可以在 Wiki 获取帮助

README 摘要

为什么选择 AutoMate ?

在工作中,我们需要进行大量的管理操作。已经有一个适用于此类操作的家用框架,它运行良好。问题是开发新场景需要花费很长时间。使用 AutoMate,我尝试减少这种浪费的时间。

使用 AutoMate 您可以

  • 创建多个 场景,每个场景包含多个 命令
  • 在不同的浏览器上运行它们
  • 配置它以满足您的需求
  • 数据注入到您的场景中,以使用场景中的 变量 并为每个数据集重复场景
  • 从文件中获取 日志 以了解场景失败/成功时使用了哪些数据
  • 在控制台上有步骤描述
  • 通过 事件系统 添加您自己的命令和插件
  • 使用 逻辑 使用您的业务逻辑
  • 您可以使用 Launcher 类进行简单的测试和报告。

入门指南

安装

➡️ 使用 composer 安装 AutoMate

composer require jugid/auto-mate

➡️ 获取 WebDriver

➡️ Selenium Grid

您可以使用 Selenium Grid。请参阅 Selenium GridSelenium Grid 4 下载

如果您这样做,请发送带有示例和快速指南的 PR。

使用方法

要使用 AutoMate,您首先需要

  1. 创建您的 yaml 配置文件
  2. 使用 yaml 创建您的场景文件
  3. 创建与场景对应的文件夹
  4. 可能还需要创建一个规范 csv 文件
  5. 运行 AutoMate

➡️ 创建您的 yaml 配置文件

您的配置文件应类似于 这个。您必须优先使用绝对路径。

➡️ 使用 yaml 创建您的场景文件

场景是一系列由 AutoMate 执行的步骤。您还可以声明变量和用于此特定场景的浏览器。您可以在 这里 找到示例

您的场景需要命名为 main.yaml 并保存在 scenario_folder/scenario_name/

➡️ 创建与场景对应的文件夹

现在您需要创建一些与您刚刚创建的场景相对应的文件夹。

  • logs_folder/scenario_name/ :用于详细记录结果
  • specs_folder/scenario_name/ :用于在场景规范变量范围内加载数据

➡️ 创建您的规范文件

规范是csv文件,为AutoMate提供数据。它将针对每一行执行场景,并将数据加载到规范变量范围内。

您的规范文件需要保存到specs_folder/scenario_name/my_spec.csv。

您的规范需要包含标题。否则,您的变量名称将是第一行的数据。

您可以创建任意数量的规范。如果AutoMate未以测试模式运行,当场景运行结束时,规范将重命名为带有后缀 _PROCESSED 的名称。如果规范名称中包含 _PROCESSED,则无法检测到该规范。

➡️ 运行AutoMate

要运行AutoMate,您可以使用定义为

php bin/automate run --scenario=scenario --config=/../config.yaml [--browser=NAME] [--headless] [--server=HTTP_ADRESSE] [--testMode] [--specMode]

或更简短的命令

php bin/automate run -s scenario -c /../config.yaml [-b NAME] [-h] [-a HTTP_ADRESSE] [-t] [-m]

您也可以使用更PHP的方式,如以下示例中所示 在此

可视化

这就是AutoMate的外观

AutoMate Screenshot

支持

如果网站有机器人控制,则无法使用AutoMate。如果您找到一个技巧,请发送PR。

首先,您可以在 Wiki 上找到帮助。然后,如果您找不到所需的内容,您可以联系我们。

路线图

查看 变更日志 获取更多信息

  • 告诉我们您的想法!您可以直接发送PR或打开一个问题

将不会实现

  • 用于处理表的特定命令

贡献

我们很高兴得到您的帮助,使AutoMate更好。有关贡献和开发AutoMate的更多信息,请参阅 CONTRIBUTING.md

许可

AutoMate采用MIT许可。您可以在 许可文件 中找到许可证。

感谢

如果您喜欢AutoMate,请不要犹豫告诉我们您有多爱它,如果可能的话,贡献。