qadept/codeception-qaapi

用于与 QA API 一起工作的 Codeception 模块

1.0.0 2016-08-31 21:33 UTC

This package is not auto-updated.

Last update: 2024-09-23 07:16:59 UTC


README

什么是 QaApi

QaApi 是一个面向 QA 部门的 API。此 API 可在手动或自动化测试期间获取或更改系统的内部状态。

测试用例示例

您为您的网店创建了一个新功能。如果客户放弃购物车,它将在 1 天后向客户发送提醒。

测试人员如何测试此用例?当然,他必须创建一个购物车并等待 1 天。

但是,如果我们没有那么多时间,测试人员将去找开发人员,让他将数据库中购物车的创建时间改回 23 小时 55 分钟。然后我们可以在 5 分钟内测试这个功能,然后可以发布。

此时我们解决了我们的问题,但是

  • 测试人员每次需要更改数据库中的内容时都会打扰开发人员

  • 测试人员无法为这类情况编写自动化测试(除非他了解项目源代码并且可以访问它)

QaApi 解决了这两个问题

开发人员只需编写一个可以更改购物车创建时间的 API 方法。然后测试人员可以用于手动和自动化测试

  • 将自动生成用于自动化测试的 PHP 客户端

  • 如果您公司使用 QAdept 服务,测试人员可以从 操作 选项卡手动使用它

使用这种方法有哪些好处?

  1. 测试困难用例要容易得多。
  2. 它有助于测试人员手动和自动化测试。
  3. 通过分割测试人员和开发人员的工作,它提高了生产力。
  4. 测试人员不需要了解任何关于项目源代码的信息。
  5. 它允许公司不与测试人员共享项目源代码。

如何安装

  1. 安装 QaApi 包

    composer require qadept/codeception-qaapi
  2. 将 QaApi 模块添加到套件文件中。其内容应如下所示

    class_name: FunctionalTester
    modules:
        enabled:
            - \WebShop\Helper\Functional
            - WebDriver:
                url: 'http://myproject.local'
                browser: phantomjs
                window_size: 1280x960
            - Asserts
            - \WebShop\Helper\QaApi:
                url: 'http://myproject.local/qaapi'
                api_key: my_secret_key

    其中 "url" 是 API 的基本 URL,"api_key" 是授权密钥。

  3. 在测试目录中创建一个 qaapi.json 文件(与您有 codeception.yml 文件的目录相同)。此文件使用 Swagger 规范,并将用于自动生成 PHP API 客户端。

  4. 生成 PHP API 客户端和辅助类

    ./vendor/bin/codecept qaapi:generate -c projects/WebShop
    ./vendor/bin/codecept build -c projects/WebShop