2012-05-02 21 views
2

Visual Studio 2010で警告メッセージが表示されます。「フィールドは割り当てられません」。 実行時にフィールドを割り当てたWebdriver PageFactoryを使用しますが、どうすればこのメッセージを抑制できますか?ここ Webdriver PageFactoryを使用して、フィールドに警告が割り当てられない

はコードのサンプルです:

public class VideoInfo 
    { 
     [FindsBy(How = How.ClassName, Using = "detailsTitle")] 
     private IWebElement _videoInfoDetailsTitle; //Here is got the warning message 

     public VideoInfo(IWebDriver webDriver) 
     { 
      PageFactory.InitElements(webDriver, this); //Assigen the field 
     } 
    } 
+0

あなたの現在のセットアップで "それを修正する" ことはできません。ただし、必要に応じて警告を抑制することができます。 – Styxxy

+0

あなたは正しいです、私は私の投稿を編集:) 10x。 – Kaldi

答えて

1

コンパイラが検出できないことが起こっているいくつかのブードゥー教がありますので、警告を無視することができます。しかし、それが明示的にフィールドを初期化するために、おそらく良いでしょう:

[FindsBy(How = How.ClassName, Using = "detailsTitle")] 
private IWebElement _videoInfoDetailsTitle = null; 
+0

これをusingステートメントの下に追加します **#pragma warning disable 649 ** –

0

シンプル、他の方法は、あなただけのプロパティを使用して、この警告を取り除くために「公共」

[FindsBy(How = How.ClassName, Using = "detailsTitle")] 
public IWebElement _videoInfoDetailsTitle; 
+0

これは警告を取り除きますが、IWebElementをテストスクリプトにも公開します。 'protected'も同様に警告を取り除きますが、実際にはあなたが望むものではないかもしれません。 – mrfreester

0

へのアクセス指定子を変更することができますですフィールドの代わりに警告はフィールドのみであり、プロパティに対応する警告はありません。理由はわかりませんが、これが私の問題を解決しました。

[FindsBy(方法= How.ClassName、= "detailsTitle" を使用)] 公共IWebElement _videoInfoDetailsTitle {を取得または設定します;}

関連する問題