Von dem, was ich verstehe, Ihr Hauptziel ist es kein C# WinForms-Anwendung zu schreiben, sondern einfach Ihre Web-Formular zu testen. Anstatt also Zeit zu investieren, um eine dedizierte C# -Anwendung zum Testen Ihrer Website zu erstellen, schlage ich vor, dass Sie sich dedizierten Web-Testlösungen zuwenden. Es gibt eine sehr similiar Frage hier schon: How apply Unit tests in ASP.NET webforms
Wenn Sie das nicht mögen, dann wäre eine weitere Option, um Test-Scripts für die FireFox iMacros extension zu erzeugen. Die Syntax ist ziemlich einfach.
Im Allgemeinen sollten Sie das Thema der bestehenden Lösungen zum Testen von Webformularen untersuchen. Es ist nicht ratsam, eine dedizierte Lösung einfach für diesen Zweck zu erstellen.
EDIT:
Ok, von Ihrem Kommentar, den ich sehe, dass es wichtig ist für Sie diese Lösung in WinForms haben, deshalb werde ich meine Antwort korrigieren. dies in WinForms zu tun, führen Sie die folgenden Schritte aus:
- Verwenden Sie die WebBrowser Klasse - die entsprechende WebBrowser-Steuerelement zu Ihrem winform hinzuzufügen.
- Fügen Sie eine Schaltfläche hinzu, Sie können es "btnTest" nennen.
- Doppelklicken Sie im Editor auf diese Schaltfläche, damit ein btnTest_Click (...) -Methodenstub erstellt wird.
- In Code, stellen Sie die gewünschte Browser-Adressleiste wie folgt ein:
string address = @"D:\path\to\my\file.html"
oder verwenden Sie stattdessen eine http: // -Adresse, wenn Sie das möchten.
- Navigieren Sie zu dieser Adresse die WebBrowser.Navigate Methode verwendet, etwa so:
webBrowser.Navigate(new Uri(address));
Dies kann alle laufen in Konstruktor Form1 nach InitializeComponent();
oder wo auch immer Sie (auf eine andere Taste mit einer Adresse Textbox kombiniert vielleicht?). Jetzt für Ihre Test-Taste Code. Um Tests durchzuführen, können Sie WebBrowser.Document's methods verwenden, um HtmlElement s zu erhalten und Aktionen für sie auszuführen. Weitere Informationen finden Sie in den bereitgestellten Dokumentationslinks.
Einige Beispiele:
HtmlElement checkboxGenderFemale = webBrowser.Document.GetElementById("female");
checkboxGenderFemale.InvokeMember("CLICK");
Dies wird einen Klick simulieren und die gegebene Checkbox. Denken Sie daran, allen Ihren Elementen IDs zuzuweisen. Zum Ausfüllen einer Texteingabe, können Sie diesen Code-Schnipsel verwenden:
HtmlElement nameInput = webBrowser.Document.GetElementById("firstname");
nameInput.SetAttribute("value", "NewName");
Wie Sie sehen können, können Sie Klicks simulieren und ändern Attribute von Elementen mit Leichtigkeit. Sie können diese Codebeispiele in Ihre btnTest_Click(...)
-Methode einfügen und sehen, wie es funktioniert. Wenn Sie die Navigation im Konstruktor von Form1 ausgeführt haben, sollte das Formular mit der bereits geladenen Seite geöffnet werden. Nachdem auf btnTest geklickt wurde, wird der entsprechende Test durchgeführt.
Eigentlich bin ich wirklich daran interessiert, dieses C# winform schreiben, ich mag es nur schreiben, um mehr zu lernen, ich möchte nicht herunterladen, weil schreiben und meine eigene Software verwenden ist eines meiner Hobbys :) Hilf mir, plz – 123iamking
Aha. Ich denke nicht, dass WinForms der Hauptfokus dieser Frage war, um ehrlich zu sein, dachte es war Webtests. Aktualisiert meinen Beitrag mit relevanten Informationen. Ich hoffe, das hilft. – pKami
Vielen Dank für Ihre Hilfe, aber ich habe ein Problem, dass WebBrowser.Document ist Null, auch nachdem ich WebBrowser.Navigate (neue Uri (Adresse)); , aber was ich möchte, ist, dass ich auf die Registerkarte meines aktuellen Firefox-Browsers klicke, damit ich sehen kann, dass es eindeutig im Browser ist. – 123iamking