Try! Vue CLI 3(インストール~プロジェクト作成~テスト)
Try! Vue CLI 3(インストール~プロジェクト作成~テスト):
本記事はタイトルの通り、Cloud9でVue CLI 3をインストールして、プロジェクトを作成して、
Cloud9特有の設定やVue CLI 3から採用された新しいものがあったので、メモ代わりに記事にしてみました。
Cloud9 - template:Blank
OSはUbuntuなので、同じOSなら殆ど同じように進められると思います。
template:Blankにも関わらずnode.jsがインストール済なので、複数のバージョンを管理する為にNVMをインストール
Vue CLI 3 推奨のバージョン[8.11.0]をインストール
バージョンの確認
インストールの確認
yarnでインストールすると正常にCLIが動作しなかった為、npmでインストール。
参考: 動作しなかった時に実行したコマンドは
必要とする機能を
本記事では
パッケージマネージャーの設定の他、
本記事ではパッケージマネージャーは
デフォルトの設定の場合、
設定内容は下記の通り
※
全てのテストを実行する場合は、
指定のファイルだけテストする場合は
デフォルトだと
テスト対象の設定は
sum関数がコーディングされた
つまり
この
テストを実行
はじめに
本記事はタイトルの通り、Cloud9でVue CLI 3をインストールして、プロジェクトを作成して、jest
を使ったテストまでトライしてみたものになります。Cloud9特有の設定やVue CLI 3から採用された新しいものがあったので、メモ代わりに記事にしてみました。
開発環境
Cloud9 - template:BlankOSはUbuntuなので、同じOSなら殆ど同じように進められると思います。
NVMのインストール
template:Blankにも関わらずnode.jsがインストール済なので、複数のバージョンを管理する為にNVMをインストールcurl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash
node.jsのインストール
Vue CLI 3 推奨のバージョン[8.11.0]をインストールnvm install 8.11.0
デフォルトのnode.jsのバージョンを8.11.0に変更
nvm alias default 8.11.0
node --version
Yarnのインストール
curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add -
echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list
sudo apt-get update && sudo apt-get install yarn
yarn --version
Vue CLIのインストール
yarnでインストールすると正常にCLIが動作しなかった為、npmでインストール。npm install -g @vue/cli
yarn global add @vue/cli
Vueプロジェクトの作成
vue create [プロジェクト名]
Vueプロジェクトの設定(PWAやLinterなど)
Please pick a preset:
- default(babel, eslint): デフォルト設定
- Manually select features: PWAやVuexなど、defaultに存在しない機能を使用する場合に選択
Manually select features
を選択。
Check the features needed for your project:
必要とする機能をspace
キーで選択。全て選択する場合はa
キーで一括選択が可能。選択が終わったらEnter
。本記事では
Babel
, Progressive Web App (PWA) Support
, Linter / Formatter
, Unit Testing
を選択。
各機能の設定
パッケージマネージャーの設定の他、Linter / Formatter
を選択した場合はツールやStyleGuideの設定、Unit Testing
を選択した場合はテストツールの設定等を行います。本記事ではパッケージマネージャーは
yarn
, Linter / Formatter
はESLint + Airbnb config
, Unit Testing
はJest
を選択。
Cloud9の為の設定
デフォルトの設定の場合、localhost
がCloud9ではなく、使用中のパソコンを見てしまい、正常に起動しない為、設定ファイルを作成・編集。[project_root]
直下にvue.config.js
を作成して設定。(webpack.config.js
ではない)設定内容は下記の通り
vue.config.js
module.exports = { devServer: { host: '0.0.0.0', disableHostCheck: true } }
[project_root]
は、vue create
で作成されたプロジェクト名と同じ名前がついたフォルダ
ひな形ページをローカルサーバーで実行
cd [project_root]
yarn run serve
Jest(ユニットテスト)の実行
全てのテストを実行する場合は、yarn run test:unit
yarn run test:unit [ファイル名]
[project_root]/tests/unit/*.spec.(js|jsx|ts|tsx)
がテストの対象。テスト対象の設定は
[project_root]/jest.config.js
ファイル内のtestMatch
で変更可能。(vue create
の時の設定次第ではpackage.json
になると思われる)
e.g. sum関数のテスト
sum関数がコーディングされたsum.js
を作成[project_root]/src/sum.js
function sum(a, b) { return a + b; } module.exports = sum;
sum.js
をテストするsum.spec.js
を作成[project_root]/tests/sum.spec.js
const sum = require('@/sum'); test('adds 1 + 2 to equal 3', () => { expect(sum(1, 2)).toBe(3); });
sum.spec.js
の1行目の@
は[project_root]/src
を示している。つまり
@/sum
と[project_root]/src/sum.js
はイコール。この
@
を[project_root]/src
にマッピングしている設定は、[project_root]/jest.config.js
内のmoduleNameMapper
で行っている。テストを実行
yarn run test:unit sum.spec.js
コメント
コメントを投稿