支援対象地域:札幌、仙台、関東、愛知、関西、広島、福岡

  • TOP
  •   
  • コラム
  •   
  • Cypressとは?詳しく解説させて

Cypressの概要について

ここでは、Cypressとは?という点について詳しく解説させていただきます。 Cypressは、最新のWeb用に構築された次世代のフロントエンドテストツールで、開発者とQAエンジニアが最新のアプリケーションをテストするときに直面する主な問題点に対処します。 エンドツーエンド(E2E)テスト、統合(インテグレーション)テスト、ユニットテストなどにおいて利用することが可能であり、テストの効率性を高めることが可能となります。
また、Cypressは市場からも大きく注目を集めております。 2020年にはOpenViewベンチャーパートナーが主導する4000万ドルにおいて、シリーズBラウンドの資金調達を発表しましたが、これにより、OpenViewの製品主導の成長と開発者ツールをスムーズに提供することが可能です。 また、OpenViewのパートナーであるBlakeBartlettを取締役会に加えることでCypressも より高い品質の製品をリリースすることが可能となります。 これらのOpenViewチームおよびCypressの提携により今後も大きな拡張を見せることは間違いありません。 資金調達を実行し、Cypressの展開としてはクロスブラウザテスト、あらゆる種類のネットワークリクエストを変更するための新しいコマンド、ダッシュボードの多くの新しい分析と機能など、多数の新機能をリリースする予定です。 この資金提供により、製品ロードマップがさらに加速され多くのユーザーにサービスが知られることになるでしょう。
Cypressは、テスト分野に革新をもたらすために多くのテクノロジーを開発しており、その活動内容とポイントは以下の通りとなります。
一点目がより多くのテストタイプのためにオープンソーステストランナーを拡張することです。 開発者に新しいタイプのテストを作成する機能を提供することにより、オープンソース製品を拡張します。 現在、ユーザーはエンドツーエンドのブラウザーベースの統合テストを作成できますが、単体テストとコンポーネントテストの両方を追加するために取り組んできました。 コンポーネントテストは、サイプレスにすでに存在するリソースの原則を借用しますが、サーバーを実行/起動/生成することなく、ソースコードから直接コンポーネントをマウントする能力と柔軟性をユーザーに提供します。さらに、単体テストは純粋にNode.jsテストに焦点を合わせているため、 ユーザーは、今日欠けているパワー、洞察、可視性を備えたあらゆる種類のバックエンドテストを作成できます。
二点目がダッシュボードの強化です。コンパニオンのダッシュボードサービスは、テストの実行を維持、管理、デバッグ、および調整するために、その機能を引き続き拡張します。 テストの優先順位付け、テストのバーンイン、Jira統合、すべてのテストタイプで記録されたすべてのテストの統合などの新機能が期待されます。また、商用サービスをさらに強力にする一環として、サイプレスがコードカバレッジ、視覚的なスクリーンショットテスト、および追加の洞察と分析について報告する機会を模索しています。
三点目が優秀なスタッフの採用です。 Cypressはエンジニアリング、開発者の経験、プロダクトマネージャー、サクセスエンジニア、テクニカルアカウントマネージャー、コミュニティサポート、セールス、データサイエンスなど、さまざまな人材を採用しています。 開発者が愛する世界クラスのオープンソースツールと商用サービスの構築において業界をリードする情熱的な人々のチームとコミュニティに参加することになります。

Cypressの導入実績

