Cypress の E2E Test を導入した話
こんにちは、 @kz_morita です。
Cypress を使って現在開発しているプロジェクトに,E2E Test を導入してみたらなかなか良かったので,Cypressの特徴などについてまとめていきます.
Cypress とは https://www.cypress.io/ Cypress は JavaScript の E2E テストのフレームワークです.
環境の構築がとても簡単で,テストもシンプルにかけるのが特徴的です.
たとえばインストールはこれだけです.
$ npm install cypress テストも以下のように比較的にシンプルに書くことが出来ます.
describe('Login Test', () => { it('Login', () => { // user データ を取得 cy.fixture('users').then((users) => { // localhost:3000 にアクセス cy.visit('http://localhost:3000') // ヘッダー内のログインボタンをクリック cy.get('header').contains('ログイン').click() // メールアドレスのフォームに,テストデータの メールアドレスを入力 cy.get('#email').type(users.email) // パスワードフォームに,テストデータのパスワードを入力 cy.get('#password').type(users.password) // ログインボタンをクリック cy.get('button[type="submit"]').click() // ヘッダーからログインボタンが消えていることを確認する cy.get('header').should('not.contain', 'ログイン') }) } Test Runner と Dashboard Cypress には Test Runner と Dashboard があります.