Я пытаюсь создать файл для доступа только локально, и когда код находится в QA env.
Файл создается, когда я запускаю npm test
благодаря этому плагину https://www.npmjs.com/package/jest-html-reporter
Это мой jest.config.js
:
module.exports = {
preset: 'ts-jest',
testEnvironment: 'jsdom',
modulePaths: ['<rootDir>'],
reporters: [
'default',
[
'./node_modules/jest-html-reporter',
{
pageTitle: 'Test Report'
}
]
]
};
А мой сценарий test
довольно прост: "test": "npm run env && npm run lint && jest --coverage",
Тогда файл test-report.html
легко доступен через localhost:5000/test-report.html
но я не уверен, идет ли дело в производство?как я могу установить его только для просмотра в среде QA?
Webpack config:
const { DefinePlugin } = require('webpack');
const path = require('path');
const BundleAnalyzerPlugin = require('webpack-bundle-analyzer')
.BundleAnalyzerPlugin;
const HtmlWebpackPlugin = require('html-webpack-plugin');
const MiniCssExtractPlugin = require('mini-css-extract-plugin');
module.exports = {
mode: 'development',
entry: './src/index.tsx',
resolve: {
extensions: ['.ts', '.tsx', '.js'],
symlinks: false
},
output: {
path: path.join(__dirname, '/dist'),
filename: 'bundle.min.js',
publicPath: '/'
},
optimization: {
splitChunks: {
chunks: 'all',
minSize: 100,
maxSize: 500
}
},
module: {
rules: [
{
test: /\.(png|jpg|gif|svg|css|eot|ttf)$/,
loader: 'file-loader'
},
{
test: /\.tsx?$/,
loader: 'awesome-typescript-loader'
},
{
test: /\.scss$/,
use: [
'style-loader',
MiniCssExtractPlugin.loader,
'css-loader',
'sass-loader'
]
},
{
test: /\.svg$/,
use: ['@svgr/webpack']
}
]
},
node: {
fs: 'empty',
child_process: 'empty',
net: 'empty',
tls: 'empty'
},
plugins: [
new MiniCssExtractPlugin({
filename: 'style.css'
}),
new HtmlWebpackPlugin({
template: process.cwd() + '/src/index.html'
}),
new DefinePlugin({
process.env: {
NODE_ENV: JSON.stringify('development')
}
}),
new BundleAnalyzerPlugin({
openAnalyzer: false,
analyzerMode: 'static',
reportFilename: './bundle-report.html'
}),
],
devServer: {
historyApiFallback: true,
compress: true,
allowedHosts: ['.umusic.net'],
port: 5000
}
};