2013-07-09 42 views
0

這是一個測試程序。我只用一個按鈕創建了一個簡單的Windows應用程序窗體,如果單擊該按鈕,我需要它做一些事情。所以,我寫我的代碼爲:c#在瀏覽網頁時顯示錯誤

IWebDriver driver; 

    public Form1() 
    { 
     InitializeComponent(); 
    } 

    public void SetupTest() 
    {    
     driver = new FirefoxDriver(); 
    }  
      private void button1_Click(object sender, EventArgs e) 
    { 
     driver.Navigate().GoToUrl("webaddress"); 
     driver.FindElement(By.TagName("Atlast")).Click(); 
     Thread.Sleep(5000); 
    } 

我已經包括了所有的依賴(代碼和參考資料),但我收到以下錯誤,當我按一下按鈕:

Object reference not set to an instance of an object. in driver.navigate part of my code.. 

什麼我在這裏犯了什麼錯誤?任何人都可以請幫我解決這個問題嗎?

+0

請向我們展示您的代碼發生異常的位置。不是驅動程序代碼,buttonClick代碼。這個異常意味着你在給它賦值之前試圖使用一個變量 –

+0

那麼調試它 - 是'driver' null?你使用了什麼其他代碼?你在哪裏創建你的'WebDriver'的實例? – Arran

+0

@RussellUhl; @Arran: 請參閱我的編輯問題。 – Vysakh

回答

1
private void button1_Click(object sender, EventArgs e) 
{ 
    SetupTest() 
    driver.Navigate().GoToUrl("webaddress"); 
    driver.FindElement(By.TagName("Atlast")).Click(); 
    Thread.Sleep(5000); 
} 

您需要在按鈕點擊代碼中調用SetupTest。爲什麼?這是您創建IWebDriver的新實例的位置,因此需要調用它,否則對driver的任何引用將簡單地引用null(默認情況下)。

+0

謝謝...它的工作... – Vysakh