2016-07-13 21 views
0

Ich möchte einige Daten in Chrono Download Manager von Google Chrome durch codierte UI-Skript zu füllen.So automatisieren Sie die Chrome-Erweiterung mit der codierten Benutzeroberfläche?

Ich bin in der Lage, die Schaltfläche in der Symbolleiste zu finden, um die Erweiterung zu öffnen, aber keine Steuerelemente für diese Erweiterung zu erhalten.

Bitte schlagen Sie vor, wie ich auf alle Steuerelemente der Erweiterung zugreifen kann.

enter image description here

Einige der SAMPE-Code ist unter:

public void FileChromaManagerDownload() 
     { 

      // this.UIMap.RecordedMethod4(); 
      // BrowserWindow.CurrentBrowser = "chrome"; 
      WinWindow window = new WinWindow(); 

      window.SearchProperties[WinWindow.PropertyNames.Name] = "Google - Google Chrome"; 
      window.SearchProperties[WinWindow.PropertyNames.ClassName] = "Chrome_WidgetWin_1"; 
      window.WindowTitles.Add("Google - Google Chrome");//This window name may be different as per the website or tab 
      // window.DrawHighlight(); 
      // WinControl uIItemImage = this.UINewTabGoogleChromeWindow.UIChronoDownloadManageButton.UIItemImage; 


      WinControl dnBtn = new WinControl(window); 
      // Chrono Download Manager 
      // window.SearchProperties.Add(BrowserWindow.PropertyNames.FriendlyName, "Chrono Download Manager"); 


      dnBtn.SearchProperties.Add(WinButton.PropertyNames.ControlType, "Button"); 
      dnBtn.SearchProperties.Add(WinButton.PropertyNames.Name, "Chrono Download Manager");//Chrono Download Manager //Download all resources on this page 
      // dnBtn.DrawHighlight(); 

      WinControl mUIItemImage = new WinControl(dnBtn); 
      mUIItemImage.SearchProperties[UITestControl.PropertyNames.ControlType] = "Image"; 

      // mUIItemImage.DrawHighlight(); 
      Playback.Wait(1000); 
      Mouse.Click(mUIItemImage); 

      window = new WinWindow(); 



      window.SearchProperties[WinWindow.PropertyNames.Name] = "Chrome Legacy Window"; 
      window.SearchProperties[WinWindow.PropertyNames.ClassName] = "Chrome_RenderWidgetHostHWND"; 
      window.SearchProperties[WinWindow.PropertyNames.ControlType] = "Client"; 
      window.DrawHighlight(); 
      window.SetFocus(); 
      //TODO - Now I am not able to fetch any controls of popup windows 
     } 
+0

Was zeigt das Assertion Generierungswerkzeug von Coded UI für diese Steuerelemente? Können Sie einige Vorgänge (mit Internet Explorer) mit Coded UI aufzeichnen und den Code in einem Sandbox-Projekt generieren und dann die nützlichen Teile in die Tests für Chrome kopieren? – AdrianHHH

+0

@AdrianHHH, ich habe versucht, mit Coded UI aufzunehmen, aber es erkennt keine Steuerelemente. Die Erweiterung, die ich automatisieren möchte, ist mit IE nicht verfügbar. –

+0

Was bedeutet * "nicht verfügbar mit IE" *? Funktioniert das Steuerelement überhaupt nicht, wenn es mit IE verwendet wird? Ist das Steuerelement so geschrieben, dass es nur mit Chrome funktioniert? Sollten Sie den Eigentümern der Website mitteilen, dass Sie einen geschäftskritischen Fehler gefunden haben: Die Website wird nicht für Kunden funktionieren, die IE verwenden? – AdrianHHH

Antwort

0

Coded UI nicht Chrome direkt unterstützt. Sie müssen eine Selen-DLL in Ihrem Projekt verwenden und die Objekte im IE erfassen und dann in Chrome ausführen.

+0

Diese Erweiterung ist nicht in Chrom verfügbar. –