2016-12-08 9 views
1

すべてのテストで呼び出すことができる変数webdriverを作成したいと思います。 私は現在、表示のために次の例を持っています。C#、セレンのwebdriver

ここで私は、私が使用したい私のwebdriverを定義:

using OpenQA.Selenium; 
using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
using System.Threading.Tasks; 
using NUnit.Framework; 
using OpenQA.Selenium.Chrome; 
using OpenQA.Selenium.PhantomJS; 

namespace WebAuto 
{ 
    public class OpenBrowser 
    { 
     private static IWebDriver driver = new ChromeDriver(); 

     public IWebDriver getDriver() 
     { 
      return driver; 
     } 
    } 
} 

今私は、ログインと呼ばれる別のテストでは、このwebdriverをを呼びたい:

using OpenQA.Selenium; 
using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
using System.Threading.Tasks; 
using NUnit.Framework; 
using OpenQA.Selenium.Chrome; 
using OpenQA.Selenium.PhantomJS; 


namespace WebAuto 
{ 
    public class Login 
    { 
     public static void Login1() 
    { 
      //var driver = new ChromeDriver(); 
      OpenBrowser.IWebDriver. getDriver(); 
      driver.Navigate().GoToUrl("www.anywebsite.com"); 
      //driver.Navigate().GoToUrl("www.anywebsite.com"); 
      //driver.WaitForPageToLoad(); 
      var inputtext1 = driver.FindElement(By.Id("lgLogin_txtUserId")); 
      //inputtext1.Focus(); 
      inputtext1.SendKeys("User"); 
      var inputpassword1 = driver.FindElement(By.Id("lgLogin_txtPassword")); 
      //inputpassword1.Focus(); 
      inputpassword1.SendKeys("Password"); 
      var inputbutton1 = driver.FindElement(By.Id("btnLoginClient")); 
      inputbutton1.Click(); 
      //driver.WaitForPageToLoad(); 

     } 

    } 
} 

誰かが私が行方不明ですか説明してもらえますか? ???

+0

ねえ、@hthomasです。あなたが私たちに見ているエラーメッセージを共有することができますか?プログラムはコンパイルされますか?あるいはそれは実行されますが、間違ったことをしますか? – allonhadaya

答えて

2

driverLoginからクラスを呼び出す方法は

OpenBrowser openBrowser = new OpenBrowser(); 
IWebDriver driver = openBrowser.getDriver(); 
+0

これは正しいですが、彼はたぶん 'OpenBrowser'クラスを' static'にするべきでしょう。 – JeffC

+0

ありがとう、Guy、うまくいく – hthomas

関連する問題