Cypressの導入実績について紹介させていただきます。
実績の一点目がGoDaddyです。
GoDaddyはアメリカのドメインレジストラおよびウェブホスティング会社です。これは、インターネット上で最大のICANN認定レジストラです。 1997年に設立され、アリゾナ州スコッツデールに本社を置いており、最も人気のあるドメインレジストラおよびウェブホスティング会社の1つとして知られております。同社は、ドメイン登録、Webサイト構築ツール、電子メールサービス、およびその他の関連サービスを中小企業や個人に提供し世界中のユーザーから高い評価を獲得しております。 また、さまざまなプロバイダーからの電子メールアドレスを設定する機能など、ビジネスオーナーがドメインを管理するためのツールも提供します。
GoDaddyを使用することには、使いやすさ、競争力のある価格、さまざまな製品など、多くの長所があります。 同社におけるグロースチームのミッションは顧客のオンボーディングとアップグレードのための世界クラスのユーザーエクスペリエンスを提供することです。 GoDaddyプラットフォームの多くの異なる部分を管理する10以上の他の内部チームと協力して、 お客様の導入とアップグレードのための世界クラスのユーザー体験を提供することは簡単ではありません。 チームのテストリソースは限定的であり、品質を確保することが同社の大きな課題の一つでもありましたが、 Cypressを導入することでそれらの問題を解決することができました。 世界クラスの機能を高いデリバリー速度で出荷する方法を探していたGoDaddyは、使いやすく、かつ包括的なソリューションを求めました。
GoDaddyがCypressを導入することとなった理由はいくつかあります。 例えば、高度なエンドツーエンドテストを実現することが可能である点、テストの記録を実行し包括的なテストカバレッジを実現することができる点、継続的インテグレーション(CI)パイプラインに簡単に追加できる点などが大きな理由です。 また、Cypressが選択された理由として、同社の製品の使いやすさ、テスト結果を確認するためのダッシュボード、サポートなど高い機能を搭載したプラットフォームであることもその理由と言えるでしょう。 もちろん広範なドキュメントと活気あるコミュニティからのサポートなどもその理由と言えます。
Cypressのオープンソースのテストランナーも導入における決め手となりました。 これらのライブ実行は、Cypressを試したすべての人にとって大きなメリットを与え、それらは 開発者にとって大きな武器となります。またGoDaddyがサービスを評価中、Cypressが組織全体にとって正しいソリューションとして効率的に機能することができるようになりました。 また、テスト実行のスクリーンショットやビデオで、何が起こったかを正確に把握することができます。テスト自動化にをCypress選択することで、GoDaddyチームは生産性の70%、テストメンテナンスが75%減少、毎日2,500のテストが実行という点を達成しています。
以上が簡単ではありますが、GoDaddyにおける導入実績についての説明とさせていただきます。

CypressとSelenium

CypressはSeleniumと比較されることが多いツールです。
Seleniumとは画面のテストを自動化し実行することを可能にするツールで、習得のための難易度が比較的低いことや、テスト作業を簡単に効率化できるためITエンジニアが利用するテストツールとして人気です。 テストを実行する際の方法として、WebブラウザにおいてITエンジニアが入力を行い検証するテスト方法と、 プログラミング言語やスクリプト言語を利用しテストを実行させる方法があり、Seleniumは後者に該当します。Seleniumの目的はテストにおける自動化の実現であり、ツールは同年にオープンソース化されております。 CypressとSeleniumを選択する際には様々な選択肢が生まれますが、両ツールはアーキテクチャが異なります。そのためそれぞれの特徴をしっかりと理解しておくことが重要です。

Seleniumを利用するメリットの一点目が難易度が低い点でしょう。 これにより、プログラマー初心者や経験の浅いエンジニアであってもSelenium自体を理解して使いこなすことは決して難しくありません。また、ネットを検索すると日本語での説明サイトが複数見つかることも特徴です。
二点目がテスト作業を効率化できる点です。 テスト量が膨大な場合、効率化を行い工数を下げることは必須と言えるでしょう。 テスト工程の自動化は様々な現場で利用され人気となっておりますが、Seleniumはそれらを実現するテクノロジーを搭載しております。
三点目が工数を削減できる点です。 ソフトウェアテストにおいて工数の管理はどのプロジェクトにおいても重要なポイントとなります。 工数を削減した時間を他の作業にあてることができれば、ITエンジニアとしてのパフォーマンスが上がり、 市場価値を上がることにも繋がります。 もちろんテスト自動化ツールはSeleniumだけではありませんので、現場によって使い分けることで、 大きくパフォーマンスを向上されることが可能になるでしょう。

