Chrome Dev Tools-API - & Selenium WebDriver
Ich bin das Experimentieren mit Selenium Web Driver für die Automatisierung von mein-browser-integration-tests. Ich sehe, dass Chrome Dev Tools kommt mit einem Konsolen-API für die Berufung auf bestimmte dev-tool-Funktionen aus JavaScript drin.
Idealerweise von innen meine Java/JUnit-integration-test, ich konnte beginnen, den Chrome-Dev-Tool-memory profiler (und vielleicht einige andere tools), meine WebDriver tests (instanziieren Sie ein Chrome browser-Instanz, die Manipulation von DOM-Elementen, etc.), und dann halt die profiler, überprüfen Sie dann die profiler-Ergebnisse, um zu sehen, ob es irgendwelche memory-leaks.
Ist dieses Konzept auch machbar oder ich bin Weg zum Mittagessen? Warum/warum nicht?
Scheint es, wie die API bereits eine console.profile()
starten Sie eine profilingsitzung und ein console.profileEnd()
. So in der Theorie hätte ich WebDriver aufrufen, diese beiden Methoden und die tests ausführen, die in zwischen Ihnen.
Ich denke, das fehlende Glied wird dann programmgesteuert die Interaktion mit dem Ergebnisse des profiling session...
- Gibt es Fortschritte auf diesem? Ich bin daran interessiert, dies zu tun, wie gut.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie tatsächlich verwenden Sie die debugger-Protokoll wie bereits von @loislo oben finden Sie vielleicht nützlicher link https://developer.chrome.com/devtools/docs/debugger-protocol
Fügen Sie einfach die flag beim öffnen von Chrome-und remote-Debuggen! 🙂
Chrome DevTools hat zwei Teile, front-end-Benutzeroberfläche und back-end in den nativen code des Renderers. Diese Teile der Arbeit miteinander über Protokoll. Das Protokoll ist beschrieben in der protocol.js Datei
Chrome kann die Arbeit in remote-debugging-Modus, wenn es aussetzt, tcp-socket, der verwendet werden kann für die Interaktion mit den backend-Teil DevTools. Diese Funktion wird aktiv genutzt, im Chrome-browser Telemetrie-toolset
Dieses toolset wurde in python geschrieben und wir halten Sie in sync mit der aktuellen version des Protokolls. Das toolset hat sich den code für arbeiten mit heap-profiler-Teil und anderen teilen der DevTools.