diff --git a/test/parallel/test-http2-binding.js b/test/parallel/test-http2-binding.js
index 895b4c54da1987..919ee5908facbb 100644
--- a/test/parallel/test-http2-binding.js
+++ b/test/parallel/test-http2-binding.js
@@ -1,7 +1,9 @@
// Flags: --expose-http2
'use strict';
-require('../common');
+const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const assert = require('assert');
assert.doesNotThrow(() => process.binding('http2'));
diff --git a/test/parallel/test-http2-client-data-end.js b/test/parallel/test-http2-client-data-end.js
index 3bd72f138ba60e..8c50389f3b85e1 100644
--- a/test/parallel/test-http2-client-data-end.js
+++ b/test/parallel/test-http2-client-data-end.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const assert = require('assert');
const http2 = require('http2');
diff --git a/test/parallel/test-http2-client-destroy-before-connect.js b/test/parallel/test-http2-client-destroy-before-connect.js
index 1f6b087dd220b3..3c99b8d6615088 100644
--- a/test/parallel/test-http2-client-destroy-before-connect.js
+++ b/test/parallel/test-http2-client-destroy-before-connect.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const h2 = require('http2');
const server = h2.createServer();
diff --git a/test/parallel/test-http2-client-destroy-before-request.js b/test/parallel/test-http2-client-destroy-before-request.js
index 71519d5903b58f..b8510f6a445e2e 100644
--- a/test/parallel/test-http2-client-destroy-before-request.js
+++ b/test/parallel/test-http2-client-destroy-before-request.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const assert = require('assert');
const h2 = require('http2');
diff --git a/test/parallel/test-http2-client-destroy.js b/test/parallel/test-http2-client-destroy.js
index 56cfec5d65a223..f1095660313571 100644
--- a/test/parallel/test-http2-client-destroy.js
+++ b/test/parallel/test-http2-client-destroy.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const assert = require('assert');
const h2 = require('http2');
diff --git a/test/parallel/test-http2-client-priority-before-connect.js b/test/parallel/test-http2-client-priority-before-connect.js
index 68933b2d83bbf1..7fd81c8b9332f0 100644
--- a/test/parallel/test-http2-client-priority-before-connect.js
+++ b/test/parallel/test-http2-client-priority-before-connect.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const h2 = require('http2');
const server = h2.createServer();
diff --git a/test/parallel/test-http2-client-rststream-before-connect.js b/test/parallel/test-http2-client-rststream-before-connect.js
index 33b6cb354fe225..1a4aa938da6a75 100644
--- a/test/parallel/test-http2-client-rststream-before-connect.js
+++ b/test/parallel/test-http2-client-rststream-before-connect.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const assert = require('assert');
const h2 = require('http2');
diff --git a/test/parallel/test-http2-client-set-priority.js b/test/parallel/test-http2-client-set-priority.js
index 314a88a63c2d16..08c799a6e1ffe0 100644
--- a/test/parallel/test-http2-client-set-priority.js
+++ b/test/parallel/test-http2-client-set-priority.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const assert = require('assert');
const http2 = require('http2');
diff --git a/test/parallel/test-http2-client-settings-before-connect.js b/test/parallel/test-http2-client-settings-before-connect.js
index f320aa97dba135..2ebb0654a3135a 100644
--- a/test/parallel/test-http2-client-settings-before-connect.js
+++ b/test/parallel/test-http2-client-settings-before-connect.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const assert = require('assert');
const h2 = require('http2');
diff --git a/test/parallel/test-http2-client-shutdown-before-connect.js b/test/parallel/test-http2-client-shutdown-before-connect.js
index eabfc6261c0c3b..316a41d0f79d9b 100644
--- a/test/parallel/test-http2-client-shutdown-before-connect.js
+++ b/test/parallel/test-http2-client-shutdown-before-connect.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const h2 = require('http2');
const server = h2.createServer();
diff --git a/test/parallel/test-http2-client-socket-destroy.js b/test/parallel/test-http2-client-socket-destroy.js
index fe2d92753172a8..9d2fdd3b44865c 100644
--- a/test/parallel/test-http2-client-socket-destroy.js
+++ b/test/parallel/test-http2-client-socket-destroy.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const h2 = require('http2');
const body =
'
this is some data';
diff --git a/test/parallel/test-http2-client-stream-destroy-before-connect.js b/test/parallel/test-http2-client-stream-destroy-before-connect.js
index d8a9db4d371aba..d68e6b33ec4845 100644
--- a/test/parallel/test-http2-client-stream-destroy-before-connect.js
+++ b/test/parallel/test-http2-client-stream-destroy-before-connect.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const assert = require('assert');
const h2 = require('http2');
const NGHTTP2_INTERNAL_ERROR = h2.constants.NGHTTP2_INTERNAL_ERROR;
diff --git a/test/parallel/test-http2-client-unescaped-path.js b/test/parallel/test-http2-client-unescaped-path.js
index 95b5c04b0fed6a..645fb331638846 100755
--- a/test/parallel/test-http2-client-unescaped-path.js
+++ b/test/parallel/test-http2-client-unescaped-path.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const http2 = require('http2');
const server = http2.createServer();
diff --git a/test/parallel/test-http2-client-upload.js b/test/parallel/test-http2-client-upload.js
index f65ae09c3a205b..cee86e3fc65389 100755
--- a/test/parallel/test-http2-client-upload.js
+++ b/test/parallel/test-http2-client-upload.js
@@ -4,6 +4,8 @@
// Verifies that uploading data from a client works
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const assert = require('assert');
const http2 = require('http2');
const fs = require('fs');
diff --git a/test/parallel/test-http2-client-write-before-connect.js b/test/parallel/test-http2-client-write-before-connect.js
index f58fc5c43f69b6..ed46840266a58a 100644
--- a/test/parallel/test-http2-client-write-before-connect.js
+++ b/test/parallel/test-http2-client-write-before-connect.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const assert = require('assert');
const h2 = require('http2');
diff --git a/test/parallel/test-http2-compat-serverrequest-headers.js b/test/parallel/test-http2-compat-serverrequest-headers.js
index 32af86314b1675..d5a66391058708 100644
--- a/test/parallel/test-http2-compat-serverrequest-headers.js
+++ b/test/parallel/test-http2-compat-serverrequest-headers.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const assert = require('assert');
const h2 = require('http2');
diff --git a/test/parallel/test-http2-compat-serverrequest.js b/test/parallel/test-http2-compat-serverrequest.js
index d54f554848ce09..6c2448f4a51467 100644
--- a/test/parallel/test-http2-compat-serverrequest.js
+++ b/test/parallel/test-http2-compat-serverrequest.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const assert = require('assert');
const h2 = require('http2');
const net = require('net');
diff --git a/test/parallel/test-http2-compat-serverresponse-createpushresponse.js b/test/parallel/test-http2-compat-serverresponse-createpushresponse.js
index 9679215abb0772..8c5ff31274322e 100644
--- a/test/parallel/test-http2-compat-serverresponse-createpushresponse.js
+++ b/test/parallel/test-http2-compat-serverresponse-createpushresponse.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const assert = require('assert');
const h2 = require('http2');
diff --git a/test/parallel/test-http2-compat-serverresponse-end.js b/test/parallel/test-http2-compat-serverresponse-end.js
index 6b4b375764ec5d..5fb93e93dd5ff7 100644
--- a/test/parallel/test-http2-compat-serverresponse-end.js
+++ b/test/parallel/test-http2-compat-serverresponse-end.js
@@ -1,7 +1,9 @@
// Flags: --expose-http2
'use strict';
-const { mustCall, mustNotCall } = require('../common');
+const { mustCall, mustNotCall, hasCrypto, skip } = require('../common');
+if (!hasCrypto)
+ skip('missing crypto');
const { strictEqual } = require('assert');
const {
createServer,
diff --git a/test/parallel/test-http2-compat-serverresponse-finished.js b/test/parallel/test-http2-compat-serverresponse-finished.js
index e5739e5ac3e2f6..c80bdc33f8615a 100644
--- a/test/parallel/test-http2-compat-serverresponse-finished.js
+++ b/test/parallel/test-http2-compat-serverresponse-finished.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const assert = require('assert');
const h2 = require('http2');
diff --git a/test/parallel/test-http2-compat-serverresponse-flushheaders.js b/test/parallel/test-http2-compat-serverresponse-flushheaders.js
index 5f101228b4669e..671b0c7b94e661 100644
--- a/test/parallel/test-http2-compat-serverresponse-flushheaders.js
+++ b/test/parallel/test-http2-compat-serverresponse-flushheaders.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const assert = require('assert');
const h2 = require('http2');
diff --git a/test/parallel/test-http2-compat-serverresponse-headers.js b/test/parallel/test-http2-compat-serverresponse-headers.js
index de80469265fe92..7a9b7d66405704 100644
--- a/test/parallel/test-http2-compat-serverresponse-headers.js
+++ b/test/parallel/test-http2-compat-serverresponse-headers.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const assert = require('assert');
const h2 = require('http2');
diff --git a/test/parallel/test-http2-compat-serverresponse-statuscode.js b/test/parallel/test-http2-compat-serverresponse-statuscode.js
index 201a63c379bc8b..ace05ddefe7372 100644
--- a/test/parallel/test-http2-compat-serverresponse-statuscode.js
+++ b/test/parallel/test-http2-compat-serverresponse-statuscode.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const assert = require('assert');
const h2 = require('http2');
diff --git a/test/parallel/test-http2-compat-serverresponse-statusmessage-property.js b/test/parallel/test-http2-compat-serverresponse-statusmessage-property.js
index 50d2970d9ea95f..782c239f0fc468 100644
--- a/test/parallel/test-http2-compat-serverresponse-statusmessage-property.js
+++ b/test/parallel/test-http2-compat-serverresponse-statusmessage-property.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const assert = require('assert');
const h2 = require('http2');
diff --git a/test/parallel/test-http2-compat-serverresponse-statusmessage.js b/test/parallel/test-http2-compat-serverresponse-statusmessage.js
index c9c5b5a0138e80..0c74a2c8f2e8ab 100644
--- a/test/parallel/test-http2-compat-serverresponse-statusmessage.js
+++ b/test/parallel/test-http2-compat-serverresponse-statusmessage.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const assert = require('assert');
const h2 = require('http2');
diff --git a/test/parallel/test-http2-compat-serverresponse-trailers.js b/test/parallel/test-http2-compat-serverresponse-trailers.js
index d1ab4f9946c01c..17c2d734425137 100644
--- a/test/parallel/test-http2-compat-serverresponse-trailers.js
+++ b/test/parallel/test-http2-compat-serverresponse-trailers.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const assert = require('assert');
const http2 = require('http2');
diff --git a/test/parallel/test-http2-compat-serverresponse-write-no-cb.js b/test/parallel/test-http2-compat-serverresponse-write-no-cb.js
index e6164ae9319d17..bc864af46df4cc 100644
--- a/test/parallel/test-http2-compat-serverresponse-write-no-cb.js
+++ b/test/parallel/test-http2-compat-serverresponse-write-no-cb.js
@@ -1,7 +1,12 @@
// Flags: --expose-http2
'use strict';
-const { mustCall, mustNotCall, expectsError } = require('../common');
+const { mustCall,
+ mustNotCall,
+ expectsError,
+ hasCrypto, skip } = require('../common');
+if (!hasCrypto)
+ skip('missing crypto');
const { throws } = require('assert');
const { createServer, connect } = require('http2');
diff --git a/test/parallel/test-http2-compat-serverresponse-writehead.js b/test/parallel/test-http2-compat-serverresponse-writehead.js
index 9d7969652ec214..04d7499083524f 100644
--- a/test/parallel/test-http2-compat-serverresponse-writehead.js
+++ b/test/parallel/test-http2-compat-serverresponse-writehead.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const assert = require('assert');
const h2 = require('http2');
diff --git a/test/parallel/test-http2-connect-method.js b/test/parallel/test-http2-connect-method.js
index 05ff96a3cd1320..4cd8daf484e56b 100644
--- a/test/parallel/test-http2-connect-method.js
+++ b/test/parallel/test-http2-connect-method.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const assert = require('assert');
const net = require('net');
const http2 = require('http2');
diff --git a/test/parallel/test-http2-connect.js b/test/parallel/test-http2-connect.js
index 305ea034c902e4..087f942932c519 100644
--- a/test/parallel/test-http2-connect.js
+++ b/test/parallel/test-http2-connect.js
@@ -1,7 +1,9 @@
// Flags: --expose-http2
'use strict';
-const { mustCall } = require('../common');
+const { mustCall, hasCrypto, skip } = require('../common');
+if (!hasCrypto)
+ skip('missing crypto');
const { doesNotThrow } = require('assert');
const { createServer, connect } = require('http2');
diff --git a/test/parallel/test-http2-cookies.js b/test/parallel/test-http2-cookies.js
index 297b3966df9f18..6e2ae0bdfd6632 100644
--- a/test/parallel/test-http2-cookies.js
+++ b/test/parallel/test-http2-cookies.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const assert = require('assert');
const h2 = require('http2');
diff --git a/test/parallel/test-http2-create-client-connect.js b/test/parallel/test-http2-create-client-connect.js
index 376b0a208d59e2..2c40d7c653674a 100644
--- a/test/parallel/test-http2-create-client-connect.js
+++ b/test/parallel/test-http2-create-client-connect.js
@@ -4,6 +4,8 @@
// Tests http2.connect()
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const fs = require('fs');
const h2 = require('http2');
const path = require('path');
diff --git a/test/parallel/test-http2-create-client-session.js b/test/parallel/test-http2-create-client-session.js
index c1c6ce1bfea62e..22ab368f7bc59e 100644
--- a/test/parallel/test-http2-create-client-session.js
+++ b/test/parallel/test-http2-create-client-session.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const assert = require('assert');
const h2 = require('http2');
const body =
diff --git a/test/parallel/test-http2-date-header.js b/test/parallel/test-http2-date-header.js
index d9a73b2ef61d4b..d7afeb5e2b90bc 100644
--- a/test/parallel/test-http2-date-header.js
+++ b/test/parallel/test-http2-date-header.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const assert = require('assert');
const http2 = require('http2');
diff --git a/test/parallel/test-http2-dont-override.js b/test/parallel/test-http2-dont-override.js
index 55b29580fbc9f4..d8573eac340b1d 100644
--- a/test/parallel/test-http2-dont-override.js
+++ b/test/parallel/test-http2-dont-override.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const assert = require('assert');
const http2 = require('http2');
diff --git a/test/parallel/test-http2-getpackedsettings.js b/test/parallel/test-http2-getpackedsettings.js
index 75700bcb23b092..341a55a92c4481 100644
--- a/test/parallel/test-http2-getpackedsettings.js
+++ b/test/parallel/test-http2-getpackedsettings.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const assert = require('assert');
const http2 = require('http2');
diff --git a/test/parallel/test-http2-goaway-opaquedata.js b/test/parallel/test-http2-goaway-opaquedata.js
index e5904adf3bee99..9ff8b13cafd2ca 100644
--- a/test/parallel/test-http2-goaway-opaquedata.js
+++ b/test/parallel/test-http2-goaway-opaquedata.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const assert = require('assert');
const http2 = require('http2');
diff --git a/test/parallel/test-http2-head-request.js b/test/parallel/test-http2-head-request.js
index 07f0eb6c93298f..ee86ded5498808 100644
--- a/test/parallel/test-http2-head-request.js
+++ b/test/parallel/test-http2-head-request.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const assert = require('assert');
const http2 = require('http2');
diff --git a/test/parallel/test-http2-info-headers.js b/test/parallel/test-http2-info-headers.js
index cb91b560cd754e..a1491959df393f 100755
--- a/test/parallel/test-http2-info-headers.js
+++ b/test/parallel/test-http2-info-headers.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const assert = require('assert');
const h2 = require('http2');
diff --git a/test/parallel/test-http2-max-concurrent-streams.js b/test/parallel/test-http2-max-concurrent-streams.js
index 9b582eb68db0cf..be101720dc478b 100644
--- a/test/parallel/test-http2-max-concurrent-streams.js
+++ b/test/parallel/test-http2-max-concurrent-streams.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const assert = require('assert');
const h2 = require('http2');
diff --git a/test/parallel/test-http2-methods.js b/test/parallel/test-http2-methods.js
index 1a8828f22c7363..dac61359ec010e 100644
--- a/test/parallel/test-http2-methods.js
+++ b/test/parallel/test-http2-methods.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const assert = require('assert');
const h2 = require('http2');
diff --git a/test/parallel/test-http2-misused-pseudoheaders.js b/test/parallel/test-http2-misused-pseudoheaders.js
index c3eb69c5f297b3..2744561025dcde 100644
--- a/test/parallel/test-http2-misused-pseudoheaders.js
+++ b/test/parallel/test-http2-misused-pseudoheaders.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const assert = require('assert');
const h2 = require('http2');
diff --git a/test/parallel/test-http2-multi-content-length.js b/test/parallel/test-http2-multi-content-length.js
index 96407215a33f6a..da7fbd33a9f86c 100644
--- a/test/parallel/test-http2-multi-content-length.js
+++ b/test/parallel/test-http2-multi-content-length.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const http2 = require('http2');
const server = http2.createServer();
diff --git a/test/parallel/test-http2-multiheaders.js b/test/parallel/test-http2-multiheaders.js
index d7b8f56d51ac30..54a900b04e5c2f 100644
--- a/test/parallel/test-http2-multiheaders.js
+++ b/test/parallel/test-http2-multiheaders.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const assert = require('assert');
const http2 = require('http2');
diff --git a/test/parallel/test-http2-multiplex.js b/test/parallel/test-http2-multiplex.js
index 7467b0fa60ed1a..22622392b8c841 100644
--- a/test/parallel/test-http2-multiplex.js
+++ b/test/parallel/test-http2-multiplex.js
@@ -5,6 +5,8 @@
// connection and makes sure that the data for each is appropriately echoed.
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const assert = require('assert');
const http2 = require('http2');
diff --git a/test/parallel/test-http2-options-max-headers-block-length.js b/test/parallel/test-http2-options-max-headers-block-length.js
index 41e8d549b4a9a3..fe3eb9774835ba 100644
--- a/test/parallel/test-http2-options-max-headers-block-length.js
+++ b/test/parallel/test-http2-options-max-headers-block-length.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const assert = require('assert');
const h2 = require('http2');
diff --git a/test/parallel/test-http2-options-max-reserved-streams.js b/test/parallel/test-http2-options-max-reserved-streams.js
index b01ed89de0a384..425ac6eb4ea790 100755
--- a/test/parallel/test-http2-options-max-reserved-streams.js
+++ b/test/parallel/test-http2-options-max-reserved-streams.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const h2 = require('http2');
const server = h2.createServer();
diff --git a/test/parallel/test-http2-padding-callback.js b/test/parallel/test-http2-padding-callback.js
index 610b636fdcc263..a63f1041f3f8f4 100644
--- a/test/parallel/test-http2-padding-callback.js
+++ b/test/parallel/test-http2-padding-callback.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const assert = require('assert');
const h2 = require('http2');
const { PADDING_STRATEGY_CALLBACK } = h2.constants;
diff --git a/test/parallel/test-http2-priority-event.js b/test/parallel/test-http2-priority-event.js
index 505f0f1e9b752b..b577fdb37637e1 100644
--- a/test/parallel/test-http2-priority-event.js
+++ b/test/parallel/test-http2-priority-event.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const assert = require('assert');
const h2 = require('http2');
diff --git a/test/parallel/test-http2-respond-file-204.js b/test/parallel/test-http2-respond-file-204.js
index 66840e57adac91..2a531df4646977 100644
--- a/test/parallel/test-http2-respond-file-204.js
+++ b/test/parallel/test-http2-respond-file-204.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const http2 = require('http2');
const assert = require('assert');
const path = require('path');
diff --git a/test/parallel/test-http2-respond-file-304.js b/test/parallel/test-http2-respond-file-304.js
index 0b279223f14d5d..d36dd8411f9306 100644
--- a/test/parallel/test-http2-respond-file-304.js
+++ b/test/parallel/test-http2-respond-file-304.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const http2 = require('http2');
const assert = require('assert');
const path = require('path');
diff --git a/test/parallel/test-http2-respond-file-compat.js b/test/parallel/test-http2-respond-file-compat.js
index be256ee2bfa416..53c5a34d2ae0fc 100644
--- a/test/parallel/test-http2-respond-file-compat.js
+++ b/test/parallel/test-http2-respond-file-compat.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const http2 = require('http2');
const path = require('path');
diff --git a/test/parallel/test-http2-respond-file-fd-invalid.js b/test/parallel/test-http2-respond-file-fd-invalid.js
index f46dbd9dc1d1a4..7e08a29e93709b 100644
--- a/test/parallel/test-http2-respond-file-fd-invalid.js
+++ b/test/parallel/test-http2-respond-file-fd-invalid.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const http2 = require('http2');
const assert = require('assert');
diff --git a/test/parallel/test-http2-respond-file-fd-range.js b/test/parallel/test-http2-respond-file-fd-range.js
index 083dd456158821..13b525c6c11541 100644
--- a/test/parallel/test-http2-respond-file-fd-range.js
+++ b/test/parallel/test-http2-respond-file-fd-range.js
@@ -4,6 +4,8 @@
// Tests the ability to minimally request a byte range with respondWithFD
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const http2 = require('http2');
const assert = require('assert');
const path = require('path');
diff --git a/test/parallel/test-http2-respond-file-fd.js b/test/parallel/test-http2-respond-file-fd.js
index 4e982bca3cfd35..502d6e86293d66 100644
--- a/test/parallel/test-http2-respond-file-fd.js
+++ b/test/parallel/test-http2-respond-file-fd.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const http2 = require('http2');
const assert = require('assert');
const path = require('path');
diff --git a/test/parallel/test-http2-respond-file-push.js b/test/parallel/test-http2-respond-file-push.js
index 1c2476f173463a..b16a9e1c600d2b 100644
--- a/test/parallel/test-http2-respond-file-push.js
+++ b/test/parallel/test-http2-respond-file-push.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const http2 = require('http2');
const assert = require('assert');
const path = require('path');
diff --git a/test/parallel/test-http2-respond-file-range.js b/test/parallel/test-http2-respond-file-range.js
index 40c5526953aaca..a4fda25a9017a8 100644
--- a/test/parallel/test-http2-respond-file-range.js
+++ b/test/parallel/test-http2-respond-file-range.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const http2 = require('http2');
const assert = require('assert');
const path = require('path');
diff --git a/test/parallel/test-http2-respond-file.js b/test/parallel/test-http2-respond-file.js
index 81babb58fadcd1..3c5272f77fa024 100644
--- a/test/parallel/test-http2-respond-file.js
+++ b/test/parallel/test-http2-respond-file.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const http2 = require('http2');
const assert = require('assert');
const path = require('path');
diff --git a/test/parallel/test-http2-response-splitting.js b/test/parallel/test-http2-response-splitting.js
index cd3a5d39d7af01..557967a3df6c81 100755
--- a/test/parallel/test-http2-response-splitting.js
+++ b/test/parallel/test-http2-response-splitting.js
@@ -6,6 +6,8 @@
// contain invalid characters.
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const assert = require('assert');
const http2 = require('http2');
const { URL } = require('url');
diff --git a/test/parallel/test-http2-server-destroy-before-additional.js b/test/parallel/test-http2-server-destroy-before-additional.js
index 9aff3b6abf987b..5e04a87323e4c1 100644
--- a/test/parallel/test-http2-server-destroy-before-additional.js
+++ b/test/parallel/test-http2-server-destroy-before-additional.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const assert = require('assert');
const h2 = require('http2');
diff --git a/test/parallel/test-http2-server-destroy-before-push.js b/test/parallel/test-http2-server-destroy-before-push.js
index 9c1628a18bf671..429f37e2c68362 100644
--- a/test/parallel/test-http2-server-destroy-before-push.js
+++ b/test/parallel/test-http2-server-destroy-before-push.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const assert = require('assert');
const h2 = require('http2');
diff --git a/test/parallel/test-http2-server-destroy-before-respond.js b/test/parallel/test-http2-server-destroy-before-respond.js
index acb020d5bd7e3e..4ea64e82812be1 100644
--- a/test/parallel/test-http2-server-destroy-before-respond.js
+++ b/test/parallel/test-http2-server-destroy-before-respond.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const assert = require('assert');
const h2 = require('http2');
diff --git a/test/parallel/test-http2-server-destroy-before-write.js b/test/parallel/test-http2-server-destroy-before-write.js
index 533aace208c44b..724e12624ef608 100644
--- a/test/parallel/test-http2-server-destroy-before-write.js
+++ b/test/parallel/test-http2-server-destroy-before-write.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const assert = require('assert');
const h2 = require('http2');
diff --git a/test/parallel/test-http2-server-push-disabled.js b/test/parallel/test-http2-server-push-disabled.js
index 33f8ed7c65e2f1..a9cdbd6239739d 100644
--- a/test/parallel/test-http2-server-push-disabled.js
+++ b/test/parallel/test-http2-server-push-disabled.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const assert = require('assert');
const http2 = require('http2');
diff --git a/test/parallel/test-http2-server-push-stream.js b/test/parallel/test-http2-server-push-stream.js
index c2f34ed517c6c9..c1de1195f76be3 100644
--- a/test/parallel/test-http2-server-push-stream.js
+++ b/test/parallel/test-http2-server-push-stream.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const assert = require('assert');
const http2 = require('http2');
diff --git a/test/parallel/test-http2-server-rst-before-respond.js b/test/parallel/test-http2-server-rst-before-respond.js
index 015e11311f7544..d8e9d0a6cc5bff 100644
--- a/test/parallel/test-http2-server-rst-before-respond.js
+++ b/test/parallel/test-http2-server-rst-before-respond.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const assert = require('assert');
const h2 = require('http2');
diff --git a/test/parallel/test-http2-server-rst-stream.js b/test/parallel/test-http2-server-rst-stream.js
index 30a9db49afc239..90966f7695b1ef 100644
--- a/test/parallel/test-http2-server-rst-stream.js
+++ b/test/parallel/test-http2-server-rst-stream.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const assert = require('assert');
const http2 = require('http2');
diff --git a/test/parallel/test-http2-server-set-header.js b/test/parallel/test-http2-server-set-header.js
index 8b0e82fd8a50d5..b681469ece2b18 100644
--- a/test/parallel/test-http2-server-set-header.js
+++ b/test/parallel/test-http2-server-set-header.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const assert = require('assert');
const http2 = require('http2');
const body =
diff --git a/test/parallel/test-http2-server-shutdown-before-respond.js b/test/parallel/test-http2-server-shutdown-before-respond.js
index ccdbbf5d015c44..75e60f46e69003 100644
--- a/test/parallel/test-http2-server-shutdown-before-respond.js
+++ b/test/parallel/test-http2-server-shutdown-before-respond.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const h2 = require('http2');
const server = h2.createServer();
diff --git a/test/parallel/test-http2-server-socket-destroy.js b/test/parallel/test-http2-server-socket-destroy.js
index 15b19ca1786f53..d77f7355676f02 100755
--- a/test/parallel/test-http2-server-socket-destroy.js
+++ b/test/parallel/test-http2-server-socket-destroy.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const h2 = require('http2');
const assert = require('assert');
diff --git a/test/parallel/test-http2-server-socketerror.js b/test/parallel/test-http2-server-socketerror.js
index 80b22dbd3de4d2..5bbb2130f0ec17 100755
--- a/test/parallel/test-http2-server-socketerror.js
+++ b/test/parallel/test-http2-server-socketerror.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const assert = require('assert');
const http2 = require('http2');
diff --git a/test/parallel/test-http2-server-timeout.js b/test/parallel/test-http2-server-timeout.js
index e56e79fc8623e8..c3a8ef88517bb5 100755
--- a/test/parallel/test-http2-server-timeout.js
+++ b/test/parallel/test-http2-server-timeout.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const http2 = require('http2');
const server = http2.createServer();
diff --git a/test/parallel/test-http2-session-settings.js b/test/parallel/test-http2-session-settings.js
index 1d358f2c96fcdc..7f54bc2f02dcc8 100644
--- a/test/parallel/test-http2-session-settings.js
+++ b/test/parallel/test-http2-session-settings.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const assert = require('assert');
const h2 = require('http2');
diff --git a/test/parallel/test-http2-session-stream-state.js b/test/parallel/test-http2-session-stream-state.js
index 9ba56f958c43da..f122b2718997f9 100644
--- a/test/parallel/test-http2-session-stream-state.js
+++ b/test/parallel/test-http2-session-stream-state.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const assert = require('assert');
const h2 = require('http2');
diff --git a/test/parallel/test-http2-single-headers.js b/test/parallel/test-http2-single-headers.js
index 49918acc474bcb..cf66e570f91b19 100644
--- a/test/parallel/test-http2-single-headers.js
+++ b/test/parallel/test-http2-single-headers.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const http2 = require('http2');
const server = http2.createServer();
diff --git a/test/parallel/test-http2-status-code-invalid.js b/test/parallel/test-http2-status-code-invalid.js
index cb8c9072f73c3b..0fe8319db4140e 100644
--- a/test/parallel/test-http2-status-code-invalid.js
+++ b/test/parallel/test-http2-status-code-invalid.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const assert = require('assert');
const http2 = require('http2');
diff --git a/test/parallel/test-http2-status-code.js b/test/parallel/test-http2-status-code.js
index f094d981c36eec..9a6821b1d664db 100644
--- a/test/parallel/test-http2-status-code.js
+++ b/test/parallel/test-http2-status-code.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const assert = require('assert');
const http2 = require('http2');
diff --git a/test/parallel/test-http2-timeouts.js b/test/parallel/test-http2-timeouts.js
index 093a1bc3d1501a..a45b13826f6f4a 100644
--- a/test/parallel/test-http2-timeouts.js
+++ b/test/parallel/test-http2-timeouts.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const h2 = require('http2');
const server = h2.createServer();
diff --git a/test/parallel/test-http2-too-many-settings.js b/test/parallel/test-http2-too-many-settings.js
index 4a64645df14174..849e24af4e7ff3 100644
--- a/test/parallel/test-http2-too-many-settings.js
+++ b/test/parallel/test-http2-too-many-settings.js
@@ -5,6 +5,8 @@
// settings frames will result in a throw.
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const assert = require('assert');
const h2 = require('http2');
diff --git a/test/parallel/test-http2-trailers.js b/test/parallel/test-http2-trailers.js
index ed2d4b9e53597e..282899e65ebf5d 100644
--- a/test/parallel/test-http2-trailers.js
+++ b/test/parallel/test-http2-trailers.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const assert = require('assert');
const h2 = require('http2');
const body =
diff --git a/test/parallel/test-http2-window-size.js b/test/parallel/test-http2-window-size.js
index f96a273fec5b5f..57e27ac29bf73d 100644
--- a/test/parallel/test-http2-window-size.js
+++ b/test/parallel/test-http2-window-size.js
@@ -7,6 +7,8 @@
// on smaller / IoT platforms in case this poses problems for these targets.
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const assert = require('assert');
const h2 = require('http2');
diff --git a/test/parallel/test-http2-withflag.js b/test/parallel/test-http2-withflag.js
index 557ec40e643eba..069212257c2f0b 100644
--- a/test/parallel/test-http2-withflag.js
+++ b/test/parallel/test-http2-withflag.js
@@ -1,7 +1,9 @@
// Flags: --expose-http2
'use strict';
-require('../common');
+const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const assert = require('assert');
assert.doesNotThrow(() => require('http2'));
diff --git a/test/parallel/test-http2-write-callbacks.js b/test/parallel/test-http2-write-callbacks.js
index b371ebf681e472..e45e8ccb7d4a1d 100644
--- a/test/parallel/test-http2-write-callbacks.js
+++ b/test/parallel/test-http2-write-callbacks.js
@@ -4,6 +4,8 @@
// Verifies that write callbacks are called
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const assert = require('assert');
const http2 = require('http2');
diff --git a/test/parallel/test-http2-write-empty-string.js b/test/parallel/test-http2-write-empty-string.js
index 661777e39f858d..e7a55e5c0a440b 100644
--- a/test/parallel/test-http2-write-empty-string.js
+++ b/test/parallel/test-http2-write-empty-string.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const assert = require('assert');
const http2 = require('http2');
diff --git a/test/parallel/test-http2-zero-length-write.js b/test/parallel/test-http2-zero-length-write.js
index 5f4f0681d4baf4..f261cc72961e51 100644
--- a/test/parallel/test-http2-zero-length-write.js
+++ b/test/parallel/test-http2-zero-length-write.js
@@ -2,6 +2,8 @@
'use strict';
const common = require('../common');
+if (!common.hasCrypto)
+ common.skip('missing crypto');
const assert = require('assert');
const http2 = require('http2');