Cypressとユニットテスト

Cypressとユニットテストについて説明させていただきます。
すでに説明させていただきましたように、Cypressは様々なテストにおいて利用されます。 特にユニットテストにおいて利用されることが多いため、開発者はテストの工程についての正しい理解が 必要となるでしょう。ユニットテストを実行する際のポイントについていくつか紹介させていただきます。
ユニットテストはテスト工程において最も初期段階で実施されるテストです。 テストの初期段階で不具合を見つけることにより、それ以降の工程においてテストの手戻りを少なくすることが可能となるため、非常に重要な役割を担います。 特に近年では、ソフトウェア開発においてテストを開発後に実施するのではなく、各工程の段階で前倒しを行いながらこまめにテストを実施するというシフトレフトの考え方が非常に重要視されておりますので、ユニットテストの精度を高めることの重要性は増す一方です。
正しいユニットテストを実行することで品質の担保やテストの安定性を担保することが可能となります。 また、開発者がテストに関するドキュメントを参考にすることで、そのユニットの正常動作に必要不可欠な特性を理解することができるという点もメリットとしてあげておきます。
最近ではユニットテストは自動化するケースが増えているため、 開発者およびテスターが単体テストを実施する際にテスト自動化ツールなどの知識や経験が必要になることも少なくありません。 その代表例がCypressとも言えるでしょう。 いずれにせよ単体テストの品質がプロジェクト全体に及ぼす影響は大きいため、 専門的な知識と配慮をもって単体テストを実施することは必須と言えるでしょう。 また、ユニット計画を実行するためにはユニットテスト計画が必要です。 これらはユニットテストの実装方法や概要などを記載したドキュメントであり、テストにあたり指針となる考え方が記述されております。ユニットテストはこれらの指針に則って実行されるため、すべての開発者やテストエンジニアにとって重要な役割を果たします。
ユニットテストは可動部品が非常に多いため、効果的なユニットテスト計画を作成するためには専門的な知識や プロジェクト全体を正しく把握するための能力が必要とされます。 ユニットテスト計画をより正確に実行するためにはプロセスをより小さなステップに分割し、最初に最も重要なステップに焦点を合わせることが大切となります。

ユニットテストが完了すると結合テストの実施を行います。Cypressでは結合テストもカバーしますので簡単に説明させていただきます。
結合テストでは、単体テストの次の工程としてモジュールを結合させた状態でのテストを実施することとなります。 結合テストモジュール間のインターフェース構造や結合についての動作の確認を実施し、 プログラムやモジュール間の構造やデータの受け渡しなどについて問題がないかという点について検証を行います。
結合テストにはいくつか手法がありますが、トップダウンテストとボトムアップテストを理解しておくことが重要です。トップダウンテストは上位のモジュールからテストを実施していく方法を指します。 結合テストにおいて上位モジュールがテストを通過することで、該当モジュールから呼び出される下位モジュールのスタブを用意して検証を行います。 上位のモジュールからテストを実施するため、プログラム機能の漏れを発見するのが容易であることがトップダウンテストのメリットとなります。
一方、ボトムアップテストは下位のモジュールからテストを実施し、上位モジュールに対してテストを行っていく方法でトップダウンテストとは逆のアプローチとなります。開発と同時にテストを実施できるというメリットがある一方で、不具合があった際の影響も多いのがボトムアップテストとなります。 どちらのテスト手法を選択するのかについてはシステム開発全体の特性や機能や規模など様々な要素を考慮し決定するといいでしょう。
結合テストでは、Webアプリケーションのテストを構築および維持するのに役立つツールが利用されるケースも少なくありません。 これらの結合テストツールはアプリケーションで記述されたコードに依存しないテストを作成するのに役立ちます。
また、自動化された方法でテストを整理して実行する方法も提供します。
その代表例がApache JMeterです。Apache JMeterは、負荷テストアプリケーションで最も人気のあるツールの1つとして非常に有名です。 Apache JMeterはクライアントサーバシステムのパフォーマンス測定および負荷テストを行うJavaアプリケーションであるため、多くのソフトウェアユーザーにとって便利であるという点が人気の理由と言えるでしょう。

