diff --git a/.github/workflows/npmpublish.yml b/.github/workflows/npmpublish.yml
index 75f9791..dfbc16e 100644
--- a/.github/workflows/npmpublish.yml
+++ b/.github/workflows/npmpublish.yml
@@ -9,10 +9,11 @@ jobs:
     runs-on: ubuntu-latest
     steps:
       - uses: actions/checkout@v2
-      - uses: actions/setup-node@v1
+      - uses: actions/setup-node@v2
         with:
           node-version: 12
           registry-url: https://registry.npmjs.org/
+
       - run: npm publish
         env:
           NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
diff --git a/.github/workflows/testing.yml b/.github/workflows/testing.yml
index 36c8715..51a4503 100644
--- a/.github/workflows/testing.yml
+++ b/.github/workflows/testing.yml
@@ -3,21 +3,25 @@ name: testing
 on:
   push:
     paths:
-    - 'lib/**.js'
+      - 'lib/**.js'
 
 jobs:
   test:
     runs-on: ubuntu-latest
+    strategy:
+      matrix:
+        node: [ 12, 14, 16 ]
 
     steps:
-    - uses: actions/checkout@v2
-    - uses: actions/setup-node@v1
-      with:
-        node-version: 12.x
-    - run: npm install
+      - uses: actions/checkout@v2
+      - uses: actions/setup-node@v2
+        with:
+          node-version: ${{ matrix.node }}
 
-    - name: Run smoke tests
-      timeout-minutes: 2
-      run: |
-        node test/login.js "${{ secrets.DIRECT_TESTING_USER }}:${{ secrets.DIRECT_TESTING_PASSWORD }}"
-        node test/smoke.js
+      - run: npm install
+
+      - name: Run smoke tests
+        timeout-minutes: 2
+        run: |
+          node test/login.js "${{ secrets.DIRECT_TESTING_USER }}:${{ secrets.DIRECT_TESTING_PASSWORD }}"
+          node test/smoke.js