diff --git a/.eslintignore b/.eslintignore
index fe9c21c4a52289cb61b2eb4188d6f110545fc388..916c8d42900362c81622dc0b88a4c968fbb61bc3 100644
--- a/.eslintignore
+++ b/.eslintignore
@@ -7,7 +7,6 @@ coverage
 
 # don't lint test stuff
 **/__fixtures__/**
-**/_fixtures/**
 **/__mocks__/**
 **/*.d.ts
 /config.js
diff --git a/.prettierignore b/.prettierignore
index 03c406723e3c8dc3637c64391b3cc5040fe6ea5a..f74b40cc589e9878c341f1fff2453c177c605959 100644
--- a/.prettierignore
+++ b/.prettierignore
@@ -10,6 +10,5 @@
 /*.log
 package.json
 **/__fixtures__/
-**/_fixtures/
 **/__mocks__/
 bin/yarn*
diff --git a/test/config/cli.spec.ts b/test/config/cli.spec.ts
index 9b25b9c984b3507d305239c885b896b651eae4c2..8d685dcbec6e604547c50ef58a076168c4a842ca 100644
--- a/test/config/cli.spec.ts
+++ b/test/config/cli.spec.ts
@@ -1,5 +1,5 @@
 import * as cli from '../../lib/config/cli';
-import getArgv from './config/_fixtures/argv';
+import getArgv from './config/__fixtures__/argv';
 import { RenovateOptions } from '../../lib/config/definitions';
 import { DATASOURCE_DOCKER } from '../../lib/constants/data-binary-source';
 
diff --git a/test/config/config/_fixtures/argv.ts b/test/config/config/__fixtures__/argv.ts
similarity index 100%
rename from test/config/config/_fixtures/argv.ts
rename to test/config/config/__fixtures__/argv.ts
diff --git a/test/config/config/_fixtures/file.js b/test/config/config/__fixtures__/file.js
similarity index 100%
rename from test/config/config/_fixtures/file.js
rename to test/config/config/__fixtures__/file.js
diff --git a/test/config/config/_fixtures/file2.js b/test/config/config/__fixtures__/file2.js
similarity index 100%
rename from test/config/config/_fixtures/file2.js
rename to test/config/config/__fixtures__/file2.js
diff --git a/test/config/decrypt.spec.ts b/test/config/decrypt.spec.ts
index 11fcaef4a4dcffb30378f847590fbebb301bebc8..c576b027df218296fe0ddc2667994685c0461eba 100644
--- a/test/config/decrypt.spec.ts
+++ b/test/config/decrypt.spec.ts
@@ -2,7 +2,7 @@ import fs from 'fs';
 import { decryptConfig } from '../../lib/config/decrypt';
 import { RenovateConfig } from '../../lib/config';
 
