Cypress

Cypressとは

E2Eテストフレームワークのひとつ

Cypressは「E2Eテストフレームワーク」の一種であり、JavaScriptでテストコードを書けることが最大の特徴です。また、マルチブラウザに対応しており、同一コードで異なるブラウザに対するテストを作成することもできます。

参照元:イ-シービーイング・ラボ(https://blog.ecbeing.tech/entry/2021/04/08/114500#Cypressのデメリット)

こんな人におすすめ

導入が容易であり、学習しやすいと言われるプログラミング言語であるJavaScriptでテストコードを書くことができるため、Webサービスのテスト自動化に興味がある人、自動テスト初心者向きのツールです。プロジェクトに重要な処理をピックアップして、それらに優先順位を決めて単体で行う案件に向いています。

参照元:イ-シービーイング・ラボ(https://blog.ecbeing.tech/entry/2021/04/08/114500#デメリット総括)

メンテナンスの手間を考慮すると、サポートが充実した有償ツールの方がプロジェクトが円滑に進み、トータルコストが抑えられる可能性があります

現場にプログラミングスキルを持つ人材がいない場合や、トラブルが起きた際に誰にも相談できない環境の場合は、有償ツールの採用も検討することをおすすめします。

日本語のサポートが手厚い
テスト自動化ツールを見る

Cypressのメリット

導入が簡単

Cypressの導入は、Cypressによるテストを構築したいディレクトリ下で、短いコマンド分を入力して実行するだけ。5~10分で簡単にインストールできます。

管理画面を開いたら、初回はいくつかのサンプルテストを生成してくれるため、実行したいファイルをクリックするとテストを自動で実行してくれます。

参照元:Future Tech Blog(https://future-architect.github.io/articles/20210428a/)

テスト中の画面を動画で保存できる

Cypressでは、テスト実行中の画面の様子を動画として保存することができます。エラー箇所も動画で保存できるため、原因を検証しやすいでしょう。ブラウザ画面の分割により、テストコードで命令した内容が実際にどうなったかも確認することができます。

参照元:trog(https://microayatron.com/setting-up-cypress-environment/)

Cypressのデメリット

別タブの動作確認、値の取得ができない

Cypress では、別タブを開いて動作を確認することができません。CypressはテストコードをJavaScriptで実行する方式を採用しているため、基本的にJavaScriptでできないことはCypress上でも実行できません。アクセスするサイトはiframe上で実行されるため、画面遷移は可能です。しかし、別タブ内の値を取得するようなことはできません。

参照元:イ-シービーイング・ラボ(https://blog.ecbeing.tech/entry/2021/04/08/114500#Cypressのデメリット)

Safari、Internet Explorerでは使用できない

Cypressは、Chromium系ブラウザとFirefoxにしか対応していないため、SafariやInternet Explorerでは使用することができません(2021年3月調査時点)。したがって、普段よく使用するブラウザに対応していないことにより、活用できない場合もあります。

参照元:イ-シービーイング・ラボ(https://blog.ecbeing.tech/entry/2021/04/08/114500#Cypressのデメリット)

記述に慣れるまでスクリプト作成に時間がかかる

Cypressは、ブラウザ上の操作を記録するツールを搭載していないため、ブラウザ上の操作も全てJavaScriptで書く必要があります。プログラミング言語に精通している人材がいない場合はスクリプト作成に時間がかかるだけでなく、思い通りにサイトを動かすことができない可能性があります。

参照元:イ-シービーイング・ラボ(https://blog.ecbeing.tech/entry/2021/04/08/114500#Cypressのデメリット)

スクリプト作成の手間や、メンテナンスにかかる工数などを考えると、有償ツールの方がコスト削減につながる場合もあります。自社のプロジェクトに必要な性能やサポートを備えているテスト自動化ツールを選択しましょう。

失敗しない!
テスト自動化ツールの
選び方を見る

ノンプログラミングで
⽇本語のサポートが⼿厚い

テスト⾃動化ツールを⽐較
商品名 Ranorex
(ラノレックス)
Autify
(オーティファイ)
商品タイプ パッケージ型

膨大なテスト工数を
削減したい企業向け

SaaS型

初期費用を抑えて
導入したい企業向け

対応テスト
  • デスクトップ
  • webアプリ
  • モバイルアプリ
  • デスクトップ
  • webアプリ
  • モバイルアプリ
実行回数
の制限
制限なし 制限あり

400回/1000回/任意 ※プランにより異なる

日本語サポート 導入後のセミナーが充実! ヘルプサイトが充実!
体験版 14日間 14日間

※Googleで「テスト自動化ツール」と検索し上位表示されたパッケージ型、SaaS型のテスト自動化ツール21種類の中から、(1)クロスデバイス、マルチブラウザに対応し、(2)日本語のサポートがあり、(3)ノンプログラミングでシナリオ作成が可能なツールをピックアップ(2021年11月1日調査時点)。パッケージ型、SaaS型それぞれの代表商品を選出しました。

【代表商品の選出基準】
☆パッケージ型:上記の条件の通り。
☆SaaS型:上記の条件に加え、公式サイト上に導入事例がもっとも多かったツールを選出。

ピックアップ関連記事