specflowspecflowを使い始める


備考

このセクションでは、specflowの概要と、開発者がなぜそれを使いたいのかを概説します。

また、specflow内の大きなテーマについても言及し、関連するトピックにリンクする必要があります。 specflowのドキュメントは新しくなっているので、それらの関連トピックの初期バージョンを作成する必要があります。

Specflowを使ったシンプルなGoogle検索

これは、Googleで検索するための簡単な例です。それは2つの部分を含み、

  1. 機能ファイル
  2. ステップ定義ファイル

コード自体は自明であるため、ここでは詳しく説明しません。

機能ファイル

Feature:Google  Key word search

@mytag

Scenario: search Spec Flow in Google search bar
Given I have entered the Google Home page
And I have entered spec flow into google search bar
When I press search button
Then the result should be a new pages with results for spec flow
 

ステップ定義ファイル

using OpenQA.Selenium;
using OpenQA.Selenium.Firefox;
using System;
using TechTalk.SpecFlow;
using static NUnit.Core.NUnitFramework;

namespace GoogleSearch.GoogleSearch
{
    [Binding]
    public class GoogleKeyWordSearchSteps
    {
          IWebDriver driver = new FirefoxDriver();
        [Given(@"I have entered the Google Home page")]
        public void GivenIHaveEnteredTheGoogleHomePage()
        {
            driver.Navigate().GoToUrl("https://www.google.co.nz");
        }
        
        [Given(@"I have entered spec flow into google search bar")]
        public void GivenIHaveEnteredSpecFlowIntoGoogleSearchBar()
        {
        driver.FindElement(By.XPath("/html/body/div/div[3]/form/div[2]/div[2]/div[1]/div[1]/div[3]/div/div[3]/div/input[1]")).SendKeys("Spec Flow");
        }
        
        [When(@"I press search button")]
        public void WhenIPressSearchButton()
        {
        driver.FindElement(By.XPath("/html/body/div/div[3]/form/div[2]/div[3]/center/input[1]")).Click();
        }
        
        [Then(@"the result should be a new pages with results for spec flow")]
        public void ThenTheResultShouldBeANewPagesWithResultsForSpecFlow()
        {
            //  Assert.AreEqual("Google", driver.Title);
        }
    }
}
 

Specflowのセットアップ

前提条件:

Visual Studio IDEをダウンロードする

  1. 新しいプロジェクトを作成する

  2. specflow Visual Studioとの統合、NunitアダプタとNunitフレームワークのインストール

ここに画像の説明を入力

  1. Visual Studioのspecflowをダウンロードする

ここに画像の説明を入力