-const privateKey = fs.readFileSync('test/config/keys/_fixtures/private.pem');
+const privateKey = fs.readFileSync('test/config/keys/__fixtures__/private.pem');
 
 describe('config/decrypt', () => {
   describe('decryptConfig()', () => {
diff --git a/test/config/file.spec.ts b/test/config/file.spec.ts
index b274362c39d5b87c4372fc49c42a285f6f684b4f..f716ecebcc4f92e55eda67246a66035fd1cc4229 100644
--- a/test/config/file.spec.ts
+++ b/test/config/file.spec.ts
@@ -1,7 +1,7 @@
 import path from 'path';
 import fs from 'fs';
 import * as file from '../../lib/config/file';
-import customConfig from './config/_fixtures/file';
+import customConfig from './config/__fixtures__/file';
 
 describe('config/file', () => {
   describe('.getConfig()', () => {
@@ -11,19 +11,28 @@ describe('config/file', () => {
       );
     });
     it('parses custom config file', () => {
-      const configFile = path.resolve(__dirname, './config/_fixtures/file.js');
+      const configFile = path.resolve(
+        __dirname,
+        './config/__fixtures__/file.js'
+      );
       expect(file.getConfig({ RENOVATE_CONFIG_FILE: configFile })).toEqual(
         customConfig
       );
     });
     it('migrates', () => {
-      const configFile = path.resolve(__dirname, './config/_fixtures/file2.js');
+      const configFile = path.resolve(
+        __dirname,
+        './config/__fixtures__/file2.js'
+      );
       const res = file.getConfig({ RENOVATE_CONFIG_FILE: configFile });
       expect(res).toMatchSnapshot();
       expect(res.rangeStrategy).toEqual('bump');
     });
     it('informs user when error in parsing config.js', () => {
-      const configFile = path.resolve(__dirname, './config/_fixtures/file3.ts');
+      const configFile = path.resolve(
+        __dirname,
+        './config/__fixtures__/file3.ts'
+      );
       const fileContent = `module.exports = {
         "platform": "github",
         "token":"abcdef",
@@ -44,7 +53,10 @@ describe('config/file', () => {
     });
   });
   it('handles when invalid file location is provided', () => {
-    const configFile = path.resolve(__dirname, './config/_fixtures/file4.ts');
+    const configFile = path.resolve(
+      __dirname,
+      './config/__fixtures__/file4.ts'
+    );
     expect(file.getConfig({ RENOVATE_CONFIG_FILE: configFile })).toStrictEqual(
       {}
     );
diff --git a/test/config/index.spec.ts b/test/config/index.spec.ts
index b143200a74623cc6a69c835a08559678e656ae8f..3461c7b248926a204cc0c529c8c72940a1a3f3fc 100644
--- a/test/config/index.spec.ts
+++ b/test/config/index.spec.ts
@@ -1,4 +1,4 @@
-import getArgv from './config/_fixtures/argv';
+import getArgv from './config/__fixtures__/argv';
 import { getConfig } from '../../lib/config/defaults';
 
 jest.mock('../../lib/datasource/npm');
diff --git a/test/config/keys/_fixtures/private.pem b/test/config/keys/__fixtures__/private.pem
similarity index 100%
rename from test/config/keys/_fixtures/private.pem
rename to test/config/keys/__fixtures__/private.pem
diff --git a/test/config/npm/_fixtures/01.json b/test/config/npm/__fixtures__/01.json
similarity index 100%
rename from test/config/npm/_fixtures/01.json
rename to test/config/npm/__fixtures__/01.json
diff --git a/test/config/npm/_fixtures/02.json b/test/config/npm/__fixtures__/02.json
similarity index 100%
rename from test/config/npm/_fixtures/02.json
rename to test/config/npm/__fixtures__/02.json
diff --git a/test/config/npm/_fixtures/coffeelint.json b/test/config/npm/__fixtures__/coffeelint.json
similarity index 100%
rename from test/config/npm/_fixtures/coffeelint.json
rename to test/config/npm/__fixtures__/coffeelint.json
diff --git a/test/config/npm/_fixtures/next.json b/test/config/npm/__fixtures__/next.json
similarity index 100%
rename from test/config/npm/_fixtures/next.json
rename to test/config/npm/__fixtures__/next.json
diff --git a/test/config/npm/_fixtures/typescript.json b/test/config/npm/__fixtures__/typescript.json
similarity index 100%
rename from test/config/npm/_fixtures/typescript.json
rename to test/config/npm/__fixtures__/typescript.json
diff --git a/test/config/npm/_fixtures/vue-test-utils.json b/test/config/npm/__fixtures__/vue-test-utils.json
similarity index 100%
rename from test/config/npm/_fixtures/vue-test-utils.json
rename to test/config/npm/__fixtures__/vue-test-utils.json
diff --git a/test/config/npm/_fixtures/vue.json b/test/config/npm/__fixtures__/vue.json
similarity index 100%
rename from test/config/npm/_fixtures/vue.json
rename to test/config/npm/__fixtures__/vue.json
diff --git a/test/config/npm/_fixtures/webpack.json b/test/config/npm/__fixtures__/webpack.json
similarity index 100%
rename from test/config/npm/_fixtures/webpack.json
rename to test/config/npm/__fixtures__/webpack.json
diff --git a/test/platform/bitbucket-server/_fixtures/responses.ts b/test/platform/bitbucket-server/__fixtures__/responses.ts
similarity index 100%
rename from test/platform/bitbucket-server/_fixtures/responses.ts
rename to test/platform/bitbucket-server/__fixtures__/responses.ts
diff --git a/test/platform/bitbucket-server/index.spec.ts b/test/platform/bitbucket-server/index.spec.ts
index a684667907b24549232b4ff3a35bdc882674faa8..03bae0122044fdeac85340f78339c4486b23f8f9 100644
--- a/test/platform/bitbucket-server/index.spec.ts
+++ b/test/platform/bitbucket-server/index.spec.ts
@@ -1,4 +1,4 @@
-import responses from './_fixtures/responses';
+import responses from './__fixtures__/responses';
 import { GotApi, RepoParams, Platform } from '../../../lib/platform/common';
 import { Storage } from '../../../lib/platform/git/storage';
 import {
diff --git a/test/platform/bitbucket/_fixtures/responses.ts b/test/platform/bitbucket/__fixtures__/responses.ts
similarity index 100%
rename from test/platform/bitbucket/_fixtures/responses.ts
rename to test/platform/bitbucket/__fixtures__/responses.ts
diff --git a/test/platform/bitbucket/comments.spec.ts b/test/platform/bitbucket/comments.spec.ts
index 4ed1043f9c26f292fa037e3c7efd3afe61f706b4..00f56ed0847de7c6df945b7a349277b0210da385 100644
--- a/test/platform/bitbucket/comments.spec.ts
+++ b/test/platform/bitbucket/comments.spec.ts
@@ -1,7 +1,7 @@
 import URL from 'url';
 import { api as _api } from '../../../lib/platform/bitbucket/bb-got-wrapper';
 import * as comments from '../../../lib/platform/bitbucket/comments';
-import responses from './_fixtures/responses';
+import responses from './__fixtures__/responses';
 
 jest.mock('../../../lib/platform/bitbucket/bb-got-wrapper');
 
diff --git a/test/platform/bitbucket/index.spec.ts b/test/platform/bitbucket/index.spec.ts
index bd7407738a7c973d2276f830b12410cb764c656f..95e978798a6662d0e53bee2603c97a8243021e6b 100644
--- a/test/platform/bitbucket/index.spec.ts
+++ b/test/platform/bitbucket/index.spec.ts
@@ -1,5 +1,5 @@
 import URL from 'url';
-import responses from './_fixtures/responses';
+import responses from './__fixtures__/responses';
 import { GotApi, RepoParams, Platform } from '../../../lib/platform/common';
 import { REPOSITORY_DISABLED } from '../../../lib/constants/error-messages';
 import {
diff --git a/test/platform/github/_fixtures/graphql/pullrequest-1.json b/test/platform/github/__fixtures__/graphql/pullrequest-1.json
similarity index 100%
rename from test/platform/github/_fixtures/graphql/pullrequest-1.json
rename to test/platform/github/__fixtures__/graphql/pullrequest-1.json
diff --git a/test/platform/github/_fixtures/graphql/pullrequests-closed.json b/test/platform/github/__fixtures__/graphql/pullrequests-closed.json
similarity index 100%
rename from test/platform/github/_fixtures/graphql/pullrequests-closed.json
rename to test/platform/github/__fixtures__/graphql/pullrequests-closed.json
diff --git a/test/platform/github/index.spec.ts b/test/platform/github/index.spec.ts
index 7d499b25e5a7cd7e1a9979411d8565a03f8dfa74..aae77addcfb22c62ae5e7398c209cf36dedff395 100644
--- a/test/platform/github/index.spec.ts
+++ b/test/platform/github/index.spec.ts
@@ -69,11 +69,11 @@ describe('platform/github', () => {
   });
 
   const graphqlOpenPullRequests = fs.readFileSync(
-    'test/platform/github/_fixtures/graphql/pullrequest-1.json',
+    'test/platform/github/__fixtures__/graphql/pullrequest-1.json',
     'utf8'
   );
   const graphqlClosedPullrequests = fs.readFileSync(
-    'test/platform/github/_fixtures/graphql/pullrequests-closed.json',
+    'test/platform/github/__fixtures__/graphql/pullrequests-closed.json',
     'utf8'
   );
 
diff --git a/test/platform/utils/_fixtures/issue-body.txt b/test/platform/utils/__fixtures__/issue-body.txt
similarity index 100%
rename from test/platform/utils/_fixtures/issue-body.txt
rename to test/platform/utils/__fixtures__/issue-body.txt
diff --git a/test/platform/utils/_fixtures/pr-body.txt b/test/platform/utils/__fixtures__/pr-body.txt
similarity index 100%
rename from test/platform/utils/_fixtures/pr-body.txt
rename to test/platform/utils/__fixtures__/pr-body.txt
diff --git a/test/platform/utils/pr-body.spec.ts b/test/platform/utils/pr-body.spec.ts
index 77792e176afbe7d5ff244190f4ebc05a77169bb6..f02952df3075a85353b74377f0b39dae62332eda 100644
--- a/test/platform/utils/pr-body.spec.ts
+++ b/test/platform/utils/pr-body.spec.ts
@@ -5,7 +5,7 @@ describe('platform/utils/pr-body', () => {
   let prBody: string;
   beforeAll(async () => {
     prBody = await fs.readFile(
-      'test/platform/utils/_fixtures/pr-body.txt',
+      'test/platform/utils/__fixtures__/pr-body.txt',
       'utf8'
     );
   });
diff --git a/test/platform/utils/read-only-issue-body.spec.ts b/test/platform/utils/read-only-issue-body.spec.ts
index c7b3b62558c5075d836a5b4a91b7efcc22d0cfb7..b4eeb515e3dbd86fe9057662ed803564c2d9f738 100644
--- a/test/platform/utils/read-only-issue-body.spec.ts
+++ b/test/platform/utils/read-only-issue-body.spec.ts
@@ -5,7 +5,7 @@ describe('platform/utils/read-only-issue-body', () => {
   let issueBody: string;
   beforeAll(async () => {
     issueBody = await fs.readFile(
-      'test/platform/utils/_fixtures/issue-body.txt',
+      'test/platform/utils/__fixtures__/issue-body.txt',
       'utf8'
     );
   });
diff --git a/test/workers/pr/_fixtures/angular.js.md b/test/workers/pr/__fixtures__/angular.js.md
similarity index 100%
rename from test/workers/pr/_fixtures/angular.js.md
rename to test/workers/pr/__fixtures__/angular.js.md
diff --git a/test/workers/pr/_fixtures/jest.md b/test/workers/pr/__fixtures__/jest.md
similarity index 100%
rename from test/workers/pr/_fixtures/jest.md
rename to test/workers/pr/__fixtures__/jest.md
diff --git a/test/workers/pr/_fixtures/js-yaml.md b/test/workers/pr/__fixtures__/js-yaml.md
similarity index 100%
rename from test/workers/pr/_fixtures/js-yaml.md
rename to test/workers/pr/__fixtures__/js-yaml.md
diff --git a/test/workers/pr/changelog/release-notes.spec.ts b/test/workers/pr/changelog/release-notes.spec.ts
index 6a0771551f345b92c847941f878a75427f2236cf..e6d3e6958098cd8930ab6f60e3caa408503c76f4 100644
--- a/test/workers/pr/changelog/release-notes.spec.ts
+++ b/test/workers/pr/changelog/release-notes.spec.ts
@@ -9,16 +9,16 @@ import {
 const ghGot: jest.Mock<Promise<{ body: unknown }>> = got as never;
 
 const angularJsChangelogMd = fs.readFileSync(
-  'test/workers/pr/_fixtures/angular.js.md',
+  'test/workers/pr/__fixtures__/angular.js.md',
   'utf8'
 );
 const jestChangelogMd = fs.readFileSync(
-  'test/workers/pr/_fixtures/jest.md',
+  'test/workers/pr/__fixtures__/jest.md',
   'utf8'
 );
 
 const jsYamlChangelogMd = fs.readFileSync(
-  'test/workers/pr/_fixtures/js-yaml.md',
+  'test/workers/pr/__fixtures__/js-yaml.md',
   'utf8'
 );
 
diff --git a/test/workers/repository/_fixtures/master-issue_with_2_PR_closed_ignored.txt b/test/workers/repository/__fixtures__/master-issue_with_2_PR_closed_ignored.txt
similarity index 100%
rename from test/workers/repository/_fixtures/master-issue_with_2_PR_closed_ignored.txt
rename to test/workers/repository/__fixtures__/master-issue_with_2_PR_closed_ignored.txt
diff --git a/test/workers/repository/_fixtures/master-issue_with_2_PR_edited.txt b/test/workers/repository/__fixtures__/master-issue_with_2_PR_edited.txt
similarity index 100%
rename from test/workers/repository/_fixtures/master-issue_with_2_PR_edited.txt
rename to test/workers/repository/__fixtures__/master-issue_with_2_PR_edited.txt
diff --git a/test/workers/repository/_fixtures/master-issue_with_3_PR_in_approval.txt b/test/workers/repository/__fixtures__/master-issue_with_3_PR_in_approval.txt
similarity index 100%
rename from test/workers/repository/_fixtures/master-issue_with_3_PR_in_approval.txt
rename to test/workers/repository/__fixtures__/master-issue_with_3_PR_in_approval.txt
diff --git a/test/workers/repository/_fixtures/master-issue_with_3_PR_in_progress.txt b/test/workers/repository/__fixtures__/master-issue_with_3_PR_in_progress.txt
similarity index 100%
rename from test/workers/repository/_fixtures/master-issue_with_3_PR_in_progress.txt
rename to test/workers/repository/__fixtures__/master-issue_with_3_PR_in_progress.txt
diff --git a/test/workers/repository/_fixtures/master-issue_with_8_PR.txt b/test/workers/repository/__fixtures__/master-issue_with_8_PR.txt
similarity index 100%
rename from test/workers/repository/_fixtures/master-issue_with_8_PR.txt
rename to test/workers/repository/__fixtures__/master-issue_with_8_PR.txt
diff --git a/test/workers/repository/master-issue.spec.ts b/test/workers/repository/master-issue.spec.ts
index cf7facef752bfb8ba4ef02639e32ac9b618d02af..1027b0185835299242802c0edcef8b399ee2b810 100644
--- a/test/workers/repository/master-issue.spec.ts
+++ b/test/workers/repository/master-issue.spec.ts
@@ -201,7 +201,7 @@ describe('workers/repository/master-issue', () => {
       );
       expect(platform.ensureIssue.mock.calls[0][0].body).toBe(
         fs.readFileSync(
-          'test/workers/repository/_fixtures/master-issue_with_8_PR.txt',
+          'test/workers/repository/__fixtures__/master-issue_with_8_PR.txt',
           'utf8'
         )
       );
@@ -244,7 +244,7 @@ describe('workers/repository/master-issue', () => {
       );
       expect(platform.ensureIssue.mock.calls[0][0].body).toBe(
         fs.readFileSync(
-          'test/workers/repository/_fixtures/master-issue_with_2_PR_edited.txt',
+          'test/workers/repository/__fixtures__/master-issue_with_2_PR_edited.txt',
           'utf8'
         )
       );
@@ -297,7 +297,7 @@ describe('workers/repository/master-issue', () => {
       );
       expect(platform.ensureIssue.mock.calls[0][0].body).toBe(
         fs.readFileSync(
-          'test/workers/repository/_fixtures/master-issue_with_3_PR_in_progress.txt',
+          'test/workers/repository/__fixtures__/master-issue_with_3_PR_in_progress.txt',
           'utf8'
         )
       );
@@ -344,7 +344,7 @@ describe('workers/repository/master-issue', () => {
       );
       expect(platform.ensureIssue.mock.calls[0][0].body).toBe(
         fs.readFileSync(
-          'test/workers/repository/_fixtures/master-issue_with_2_PR_closed_ignored.txt',
+          'test/workers/repository/__fixtures__/master-issue_with_2_PR_closed_ignored.txt',
           'utf8'
         )
       );
@@ -405,7 +405,7 @@ describe('workers/repository/master-issue', () => {
       );
       expect(platform.ensureIssue.mock.calls[0][0].body).toBe(
         fs.readFileSync(
-          'test/workers/repository/_fixtures/master-issue_with_3_PR_in_approval.txt',
+          'test/workers/repository/__fixtures__/master-issue_with_3_PR_in_approval.txt',
           'utf8'
         )
       );
diff --git a/test/workers/repository/process/lookup/index.spec.ts b/test/workers/repository/process/lookup/index.spec.ts
index 4aedc83167d45fd727c2ad6d1262b67b4e7c73c3..a33ac2d9683fb823ec17d9eb32934cfb1d5d9a36 100644
--- a/test/workers/repository/process/lookup/index.spec.ts
+++ b/test/workers/repository/process/lookup/index.spec.ts
@@ -1,12 +1,12 @@
 import nock from 'nock';
 import * as lookup from '../../../../../lib/workers/repository/process/lookup';
-import qJson from '../../../../config/npm/_fixtures/01.json';
-import helmetJson from '../../../../config/npm/_fixtures/02.json';
-import coffeelintJson from '../../../../config/npm/_fixtures/coffeelint.json';
-import webpackJson from '../../../../config/npm/_fixtures/webpack.json';
-import nextJson from '../../../../config/npm/_fixtures/next.json';
-import vueJson from '../../../../config/npm/_fixtures/vue.json';
-import typescriptJson from '../../../../config/npm/_fixtures/typescript.json';
+import qJson from '../../../../config/npm/__fixtures__/01.json';
+import helmetJson from '../../../../config/npm/__fixtures__/02.json';
+import coffeelintJson from '../../../../config/npm/__fixtures__/coffeelint.json';
+import webpackJson from '../../../../config/npm/__fixtures__/webpack.json';
+import nextJson from '../../../../config/npm/__fixtures__/next.json';
+import vueJson from '../../../../config/npm/__fixtures__/vue.json';
+import typescriptJson from '../../../../config/npm/__fixtures__/typescript.json';
 import * as _docker from '../../../../../lib/datasource/docker';
 import * as _gitSubmodules from '../../../../../lib/datasource/git-submodules';
 import { mocked, getConfig } from '../../../../util';