php - 如何在 GitHub Action 中使用不同版本的 PHP 进行测试

标签 php github github-actions

我有一些带有测试的 PHP 代码,这些代码使用 PHPUnit 运行并想在 GitHub Actions 上测试它.我在他们的文档中找不到测试 PHP 包的方法。
我想使用不同版本的 PHP 进行测试,但他们只有最新的 7.3安装。

最佳答案

您可以添加 setup-php工作流程中的操作。如果不存在,它会安装您指定的 PHP 版本以及所需的扩展和各种工具,例如 composer。支持所有 GitHub Actions 支持的虚拟环境和 PHP 版本 >= 5.3 .
例如,您可以拥有这样的工作流程

jobs:
  run:    
    runs-on: ${{ matrix.operating-system }}
    strategy:
      matrix:
        operating-system: [ubuntu-latest, windows-latest, macOS-latest]
        php-versions: ['7.2', '7.3']
    name: PHP ${{ matrix.php-versions }} Test on ${{ matrix.operating-system }}
    steps:
    - name: Checkout
      uses: actions/checkout@v2
    - name: Install PHP
      uses: shivammathur/setup-php@v2
      with:
        php-version: ${{ matrix.php-versions }}
        extensions: intl #optional
        ini-values: "post_max_size=256M" #optional
    - name: Check PHP Version
      run: php -v
注意:这将设置 PHP,您需要添加使用 composer 安装依赖项的步骤以及使用 PHPUnit 运行测试的另一个步骤
您可以在 extensions 中指定所需的扩展名和 php.ini您想要的配置 ini-values .这两个输入都是可选的,并以 CSV 作为输入。 php-version需要输入。在上面的示例中,它将运行工作流并使用 matrix.php-versions 中指定的版本设置 PHP 环境。即 7.27.3 ,您可以根据您的要求调整这些。

关于php - 如何在 GitHub Action 中使用不同版本的 PHP 进行测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57965588/

相关文章:

php - PHP获取数据库基本信息的方法

git - 如何将 npm 依赖项指定为 github 子文件夹 url?

bash - 如何使用 CI 的 Git API 读取 GitHub 存储库中的所有分支?

ruby-on-rails - Rails 可以使用 GitHub Actions 连接到 PostgreSQL

vue.js - 如何使用 github s3 同步操作将缓存控制设置为 max-age=0

php - mysqldump 生成一个空文件

PHP - 自动传递行号作为函数参数

Git - 只推送最近提交到 github

php - 多个变量赋值是按值还是按引用完成的?

git - 如何在 sudo 后面锁定 git push origin master