2017-12-22 16 views
0

フィーチャの例に従って、1つずつ2つのテストを実行します。 動作しますが、2番目のテストが完了したらブラウザを閉じる方法がわかりません。Specflow - すべてのテストが完了したらブラウザを閉じます

AfterFeatureフックを試しましたが、動作しませんでした。私はちょうどログインして立ち往生しています私は、ブラウザを閉じたいこの瞬間にここ

コード

public class LoginSteps 
    { 
     [BeforeScenario("LoginProperly")] 
     public static void BeforeScenario() 
     { 
      Browser.Initialize(); 
     } 

     [AfterScenario("LoginProperly")] 
     public static void AfterScenario() 
     { 

      Browser.ClearCache(); 
     } 

     [AfterFeature("LoginProperly")] 
     public static void AfterFeature() 
     { 
      Browser.Quit(); 

     } 


     [Given(@"I navigate to login page")] 
     public void GivenINavigateToLoginPage() 
     { 
      Browser.Wait(); 
      Pages.Navigation.GoToSignIn(); 

     } 

     [Given(@"I have completed the form with '(.*)' and '(.*)'")] 
     public void GivenIHaveCompletedTheFormWithAnd(string email, string password) 
     { 
      Pages.Login.LogIn(email, password); 
     } 

     [When(@"I press Submit")] 
     public void WhenIPressSubmit() 
     { 
      Pages.Login.ClickLogin(); 
     } 

     [Then(@"I should see my account panel")] 
     public void ThenIShouldSeeMyAccountPanel() 
     { 
      Pages.Account.IsAt(); 
     } 
    } 
} 

機能ファイルです

特集:私のアカウントを使用するためには ログインします
アプリケーションユーザーとして
ログインしてログアウトできるようにしたい

@LoginProperly 
Scenario Outline: Login with correct Email adress and Password 
    Given I navigate to login page 
    And I have completed the form with '<email>' and '<password>' 
    When I press Submit 
    Then I should see my account panel 

    Examples: 

    |  email   | password | 
    | [email protected] | 11111 | 
    | [email protected] | 22222 | 

答えて

-2

ブラウザプロセスを取得してから終了します。テストケースの終了メソッドにこのコードを追加します。

Process.GetProcessesByName("your browser name", "your pc name").First().Kill(); 
+2

Selenium webdriverには、ブラウザを閉じる機能があります。 OPはそれを機能させるために外から殺すプロセスに頼る必要はありません。 – Fran

1

あなたは、私はいつも私がIWebDriverに終了し呼び出した後処分呼び出す[AfterTestRun]

[AfterTestRun] 
    public static void AfterWebFeature() 
    { 
     Browser.Quit(); 
     Brrowser.Dispose(); 
    } 

を試してみました。

関連する問題