次にシステムテストについて説明させていただきます。
システムテストは単体テスト、結合テストの次に実施するテスト工程です。 この工程では、開発者やテストエンジニアが全ての機能が揃った状態で様々なテストを行います。 V字モデルというモデルにおいてシステムテストは要件定義の工程とリンクしております。 これらは要件定義で決定した要件の内容に沿っているかという点について確認していくことになり、 要件定義書に記述した機能要件・非機能要件などをテストします。 システムテストのテストの種類は何通りかありますので、プロジェクトやテスト内容に応じてそれらを選定していきます。 機能テストでは、要件定義書に記述した機能について本番環境と同等の状態でシステム要件を満たしていることを検証します。 システムが機能要件通りに稼働することや、その他の機能が正しく動作するかという点について確認を実施するテストです。 構成テストでは、サポートされる各ソフトウェア構成とハードウェア構成に関するシステムのテストを行います。

テストの最終段階はユーザーテストとなります。 次に、ユーザーテストは受け入れテストとも呼ばれるシステムテストを実施した後のテスト工程で、 運用環境やそれに近しい環境においてはユーザーが動作や品質などをチェックし、確認するテストとなります。 ユーザーテストはテスト工程における最終段階となり、シナリオテストはこの工程に行われることが多いです。 この工程ではクライアントの希望した機能が搭載されていることや、実際の運用環境でしっかりと稼働するかという点について確認を行う必要があります。
ユーザーテストでは思いもよらないトラブルやクライアントが利用できるかなど様々な観点でテストを実施し、それらをベンダーサポートを行う必要があります。 開発したシステムがクライアントのニーズを満たせているかという点が最も重要となり、 リリース後の安定した運用にも影響しますので、ユーザーテストは非常に重要な工程となります。
以上が簡単ではありますがCypressとユニットテストに関する説明とさせていただきます。

Cypressの詳細

Cypressは、無料の オープンソースのローカルにインストールされたアプリケーションと、テストを記録するためのダッシュボードサービスで構成されています。アプリケーションをローカルでビルドしている間、毎日テストをセットアップして作成し始めるのに役立ち、一連のテストを構築し、CIプロバイダーと統合した後、ダッシュボードサービスでテストの実行を記録できます。
Cypressは生産性を高め、テストを楽しい体験にし、開発者の幸せを生み出す、繁栄するオープンソースエコシステムを構築することをミッションとして運営されております。開発者がテストの管理に伴うストレスや不安を感じることなく、より速く、より優れた新世代の最新アプリケーションを構築できるよう支援することを重要視していることでも知られております。 また、オープンソースで繁栄するエコシステムを実現、育成、育成する必要があることをCypressでは理解し、それらを実現するためのプラットフォームを提供します。

