Die Tabs in Chrome können nicht mehr geöffnet und geschlossen werden

8

Das Problem:

Vor einigen Monaten haben wir einen Test für eine Funktion mit mehreren Tabs hinzugefügt, bei dem die Tabs mit CTRL/COMMAND + t geöffnet und mit den Tastenkombinationen CTRL/COMMAND + v geschlossen werden.

Relevante Hilfsfunktionen:

%Vor%

Kürzlich hat es mit einem Fehler Expected 1 to be greater than 1 fehlgeschlagen, was bedeutet, dass ein neuer Tab nicht geöffnet wurde. Und ich habe bestätigt, dass beide Tastenkombinationen nicht mehr funktionieren.

Warum hat das Öffnen und Schließen von Tabs mit Shortcuts aufgehört?

Mit dem aktuellsten Protractor 2.1.0 und ChromeDriver 2.15 (auch mit den neuesten 2.16 versucht, kein Glück).

Gedanken und weitere Informationen:

  1. Zuerst dachte ich, es handelt sich um ein Chrome 44-Problem:

    Aber mit BrowserStack habe ich das Problem auch bei älteren Chrome-Versionen reproduziert.

  2. Es funktioniert in Firefox wie ein Uhrwerk.

  3. Ich kann tatsächlich den Akkord sehen, der an das body -Element in den Protokollen BrowserStack gesendet wurde, aber im Browser passiert nichts.
  4. Ich kann tatsächlich den gleichen Code unter Windows verwenden. So ist es wahrscheinlich Mac OS spezifisch.
  5. Ich habe versucht, die Art zu ändern, wie die Schlüssel gesendet werden. Hier sind einige meiner Versuche:

    %Vor%
  6. Auch auf den Beta-Kanal umgeschaltet und das gleiche Problem auf Chrome 46 reproduziert.

  7. Als Workaround kann ich zum Öffnen eines Tabs CTRL/COMMAND + SHIFT + click auf jedem Link innerhalb der Anwendung ausführen:

    %Vor%

    Das Problem hier ist, dass ich die Registerkarte immer noch nicht schließen kann, da CTRL/COMMAND + w nicht funktioniert.

  8. Es ist nicht nur ein Winkelmesser. Hier ist ein Ausschnitt aus Python-Code, der google.com öffnet, "testing" in das Suchfeld einfügt und COMMAND + A an das Eingabefeld sendet. In Firefox verhält es sich wie erwartet - wählt den Text im Eingabefeld aus, aber das funktioniert nicht in Chrome (Python 2.7, Selen 2.47.1, Chrome 46, Chromedriver 2.17):

    %Vor%
alecxe 31.07.2015, 16:48
quelle

2 Antworten

0

Ich denke, ich bin viel näher dran zu verstehen, was vor sich geht.

Zunächst scheint es betriebssystemspezifisch zu sein. Meine eigenen Tests mit BrowserStack und Madhan's Tests mit Sauce Labs haben gezeigt, dass Tastaturkürzel mit CONTROL in Chrome 44 unter Windows funktionieren.

Hier finden Sie ein Zitat aus dem relevanten damit verbundenen offenen Chrom-Fehler :

>
  

Dieser Fehler ist besonders auf dem Mac bemerkbar , weil viele spezielle   Die Schlüsselbehandlung erfolgt in der Renderansicht Hostansicht mac, die oben angezeigt wird   wo wir das Ereignis simulieren.

     

Dies führt zu einigen Dingen wie Strg + w schließt das Fenster nicht (auf   Windows), Befehl + a wählt alle auf dem Mac, usw. Das ist bedauerlich   aber kann größtenteils herum gearbeitet werden.

    
alecxe 07.08.2015, 19:28
quelle
3

Ich habe mit sauclabs von chromeVersion 38 bis 44

getestet

Und es funktionierte nur auf 44.v44.0.2403.125 um genau zu sein auf Saucen [Getestet auf lokale [44.0.2403.130 m] als auch]

Und ich habe ChromeDriver 2.17 und SeleniumWebDriver 2.47.1

verwendet

Ich habe es in Java only.Hope versucht, es ist das gleiche für Javascript

%Vor%     
Madhan 05.08.2015 20:35
quelle