GitHub发布了他们的替代CI系统,称为Actions。市场上的各种工作流程,例如setup-node,其自述文件中都包含“矩阵测试”示例:
jobs:
build:
runs-on: ubuntu-16.04
strategy:
matrix:
node: [ '10', '8' ]
name: Node ${{ matrix.node }} sample
steps:
- uses: actions/checkout@v1
- name: Setup node
uses: actions/setup-node@v1
with:
node-version: ${{ matrix.node }}
- run: npm install
- run: npm test
我以前使用过CircleCI,但是从没有偶然发现过这个概念。是某种并行计算吗?
答案 0 :(得分:1)
测试矩阵背后的想法是,在几种不同的情况下,您需要运行完全相同的测试以确保其有效。例如,我可能有一个项目要在macOS和Linux上的Node 8和Node 10上进行测试。
我可以写一个矩阵,写一组通用的步骤,然后让工具为我创建和创建四个作业,而不是写四个作业,每个作业针对Node版本和OS的每个组合。