かんがるーさんの日記

最近自分が興味をもったものを調べた時の手順等を書いています。今は Spring Boot をいじっています。

Spring Boot + npm + Geb で入力フォームを作ってテストする ( その86 )( eslint を 5.16.0 → 6.8.0 へ、jest を 24.7.1 → 26.0.1 へバージョンアップし、windows-build-tools を 5.1.0 → 4.0.0 へバージョンダウンする )

概要

記事一覧はこちらです。

Spring Boot + npm + Geb で入力フォームを作ってテストする ( その85 )( Node.js を 10.15.3 → 12.16.3 へ、npm を 6.9.0 → 6.14.5 へバージョンアップする ) の続きです。

  • 今回の手順で確認できるのは以下の内容です。
    • eslint を 5.16.0 → 6.8.0 へ、jest を 24.7.1 → 26.0.1 へバージョンアップします。
    • windows-build-tools を 5.1.0 → 5.2.2 へバージョンアップしようとしたのですがエラーメッセージが表示されてインストール出来ず、5.1.0 にも戻せなかったので、4.0.0 へバージョンダウンしました。

参照したサイト・書籍

  1. eslint-config-airbnb-base
    https://www.npmjs.com/package/eslint-config-airbnb-base

目次

  1. eslint を 5.16.0 → 6.8.0 へ、eslint-config-airbnb-base を 13.1.0 → 14.1.0 へバージョンアップする
  2. windows-build-tools を 5.1.0 → 5.2.2 へバージョンアップする。。。つもりが 4.0.0 へバージョンダウンする
  3. jest を 24.7.1 → 26.0.1 へバージョンアップする

手順

eslint を 5.16.0 → 6.8.0 へ、eslint-config-airbnb-base を 13.1.0 → 14.1.0 へバージョンアップする

以下のコマンドを実行して eslint 関連のモジュールを最新のバージョンにします。

  • npm install --save-dev eslint@6.8.0
  • npm install --save-dev eslint-config-prettier@6.11.0
  • npm install --save-dev eslint-loader@4.0.2
  • npm install --save-dev eslint-plugin-import@2.20.1
  • npm install --save-dev eslint-plugin-prettier@3.1.3
    ※acorn は1つ前の回でバージョンアップしてしまいました。

以下のコマンドを実行して eslint-config-airbnb-base を 14.1.0 へバージョンアップします。

  • npm info "eslint-config-airbnb-base@14.1.0" peerDependencies
  • npx install-peerdeps --dev eslint-config-airbnb-base@14.1.0

f:id:ksby:20200506171531p:plain

npm test コマンドを実行するとテストは全て成功しましたが、

f:id:ksby:20200506171829p:plain

npm run build コマンドは Use the global form of 'use strict' のエラーメッセージが出て処理が中断しました。

f:id:ksby:20200506172052p:plain f:id:ksby:20200506172137p:plain

src/main/assets/js/inquiry/confirm.js を見ると "use strict"; の記述がなかったのでファイルの最初に追加します。

"use strict";

$(document).ready(function() {
    ..........

再度 npm testnpm run build を実行すると今度は特にエラーが出ずに終了しました。

f:id:ksby:20200506191152p:plain

windows-build-tools を 5.1.0 → 5.2.2 へバージョンアップする。。。つもりが 4.0.0 へバージョンダウンする

管理者モードで Powershell を起動した後、以下のコマンドを実行します。。。が Could not install Visual Studio Build Tools. のメッセージが表示されており、どうもインストール出来ていないようです(今回は ConEmu を管理者モードで起動した後 PowerShell -ExecutionPolicy RemoteSigned コマンドで PowerShell に切り替えて実行しています)。

  • npm uninstall --global windows-build-tools
  • npm install --global windows-build-tools@5.2.2

f:id:ksby:20200506194732p:plain f:id:ksby:20200506195027p:plain

Web で検索したところ Could not install Visual Studio Build Tools を見つけましたが、C:\Users\root\.windows-build-tools を削除しても同じメッセージが表示されます。

解決方法が分からないので 5.1.0 へ戻そうとしましたが同じエラーメッセージが出て元に戻せません。。。 どうも Windows 10 のバージョンが上がった影響でインストール出来なくなっているように思えます。

仕方がないので 4.0.0 をインストールしてみたところ、無事インストール出来ました。このバージョンを使うことにします。

  • npm uninstall --global windows-build-tools
  • npm install --global windows-build-tools@4.0.0

f:id:ksby:20200506202950p:plain

jest を 24.7.1 → 26.0.1 へバージョンアップする

以下のコマンドを実行します。

  • npm install --save-dev jest@26.0.1
  • npm install --save-dev jest-html-reporter@3.1.0

レポートファイルを削除したいので最初に gradle から clean タスクを実行しておきます。npm test コマンドを実行するとテストは全て成功しました。

f:id:ksby:20200506221429p:plain

レポートファイルは build/reports/jest/jest-html-reporter.html に生成されているのですが、テスト結果が出力されていませんでした。。。

f:id:ksby:20200506221806p:plain

https://www.npmjs.com/package/jest-html-reporter を見ると設定方法が変わっていたので、jest.config.json を以下のように変更します。

{
  "coverageDirectory": "build/reports/jest",
  "moduleDirectories": [
    "node_modules",
    "src/main/assets/js"
  ],
  "reporters": [
    "default",
    [
      "./node_modules/jest-html-reporter",
      {
        "pageTitle": "Test Report"
      }
    ]
  ]
}
  • "testResultsProcessor": "./node_modules/jest-html-reporter"reporters": ["default", ["./node_modules/jest-html-reporter", {"pageTitle": "Test Report"}] に変更します。

再度 npm test コマンドを実行するとテストが成功して build/reports/jest/jest-html-reporter.html にレポートが出力されていました。

f:id:ksby:20200506222751p:plain

履歴

2020/05/06
初版発行。