diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml
index ce607f77f..ca14f2abd 100644
--- a/.github/workflows/ci.yaml
+++ b/.github/workflows/ci.yaml
@@ -10,7 +10,7 @@ jobs:
   test:
     strategy:
       matrix:
-        os: [ ubuntu-latest, windows-2016, macos-latest ]
+        os: [ ubuntu-latest, windows-2016, macos-latest, windows-2022 ]
         node: [ "12.0.0", "14.0.0", "15.0.0", "16.0.0", "17.0.0" ]
         task: [ test ]
 
@@ -25,6 +25,9 @@ jobs:
       - name: Configure msvs version on Windows
         if: ${{matrix.os == 'windows-2016'}}
         run: npm config set msvs_version 2017
+      - name: Configure msvs version on Windows
+        if: ${{matrix.os == 'windows-2022'}}
+        run: npm config set msvs_version 2022
       - name: Run tests
         env:
           OPENCV4NODEJS_DISABLE_AUTOBUILD: 1
@@ -35,4 +38,4 @@ jobs:
           cd ./test
           npm install --unsafe-perm
           npm test
-          npm run test-externalMemTracking
\ No newline at end of file
+          npm run test-externalMemTracking
diff --git a/.github/workflows/tagged_release.yaml b/.github/workflows/tagged_release.yaml
index b2321df91..ccd9d8524 100644
--- a/.github/workflows/tagged_release.yaml
+++ b/.github/workflows/tagged_release.yaml
@@ -8,7 +8,7 @@ jobs:
   prebuild-node:
     strategy:
       matrix:
-        os: [ ubuntu-latest, windows-2016, macos-latest ]
+        os: [ ubuntu-latest, windows-2016, macos-latest, windows-2022 ]
         node: [ 14]
         task: [ prebuild ]
         runtime: [ node ]
@@ -24,6 +24,9 @@ jobs:
       - name: Configure msvs version on Windows
         if: ${{matrix.os == 'windows-2016'}}
         run: npm config set msvs_version 2017
+      - name: Configure msvs version on Windows
+        if: ${{matrix.os == 'windows-2022'}}
+        run: npm config set msvs_version 2022
       - name: Install
         run: npm ci --unsafe-perm
       - name: Publish prebuild
@@ -33,7 +36,7 @@ jobs:
   prebuild-electron:
     strategy:
       matrix:
-        os: [ ubuntu-latest, windows-2016, macos-latest ]
+        os: [ ubuntu-latest, windows-2016, macos-latest, windows-2022 ]
         node: [ 14 ]
         task: [ prebuild ]
         runtime: [ electron ]
@@ -49,6 +52,9 @@ jobs:
       - name: Configure msvs version on Windows
         if: ${{matrix.os == 'windows-2016'}}
         run: npm config set msvs_version 2017
+      - name: Configure msvs version on Windows
+        if: ${{matrix.os == 'windows-2022'}}
+        run: npm config set msvs_version 2022
       - name: Install
         run: npm ci --unsafe-perm
       - name: Publish prebuild
@@ -70,4 +76,4 @@ jobs:
       - name: Publish tagged release
         uses: JS-DevTools/npm-publish@v1
         with:
-          token: ${{ secrets.NPM_TOKEN }}
\ No newline at end of file
+          token: ${{ secrets.NPM_TOKEN }}