2016-06-01 4 views
1

私は多肢選択テストを提供するWebを作っていますが、私はそれを人間の方法でテストするのは面倒です。 Webブラウザで質問のラジオボタン(またはB、C、D)をすべて確認するのに役立つシンプルなC#.Net winformプログラムを作成したいと思います。私はwinformアプリケーションがそれを行うことができるのだろうかと思います。読書のためのサードパーティ製のプログラムでラジオボタンを自動的にチェックする方法

感謝:)私が理解から

答えて

1

は、あなたの主な目標は、C#のWinFormsのアプリケーションを作成するために、単にあなたのWebフォームをテストすることはありません。したがって、専用のC#アプリケーションを作成してWebサイトをテストするのではなく、専用のWebテストソリューションを検討することをお勧めします。 ここに非常に似質問がすでにあります: How apply Unit tests in ASP.NET webforms

あなたがそれを好きではない場合は、別のオプションは、FireFox iMacros extensionためのテストスクリプトを生成することであろう。構文はかなりシンプルです。

一般的に言えば、Webフォームをテストするための既存のソリューションのトピックを調べる必要があります。その目的のために専用ソリューションを作成することはお勧めできません。


EDIT:

[OK]を、あなたのコメントから、私はあなたがそれゆえ、私は私の答えを是正よ、リサイズでこのソリューションを持っていることが重要だと見ます。 は、リサイズでこれを行うには、次の手順を実行するには、次の

  1. WebBrowserクラスを使用してください - あなたのWinフォームに関連するWebBrowserコントロールを追加します。
  2. ボタンを追加すると、「btnTest」と呼ぶことができます。
  3. エディターでこのボタンをダブルクリックすると、btnTest_Click(...)メソッドスタブが作成されます。
  4. コードでは、希望するブラウザのアドレス文字列をstring address = @"D:\path\to\my\file.html"に設定するか、必要に応じてhttp://アドレスを使用します。そのように、WebBrowser.Navigate方法を使用して、このアドレスへ
  5. 移動:webBrowser.Navigate(new Uri(address));

このことはできInitializeComponent();またはどこ他にしたい後Form1のコンストラクタ内のすべての実行(おそらくアドレステキストボックスと組み合わせて別のボタンに?)。 テストボタンのコードです。テストを実行するには、WebBrowser.Document's methodsを使用してHtmlElementを取得し、それらに対してアクションを実行します。詳細については、付属のマニュアルのリンクを参照してください。

いくつかの例:

HtmlElement checkboxGenderFemale = webBrowser.Document.GetElementById("female"); 
checkboxGenderFemale.InvokeMember("CLICK"); 

これはクリックをシミュレートし、与えられたチェックボックスをチェックします。すべての要素にIDを割り当てることを忘れないでください。あなたが見ることができるように、あなたはクリックをシミュレートし、簡単に要素の属性を変更することができます

HtmlElement nameInput = webBrowser.Document.GetElementById("firstname"); 
nameInput.SetAttribute("value", "NewName"); 

:テキスト入力を記入するには、このコードスニペットを使用することができます。これらのコード例をbtnTest_Click(...)メソッドに配置し、その動作を確認できます。 Form1のコンストラクターでナビゲーションを行った場合は、既に読み込まれたページでフォームが開きます。 btnTestをクリックすると、該当するテストが実行されます。

+0

実際には、私はこのC#winformを書くことに本当に興味があります。私はちょうどもっと学びたいと思っています。自分のソフトウェアを書いて使用するのは私の趣味の1つなのでダウンロードしたくありません:) plz – 123iamking

+1

そうですか。 WinFormsがこの質問の主な焦点だったとは思っていませんでした。正直なところ、Webテストだと思いました。関連情報とともに私の投稿を更新しました。希望が役立ちます。 – pKami

+0

あなたの助けていただきありがとうございますが、webBrowser.Navigate(new Uri(address))を使用してもwebBrowser.Documentがnullであるという問題があります。しかし、私が望むのは、現在のFirefoxブラウザのタブでそれをクリックすることです。ブラウザ上にはっきりとわかります。 – 123iamking

関連する問題