Cypressのテクノロジーにおいて他社と異なる点や機能について詳しく解説させていただきます。
一点目がスナップショット取得です。Cypressは、テストの実行時にスナップショットを取得します。 コマンドログのコマンドにカーソルを合わせると、各ステップで何が起こったかを正確に確認できます。 これによりテスト時の画面状況などについて開発者やテストエンジニアが迅速に確認し、問題を発見することができるようになります。
二点目がデバッグです。 ソフトウェアにおいてデバッグが重要な意味をもつことは言うまでもありません。 デバッグは、プログラムのエラーを見つけて修正するプロセスです。デバッグは面倒なプロセスになる可能性がありますが、最終製品にバグがないことを確認する必要があります。 最終製品にバグがないことを確認する必要があるため、デバッグはプログラミングプロセスの重要なステップです。デバッグプロセスは面倒な場合がありますが、完璧なソフトウェアを使用していることを確認することは価値があります。 Cypressではテストが失敗する理由を回避し、開発者ツールなどの使い慣れたツールから直接デバッグします。 また、読み取り可能なエラーとスタックトレースにより、デバッグが非常に高速になります。
三点目が自動待機です。Cypressではではテストに待機またはスリープを追加せずに無駄な時間を発生しません。 Cypressではは、先に進む前にコマンドとアサーションを自動的に待機することで非同期により無駄な時間を削減することができます。
四点目がスパイ、スタブ、およびクロックです。Cypressでは関数、サーバー応答、またはタイマーの動作を検証および 制御します。ユニットテストで気に入っているのと同じ機能がすぐに利用できます。
五点目がネットワークトラフィック制御です。Cypressではサーバーを使用せずに、エッジケースを簡単に 制御、スタブ、およびテストできます。 ネットワークトラフィックは好きなようにスタブできます。
六点目がテストにおいて一貫した結果をもたらす点です。CypressのアーキテクチャはSeleniumまたはWebDriverのような一般的なツールを利用せず、フレークのない高速で一貫性のある信頼性の高いテストを実行することが可能な点が大きな特徴と言えるでしょう。
七点目がスクリーンショットとビデオです。Cypressでは失敗時に自動的に撮影されたスクリーンショット、またはCLIから実行したときにテストスイート全体のビデオを表示します。
八点目がクロスブラウザーテストです。 クロスブラウザテストは、WebサイトがさまざまなWebブラウザで正しく表示されるかどうかを確認するソフトウェアテスト方法です。クロスブラウザテストは、自動ブラウザ互換性チェッカー、または単にブラウザ互換性チェッカーと呼ばれることもあります。 このタイプのテストの目的は、Chrome、Firefox、Safari、InternetExplorerを含むすべての主要なWebブラウザでWebサイトが正しく表示されることを確認することです。 クロスブラウザテストは、ブラウザの選択に関係なく、すべてのユーザーに対してWebサイトまたはWebアプリケーションが機能することを保証するため、Webプロジェクトにとって重要です。また、さまざまなブラウザやオペレーティングシステムで発生する可能性のある問題を回避するのにも役立ちます。 これにより、ユーザーがWebサイトにアクセスしようとしたときに問題が発生する可能性があります。 CypressではFirefoxおよびChromeファミリーブラウザー(EdgeおよびElectronを含む) 内で、継続的インテグレーションパイプラインでローカルかつ最適にテストを実行します。 以上が簡単ですがCypressの概要とさせていただきます。

Cypressの最新バージョンについて

Cypressの最新バージョンについて説明させていただきます。
Cypressでは様々なアップデートを実行してきました。 前回のアップデートにおいてはダッシュボードを使用したテストの検索とデバッグのエクスペリエンスを向上させるように設計された新機能のリリースが実施されました。前回のリリースでは、すべてのダッシュボードユーザーが、コミュニティから要求された新しい人気のある機能にアクセスできます。
また、前回のアップデートではダッシュボードの新機能としてGitHubとGitLabのエンタープライズ統合を実行しました。このリリースの概要の概要は以下の三点となります。
一点目がGitHubおよびGitLabEnterpriseソース管理との統合がサイプレスダッシュボードで利用することが可能となった点です。
二点目がビジネスおよびエンタープライズプランのお客様は、ダッシュボードの統合ページから統合を自己インストールするようになった点です。
三点目がこれらの統合は、人気のあるソース管理プラットフォームのオンプレミスインスタンスで直接テスト実行フィードバックを提供することができるようになった点です。

