jest あるテストの中の一個のテストだけ実行する(it の単位で実行する)

大した話じゃないんですけど。

jest を書いたりしているときに、ほかのテストは実行したくない!今書いてるテストだけ実行したい!という時あると思います。

例えば、ActivityList.spec.jsというテストのプログラムのファイルがあったとして、次のようなテストを書いているとします。

describe('ActivityList.js operation', () => {
  it('ActivityList can find Same Activities', () => {
 // 中略
 }
}

この

'ActivityList can find Same Activities'

のテストだけ実行したい場合は、次のようにCLIで実行します。

npm run unit -- ActivityList.spec.js -t 'ActivityList.js operation ActivityList can find Same Activities'

下記のようなパターンでやるということですね。

jest -t '<describeString> <itString>'

すると、ほかのテストを飛ばしてくれます。

PostmanでAPI仕様書を作る試み② 外部に公開する

前回に続き、PostmanでAPI仕様書を作る試みの続きです。

今回は、本丸!作ったAPI仕様書を外部の人にも公開しよー!!

編です。

①まず、サンプルのAPIを作ります。右横の、赤丸で囲んだところをクリックします。

②次に表示されるコーナーの一番下にある赤丸で囲んだところをクリックしてください。

③すると… うぉぉぉっ!!
もうすでに、API仕様書っぽくなっている!!

最初にですね~ API仕様書を
GithubのAPI仕様書みたいにカッコよく見やすく作りたい!」
と思っていたのですが、これですでに近づいてますね!(^_-)-☆

④最後に公開しますが、上記のスクショの右上の「Publish」というところをクリックします。あとは、流れでできると思います。

それで公開したAPIドキュメントのサンプルがこちらです。

お金をお支払いすれば、オリジナルのドメインにもできるっぽいです。

料金体系はこちら

PostmanでAPI仕様書を作る試み リクエストとレスポンスを成功とか失敗で分けたい

皆さま、API仕様書ってどうしてますか?

会社によっては社内のナレッジベースみたいなところにあったり、Excelとかになってたりすると思います。

弊社ではこの度、メンテナンスが簡単で外部にも公開できるようなAPI仕様書作成ツールを探しており、今Postmanというのを検討しています。
Postmanは、メインの役割としてはWebサーバーにあるプログラムに何か値を「GET」とか「POST」で渡すときに、それが簡単にできるというプログラムです。

Postmanとはもう長い付き合いで、確か12年前ぐらいからあったんじゃないかな~
Perlで問い合わせフォームとか作ってた頃から、これを使ってテストしてた気がする。昔は、本当に何かをURLにPostするだけでしたが、今はめちゃ高機能になっているみたいです。

というわけで、ちょいちょいPostmanをAPI仕様書にしていく中で得られた便利な使い方を紹介していきたいなと思います。

まずは、「成功したとき」と「失敗したとき」でドキュメントを分けたいやつです。ほかのプログラマーさんにこういうニーズがあるかわかりませんが、とりあえず私は 「成功したとき」と「失敗したとき」 が知りたいです。
成功したときにどんな風に帰ってくるのかは普通でも必要だと思いますが、失敗したときにどのようにエラーが帰ってくるのか知りたいからです。

で、Postmanさんではその辺をカバーしてくれとります!ありがとう!♡
以下、やり方です。

① 普通にAPIにリクエストを送ります。Postmanを初めて使う人のために紹介しますと、POSTとあるところにURLを記載し、Params とあるところにGETパラメーターを入力、BodyとあるところにPostパラメーターを入力して、Sendと書かれた青いボタンをクリックします

②レスポンスが帰ってきたら、下記の赤丸をクリックしてください。すると、「Save ad example」というのが選べます。この度はリクエストに成功しているので、「リクエスト成功時」などという名前をつけます。

③すると、左のツリー構造でAPIを見れる場所で、このリクエストが成功したときとエラーの時のサンプルがあるんだなぁ~ とわかります。

便利ですね!

社員旅行で訪れた「あわしまマリンパーク」へ行く船。APIって船みたいなもんですよね。

Lightsailのプライベートデータベースにポートフォワーディングする.ssh/configを書きたい

あんまり同じような人はいないかもしれませんが以下のような人達に向けて…

  1. AWSでLightsailのデータベースを使っていてパブリックモードを無効にしている
  2. データベースと同じリージョンにあるLightsailのインスタンスからポートフォワードでssh接続したい
  3. 長いコマンドを毎回打つのがしんどい
  4. .ssh/config を使って楽に打ちたい

configファイルがない場合は作成する必要があります。
ホームディレクトリの.sshに作成します。
例: C:\Users\hiroaki muramoto\.ssh

「ssh [ユーザー名]@[ホスト名] -i [秘密鍵の場所] -L 3306:[プライベートデータベースのエンドポイント]:3306」

上のコマンドをconfigで設定します。

configの内容(ssh remote-dbと打って繋がるようにしたい)

# ssh remote-db で繋がる 
Host remote-db

    # ユーザー名
    User [ユーザー名]

    # LightsailインスタンスのドメインまたはIPアドレス
    HostName [ドメインまたはIPアドレス]

    # ポートフォワード 3306の場合
    LocalForward 3306 [データベースのエンドポイント]:3306

    # pem(鍵の場所)
    IdentityFile [鍵のpath]
    IdentitiesOnly yes

無事に繋がりました。

参考

.ssh/configファイルでSSH接続を管理する
多段SSHやポートフォワーディングを ‘.ssh/config’ に書く

Windows Terminalを使って、CLIを出来るだけ一元化したい。

背景

これまでは、
sshクライアント…RLogin(少し前はputty)
windows用のCLI…Windows PowerShell(少し前はコマンドプロンプト)
を使っておりました。

まず色々開くのは好きじゃないのでRLoginのようなタブで複数操作できるのは結構魅力だったりします。
windows用のcli もそうなったらいいと思っていた中、たどり着いたのはPowerShell 7(Windows PowerShellではない)とWindows Terminalの組み合わせです。
どちらもMicrosoftが提供しているので、安心感もありますね。

Windows Terminalをインストール

まずはWindows Terminalです。
Windows11にしてから入っているのか元々入っていたのかは知らないですが、自分の環境では既に入っていました。
もしかしたら過去に同じ悩みを抱え、インストールだけしたのかもしれません。
全く記憶にないのですが…。

Microsoft StoreにありますのでMicrosoft Storeアプリで「Windows Terminal」と探せば見つかります。

Windows Terminalについて

PowerShell 7 をインストール

正直「Windows PowerShell」でもよかったのですが、PowerShell 7にした理由は、Windows PowerShellを開くと出てくる以下のメッセージが出なくなると嬉しいなぐらいの気持ちです。

「新機能と改善のために最新の PowerShell をインストールしてください! https://aka.ms/PSWindows」

https://aka.ms/PSWindows

上のリンク先から「PowerShell 7 のインストール」の
MSI パッケージを使用して PowerShell を展開する
からmsiをダウンロードしてインストールしました。

Windows Terminalを好きなように設定

最初は既定で設定されているCLIが立ちあがると思います。
こんな感じです。

タブが使えるのは嬉しいですね。

「Ctrl + 、」で設定画面を開きます。

ここからはお好みですが…

【スタートアップ】

  1. 既定のプロファイルでPowerShellを選択
  2. 既定のターミナルアプリケーションを Windows ターミナル に設定

【操作】

  1. URLを自動的に検出して、クリックできるようにするをオフ

cronとかがあった場合に誤ってクリックしないようにオフにしました。

【外観】

  1. テーマをダークに変更

やっぱりダークが好き

【 プロファイルのPowerShell 】

追加の設定にある外観をクリック後、 テキストの配色、フォント、背景を好きなものに設定して保存。

結果

良い感じになったのではないでしょうか。