で指定されたキーワードを使用します.



を指定したキーワードを使用するようにキュウリを使用して動けなくなる
多くの人々は、まだキュウリを使用することは、ソフトウェアが自然言語で振る舞うべき方法の仕様を書くので、非技術的な人々が自動化されたテストを書き始めるという解決策であると思います、そして、その仕様はシステムをテストするために実行されることができます.
しかし、このような自然言語が自動テストスクリプトとして機能するためには、そのような言語を解釈するコードが必要です.すなわち、自然言語層は高レベル抽象レベルであり、解釈するコードは「低レベル」である.
多くの場合、キュウリのディスカッショングループではキュウリのプラグインの統合、バグやキュウリが最初に使用されていない場合は完全に回避された可能性があります他の問題を使用して助けを求めて人々を参照してください.
それから、あなたは私に尋ねます、「しかし、私が与えられるキーワードを使用するとき、テストはとても読みやすいです/いつ/時」
そして、私はあなたに答えます:「何も、あなたをキュウリを使わずにこれらのキーワードを使い続けるのを妨げません.」
見てみましょう?
Web検索エンジンの例を想像してください.
BDD (振る舞い駆動開発)では、以下の要件があります.

ウェブ検索エンジン

As a world-wide web user

I want to search for subjects of my interest

To deepen my knowledge


Gherkinでは、以下のシナリオを考えることができました.
シナリオ1:用語を入力し、虫眼鏡をクリックして検索

Given I access the search engine page

When I type a term and click on the magnifying glass

Then I see a list of results about the term I was looking for


シナリオ2:用語を入力し、Enterキーを押して検索

Given I access the search engine page

When I type a term and press ENTER

Then I see a list of results about the term I was looking for


今、私はキュウリを使用せずにサイプレスを使ってこのようなシナリオをカバーした例を見てみましょう.
/* search.spec.js
 *
 * As a world-wide web user
 * I want to search for subjects of my interest
 * To deepen my knowledge
 */

describe('Web search engine', () => {
  context('Given I access the search engine page', () => {
    beforeEach(() => {
      cy.visit('https://duckduckgo.com')
    })

    context('When I type a term and click on the magnifying glass', () => {
      beforeEach(() => {
        cy.get('#search_form_input_homepage')
          .type('cypress')
        cy.get('#search_button_homepage')
          .click()
      })

      it('Then I see a list of results about the term I was looking for', () => {
        cy.get('.results .result')
          .should('have.length', 11)
      })
    })

    context('When I type a term and press ENTER', () => {
      beforeEach(() => {
        cy.get('#search_form_input_homepage')
          .type('cypress{enter}')
      })

      it('Then I see a list of results about the term I was looking for', () => {
        cy.get('.results .result')
          .should('have.length', 11)
      })
    })
  })
})
そしてこれはヘッドレスモードで実行した後のテストの結果です.
Web search engine
  Given I access the search engine page
    When I type a term and click on the magnifying glass
      ✓ Then I see a list of results about the term I was looking for (4173ms)
    When I type a term and press ENTER
      ✓ Then I see a list of results about the term I was looking for (1973ms)
言い換えれば、私はまだキーワード/キーワードを持っている/ときに、私のテストはまだ読みやすく、私はキュウリとキュウリを統合する1分を無駄にしていない.とても簡単!

ところで、最近、私は"Writing Cypress Tests Without Cucumber,"について話しました.そこでは、キーワードの使用法を超えていました.//時には、事前に定義されたデータのリストに基づいて同じテストを実行する方法と、キュウリなしですべてのタグを使ってテストを実行する方法も示しました.Check it out on YouTube .
好奇心とCypressで自動化のテストについてもっと知りたいですか?Udemyで私のオンラインコースをチェックしてください.
👋 次回までとハッピーテスト!
このポストは、もともとTalking About Testingブログでポルトガル語で出版されました.