Cypressにおいてダッシュボード機能は重要な役割を果たします。 前回のアップデートではダッシュボードをオンプレミスのGitHubおよびGitLabEnterpriseソース管理に直接接続することができるようになりました。 サイプレスダッシュボードの新しい統合を実現することでさらに利便性が高まります。 これらの統合により、サイプレスのテスト結果が自動的に追跡および公開され、コードがGitHub EnterpriseおよびGitLabの自己管理型ソース管理にコミットされるたびに、開発者が好むソース管理ソリューション内でテスト結果が提供されます。 開発者は、GitHubEnterpriseおよびGitLabSelf-managedでテストの概要を表示でき、各テストに関する詳細なパフォーマンスとデバッグ情報についてダッシュボードに簡単に移動できます。 GitHubとGitLabのエンタープライズ統合がない場合、開発者は、どのコードコミットが失敗したか、テスト結果に合格したかを追跡および調整する必要があります。 これは、開発者が大量のコード変更を頻繁にプッシュする開発組織では特に困難です。その結果、問題のあるコードがCIパイプラインを通過し、ユーザー向けのアプリケーションにマージされる可能性が高くなります。 これらのダッシュボードのGitHubEnterpriseおよびGitLab自己管理ソース管理の新しい統合は、組織がソース管理で完全なテスト結果コンテキストを提供することを可能としました。これはCIパイプラインのリスクを軽減できることを意味します。 CIパイプラインは、コードの構築、テスト、およびデプロイのプロセスを自動化するために使用されるツール、スクリプト、およびプロセスのセットです。 CIパイプラインは、コードの変更が渡される一連の段階と考えることができます。最初の段階は「ビルド」と呼ばれることが多く、コードは実行可能形式にコンパイルされます。第2段階は「テスト」で、ソフトウェアの機能と品質がテストされます。 第3段階は「デプロイ」であり、顧客やその他の利害関係者が使用するために、コードが本番環境または別の環境にデプロイされます。 セルフサービス統合が完了すると、各サイプレステストの結果が、ソース管理での各コードコミットとともに表示されます。 テスト結果は、各プルリクエストまたはマージリクエストと一緒にソース管理にも表示されます。 ここから、開発者はソース管理からサイプレスダッシュボードの各テスト結果に関するより多くのコンテキストに直接簡単に移動することが可能となります。 サイプレスダッシュボードのGitHubとGitLabの新しい統合は、ビジネスプランとエンタープライズプランのユーザーが利用することが可能です。 これらのセルフサービス統合は、サイプレスダッシュボードの統合ページから見つけてインストールできます。 統合には数分しかかからず、インストールエクスペリエンスは、GitHubおよびGitLabクラウド製品とのサイプレスの既存の統合をすでに使用しているサイプレスダッシュボードユーザーにはなじみがあります。 無料プランまたはチームプランからのアップグレードについて詳しく知りたい現在のサイプレスダッシュボードのユーザーはカスタマーサクセスマネージャーに詳細を問い合わせるか、サイプレスダッシュボードから直接アップグレードする必要があります。

Cypress10について

Cypressの最新バージョンであるCypress10の特徴について説明させていただきます。
一点目はコーポネントテストです。 Cypress10では、コンポーネントテストのファーストクラスのサポートが含まれるようになりました。 これらは、2022年にコンポーネントテストのアルファリリースを開始しました。このリリースでは、コンポーネントテストランナーはエンドツーエンドのテストランナーとは別の実行可能ファイルでしたが、 Cypress10では、コンポーネントテストがメインアプリに直接統合され、Cypressの起動時に必要なテストエクスペリエンスを選択できるようになりました。コンポーネントテストを使用すると、エンドツーエンドのテストですでに知っているのと同じAPIを使用して、Webアプリケーションの開発時にフロントエンドコンポーネントのテストを開始できます。
また、コンポーネントのテストがフロントエンド開発者のワークフローの貴重な部分であると理解し、設計されバージョンアップされております。 これらのテストは通常​​ノードベースの環境で実行されるため、既存のツールとの接続が切断されてきました。 視覚的なフィードバックはなく、コンポーネントとの相互作用は現実的ではないケースも少なくありません。 Webで何かをテストする場合、テストは実際のユーザーと同じ方法でアプリケーションを表示および操作する必要があります。 そのため、Cypressのコンポーネントテストでは、テストは実際のブラウザでレンダリングされます。 これらのコンポーネントテストは、サイプレスE2Eテストと同じ基盤を中心に構築されています。多くの開発者がすでに利用しているエコシステムを利用することができます。 これらの利点の1つには、要素を選択し、それらと対話し、それらの動作をアサートするための同じ優れたCypressAPIが含まれます。 これにより、サイプレスE2Eテストの作成と同じスキルセットを使用でき、コンポーネントテストにジャンプするために必要な学習曲線を短縮できます。

