2017-01-09 5 views
1

Ich bin neu im gesamten Konzept der Erfassung von JS-Abdeckung. Die Art, wie ich das JS-Coverage-Tool verwenden möchte, besteht darin, zu überprüfen, wie viele Zeilen meines JS-Codes von meinen Tests in einem Browser betroffen sind, um so meine Testabdeckung zu improvisieren. Kann jemand mich zu einem Beispiel/Werkzeug führen, wie man JS Deckung für den Test, der mit selen webdriver läuft, erfasst.JS-Codeabdeckung mit Selentests

Antwort

0

Sie können versuchen JSCover in manual können Sie finden, wie Sie es mit Selen integrieren.

+0

Ich habe versucht JSCover bekommen und beobachtet wenige Scharnierseite: 1. JSCover-Proxy unterstützt derzeit nur HTTP, nicht HTTPS 2. Mit HTTP sammelt es nicht die Coverage-Daten meiner Anwendung 3. Nicht sicher, ob das Repository in letzter Zeit gepflegt wird – user3488072

+0

Auch mit der folgenden Bewertung bin ich eher geneigt, mit istanbul [ Link] (http: // stackoverflow.com/questions/32042195/blanket-js-vs-istanbul-js-vs-jscover) jede Hilfe rund um dies würde sehr geschätzt – user3488072

+0

> 2. Mit HTTP sammelt es nicht die Abdeckung Daten meiner Anwendung Dort muss etwas falsch mit Ihrer Konfiguration sein. Es gibt Arbeitsbeispiele unter https://github.com/tntim96/JSCover-samples. > 3. Nicht sicher, ob das Repository in letzter Zeit gepflegt wird Es ist. Letzte Veröffentlichung war der 13. Dezember 2016 (vor 28 Tagen von heute). – tntim96

0

Ein Werkzeug wie nyc ist, was Sie brauchen. Nehmen Sie Ihre js Datei (en) und führen so etwas wie

nyc Instrument

auf sie und nyc werden die js Dateien aufzeichnen Abdeckung ändern. Verwenden Sie diese geänderten Dateien auf Ihrer Website. Dann führen Sie Ihre Selen-Tests durch. Am Ende des Selenentests müssen Sie die Daten aus den JS-Dateien erfassen und in einer JSON-Datei speichern. Ich benutze diesen Code dafür.

IJavaScriptExecutor js = (IJavaScriptExecutor) -Treiber; string coverageData = (Zeichenfolge) js.ExecuteScript ("return JSON.stringify (window.cov_h0rgge4zy);"); File.WriteAllText (@ "C: \ someDir \ Abdeckung \" + DateTime.Now.Ticks + ".json", "{\" someFile \ ":" + coverageData + "}");

laufen dann so etwas wie

nyc Bericht html someCoverage.json

und Sie werden die Berichterstattung Bericht, html-Format

Verwandte Themen