2016-08-03 30 views
0

Ich versuche, die Low-Level-Protokollierung (meine eigene HTML-Datei) wie Klicken und Eingeben von Text in die Elemente zu schreiben.Event Listeners in Codedui wie Selen

Gibt es eine Möglichkeit, diese Details nach/vor dem Klicken auf das Element wie in Selen Event Listeners zu erhalten.

+0

Was bekommen Sie von Selen, das Sie von CodedUI möchten? Kannst du ein Beispiel schreiben, was du in Selen machen kannst? – MPavlak

+0

@MPavlak Ich erzeuge mein eigenes Protokoll mit Selen Event Listeners nach jedem Klick oder Eingabe von Text. Ich möchte das Gleiche mit CodedUI tun. –

+0

Mir ist nichts dergleichen bekannt. Sie können jedoch eine Abstraktion über Ihren Code schreiben, in die Sie die Protokollierung einfügen können. http://michaelpavlakcoding.blogspot.com/2016/06/decomposing-page-objects.html Dieser Ansatz würde jedoch Inline-Protokollierung erfordern. – MPavlak

Antwort

0

Es gibt 2 Möglichkeiten, die ich vorschlagen würde.

(I) CodedUI Bietet Ihnen QT.Agent32 zur Erstellung von Protokollen Ihrer Ausführung. Befolgen Sie die folgenden Schritte, um es zu verwenden.

1) Öffnen Sie die Datei QTAgent32_40.exe.config. Diese Datei befindet sich standardmäßig in: \ Programme (x86) \ Microsoft Visual Studio 12.0 \ Common7 \ IDE.
2) Ändern Sie den Wert für EqtTraceLevel auf die gewünschte Protokollebene (von Ebene 1 bis 4)
3) Speichern Sie die Datei.
4) Öffnen Sie AppConfig File in codedUI Project und fügen Sie diesen Code unter dem config-Knoten ein.

<system.diagnostics> 
<switches> 
<add name="EqtTraceLevel" value="4"/> 
</switches> 
</system.diagnostics> 

5) und in Testmethod diese Methode ermöglichen, wie unten,

LoggerOverrideState = HtmlLoggerState.AllActionSnapshot; 

(II) erstellen Customized mit dem Datei-IO

1) Schreiben Sie die Eingabe in der ein Verfahren zu schreiben neu erstellte Datei (.txt oder .excel oder was auch immer). Nehmen wir an, die Methode ist Runlog (string input) {} in einer Klasse mit dem Namen Report.cs
2) Lassen Sie die Eingabe, was auch immer Sie beabsichtigen zu geben. Beispiel: Klicken Sie auf die Schaltfläche Senden, Benutzername eingegeben.
3) Rufen Sie diese Methode mit relevanten Eingaben auf und geben Sie an, welche Aktion ausgeführt wurde. Beispiel: Report.Runlog ("Clicked Submit Button");
4) Rufen Sie dies nach jeder Aktion auf. Ich weiß, es ist ein bisschen langweilig, dies nach jeder Aktion zu nennen. aber es ist nützlich, wenn Sie ein keywordgesteuertes Framework verwenden.
Hoffe, es gibt Ihnen eine Idee. Viel Glück!!