Cypressの料金について

Cypressの料金について説明させていただきます。
Cypressは提供される機能や用途によりいくつかの料金プランに分類されており、一点目が無料のプランです。 無料のプランではユーザー3、試験結果500まで獲得することができます。 利用できる機能は基本的なものであり、並列化、負荷分散、実行の失敗を表示する、分析、統合、スラック、GitHub、GitLab、Bitbucket、コミュニティサポート、となります。
二点目がチームプランで75ドル/月のプランとなります。 こちらでは、ユーザー10、試験結果10000まで利用できます。 また、無料プランで利用することができる機能以外にもフレーク検出、不安定な実行の検出、フレークテスト分析、JIRA統合、メールサポートなどの機能を利用することができます。
三点目がビジネスプランであり300ドル/月のプランです。 ユーザー40、試験結果10000まで利用できます。 また、スマートオーケストレーション、失敗した仕様を最初に実行する、失敗時に実行をキャンセルする、 GitHub Enterprise、GitLab for Enterprise、SSO、メールサポートといった機能を利用することができます。
四点目がユーザー無制限、試験結果は変数となるプランです。 こちらのプランはエンタープライズ向けで料金は見積もりが必要となります。

各プランのテスト結果には制限が設定されております。 チームプランまたはビジネスプランを使用していて、テスト結果が10000を超える場合は、チームプランのテスト結果1000件あたり6ドル、またはテスト1000件あたり5ドルの費用で、その月の使用料を支払う形となります。 テスト結果としてカウントされるのは以下の内容です。 ダッシュボードは、個々の関数の各実行をテスト結果と見なします。ダッシュボードにフラグ付きで記録されたテスト結果のみがカウントされます。 開発中のローカル実行はカウントされません。スキップされたテスト、またはテストの実行を妨げるその他のものはカウントされません。 再試行するテストは、単一のテスト結果としてのみカウントされます。 テスト結果の総数は、CIでビルドを実行する頻度、および各CIビルドで実際に実行されるテストの数に基づいて変化します。 たとえば、1か月の間にCIで100のビルドを実行し、各ビルドで平均して50のテストを実行するとします。 各テストが実際に実行され、スキップされなかったとすると、ダッシュボードは約5,000のテスト結果を収集します。テストを複数回再試行しても、約5000のテスト結果しか得られません。 以上がCypressの料金に関する説明とさせていただきます。

Cypress Test Runnerについて

Cypress Test Runnerについて説明させていただきます。
Cypress Test Runnerは、ブラウザでテストを実行する、オープンソースのダウンロード可能なアプリケーションです。 これは無料で使用でき、MITライセンスの下で提供されており、クロスブラウザ互換性を備えた最新のテストとして様々な機能を提供します。 テストの設定では、最初の合格テストを書くことでインストールまたは構成するサーバー、ドライバー、またはその他の依存関係なく簡単にテストを実施します。 Cypress Test Runnerで書かれたテストは読みやすく、理解しやすいという特徴があります。 これらのAPIは、すでに使い慣れているツールに加えております。
Cypressは最初からプラットフォームに安定性と親しみやすさを提供するために、多くの最高のオープンソーステストライブラリに依存しています。
JavaScriptでテストしている場合は、リスト上で多くの参照することができるAPIを確認することができます。 Cypressはブラウザがコンテンツをレンダリングできるのと同じ速さで実行されます。アプリケーションを開発するときに、テストがリアルタイムで実行されるのを見ることができます。
また、読み取り可能なエラーメッセージは、すばやくデバッグするのに役立ちます。また、多くの開発者が知っていて使い慣れた多くの開発者ツールにアクセスして利用することが可能です。
以上が簡単ですがCypress Test Runnerの説明とさせていただきます。

まとめ

いかがでしたでしょうか?
Cypressについて詳しく解説させていただきましたので、参考にしていただけましたら幸いです。