Share via


Framework für automatische Tests

Das Ziel dieses Dokuments besteht darin, technischen Teams, die Unternehmenswebcastplattformen verwalten Anweisungen zur Verwendung des Microsoft eCDN Silent Testing-Tools bereitzustellen, um ihre Unternehmensnetzwerke zur Vorbereitung auf tatsächliche Ereignisse zu überwachen.

Das Microsoft eCDN Silent Testing Framework ermöglicht die einfache Ausführung von Simulationen auf mehreren Geräten, um zu emulieren und zu untersuchen, wie sich ein bestimmtes Netzwerk unter der Last eines Videoereignisses verhält.

Ein unbeaufsichtigter Test ist eine echte Videositzung, die im Hintergrund (stummgeschaltet) auf einem Endbenutzergerät ausgeführt wird. Der Benutzer kann weiterhin auf seinem Computer arbeiten, ohne zu wissen, dass der Test ausgeführt wird. Es kann jedoch zu einer Verlangsamung der Netzwerkkonnektivität bzw. der Bandbreite des Videos kommen.

Das Framework besteht aus drei Standard Komponenten:

  • Runnergeräte
  • Verwaltungsdashboard
  • Analyse

Diese Komponenten werden in den folgenden Abschnitten einzeln erläutert.

Runnergeräte

Jedes Gerät, das eine Verbindung mit dem Framework herstellt, wird als "Runner" betrachtet. Jeder Runner simuliert einen einzelnen Viewer und kommuniziert mit dem Back-End von Microsoft eCDN, um Anweisungen zu erhalten, welcher Test ausgeführt werden soll. Meistens werden keine Tests ausgeführt. In diesem Fall wartet der Runner im Leerlauf, bis ein Test gestartet wird. Anstatt eine bestimmte Agent-Anwendung auf jedem Computer bereitzustellen, die als Runner fungiert, nutzt Microsoft eCDN vorhandene Software, die häufig auf Endbenutzercomputern installiert ist, um Runner im Hintergrund zu starten.

Da es sich bei dem Runner im Wesentlichen um eine Webseite handelt, kann sie in jeder Browser- oder browserähnlichen Umgebung geöffnet werden. Es gibt zwei Möglichkeiten, einen Runner zu instanziieren.

Wichtig

Microsoft Edge oder Google Chrome muss auf dem Computer des Endbenutzers installiert sein. Darüber hinaus muss das Gerät eingeschaltet und mit dem Internet verbunden sein, um an automatischen Tests teilnehmen zu können.

Direct Runner

Das manuelle Öffnen der Runnerseite mit der folgenden URL, wobei darauf geachtet wird, den Platzhalter TENANT_ID_HERE durch die ID Ihres Mandanten in einem Browser zu ersetzen, wird als "direkter Runner" betrachtet.

https://st-sdk.ecdn.teams.microsoft.com/?customerId=TENANT_ID_HERE&adapterId=Direct

Achtung

Während ein Silent Runner mit den erforderlichen Argumenten instanziert wird, um die IP-Adresse des Computers für den Microsoft eCDN-Dienst verfügbar zu machen, verwendet ein Direct Runner die globalen Einstellungen des Computers. Wenn Sie also die mDNS-IP-Verschleierung noch nicht deaktiviert haben, ist es unwahrscheinlich, dass der Direct Runner peeret.

Silent Runner

Wir stellen PowerShell & Bash-Skripts bereit, die einen headless Chromium Browser im Hintergrund mit der Runnerseite starten, die als "silent runner" gilt. Das Skript kann dann für eine Gruppe von Benutzern ausgeführt werden, um sie mit dem Framework zu verbinden.

Weitere Informationen finden Sie unter Anhang B: Integrieren von Runnern mit headless Browser

Verwaltungs-Dashboard

Die Verwaltungs-Dashboard ermöglicht es, Tests zu planen, zu ändern und abzubrechen, und zeigt auch die Anzahl der verbundenen Runner an. Im fenster Standard werden ausstehende Tests, laufende Tests und frühere Tests aufgelistet, die bereits beendet wurden. Abgeschlossene Tests werden 24 Stunden lang angezeigt und dann in der Liste ausgeblendet.

Abbildung: Automatische Testverwaltung Dashboard Benutzeroberfläche

Wichtig

Die Anzahl der Geräte oder "zugewiesenen Clients", die einen geplanten Test ausführen, hängt von der Anzahl der Online-Runner zum Zeitpunkt des geplanten Starts des Tests und nicht zum Zeitpunkt der Planung des Tests ab.

Analyse

Wenn ein Test geplant ist, wird er auf den Modus "Ausstehend" festgelegt. Sobald die Startzeit erreicht ist, wird der Test aktiviert und allen Online-Runnern wird ein Aktivierungssignal gesendet. Die Zielseite wird dann von jedem Runner gestartet, und das (stummgeschaltete) Video wird im ausgeblendeten Fenster wiedergegeben. Das Microsoft eCDN SDK sammelt Netzwerk- und UX-Metriken, die in verschiedenen Diagrammen und Diagrammen im Analytics-Dashboard dargestellt werden. Analysen werden gemeldet, während der Test ausgeführt wird, sodass Administratoren die status überprüfen können, noch bevor der Test endet.

Parallelität

Beispieldiagramm mit dem Titel

Das Parallelitätsdiagramm zeigt die Anzahl der aktiven Benutzer im Laufe der Zeit an. Um als aktiv betrachtet zu werden, muss ein Benutzer ein Video wiedergeben.

HTTP + P2P-Geschwindigkeit

Beispieldiagramm mit dem Titel

Das Netzwerkdurchsatzdiagramm zeigt eine Aufschlüsselung des Netzwerkverbrauchs in HTTP und P2P.

Dargestellt als Beschreibung Achse
Dunkelblaue Balken HTTP-Bandbreite left
Orangefarbene Balken P2P-Bandbreite left
Grüne gepunktete Linie Verhältnis von P2P aus dem Gesamtergebnis als Prozentsatz Richting

Ein P2P-Verhältnis von 90 % bedeutet beispielsweise, dass nur 10 % des Datenverkehrs über HTTP heruntergeladen wurden, und der Rest wurde per Peering zwischen Benutzern übertragen.

Wenn P2P niedriger als erwartet ist, bedeutet dies, dass entweder die Benutzerparallelität nicht hoch genug war oder dass das Netzwerk mehr Optimierung erfordert. Informationen zur Problembehandlung finden Sie in der Dokumentation zur Problembehandlung bei geringer Peeringeffizienz .

Verwendung durch den Benutzer

Beispieldiagramm mit dem Titel Wiedergabe und Wiedergeburtszeit. Diagramm im Laufe der Zeit, das drei Reihen anzeigt: Wiedergabe, Wiedergeburt und Rebuffer-Verhältnis in dunkelgrüner, roter und blauer gepunkteter Linie.

Das Benutzererfahrungsdiagramm zeigt die kombinierte Wiedergabezeit und die Zeit, die für die Wiedergeburt (fixiertes Video) aufgewendet wurde.

Dargestellt als Beschreibung Achse
Grüne Balken Aggregierte Spielzeit in Minuten left
Rote Balken Kombinierte Zeit, die in Minuten für die Neubesendung aufgewendet wurde left
Blaue gepunktete Linie Verhältnis der Überschreitung der Gesamtzeit als Prozentsatz Richting

Ein Rücksageverhältnis von 2 % bedeutet beispielsweise, dass das Video 98 % der Zeit korrekt wiedergegeben wurde, während das Video bei 2 % der Zeit hängen geblieben ist.

Die Rückvergütung sollte idealerweise unter 1 % liegen. Hohe Zahlen oder Spitzen bei der Zurückweisung können auf Netzwerküberlastung, Serverüberlastung oder falsch konfigurierte Inhalte hindeuten.

Netzwerkanforderungen

Das Framework für automatische Tests verwendet die folgenden Domänen und Ports:

Hostname Ports Protokoll Beschreibung
*.ecdn.teams.microsoft.com 443 HTTPS Runnerseite & Ressourcen
*.ecdn.teams.microsoft.com 443 WSS WebSocket-Verbindung mit dem Microsoft eCDN-Back-End
Beliebiger Wert Hohe Ports 10.000 + SCTP Dies ist für WebRTC-Peerverbindungen erforderlich. Kann nur auf LAN beschränkt werden. 

Sicherheit

Das Framework für automatische Tests weist Runnern Tests zu. Während der Runner eine statische Seite ist, die eine Verbindung mit dem Microsoft eCDN-Back-End herstellt, ist ein ausgeführter Test dynamisch und kann eine beliebige Zielseite ausführen. Aus diesem Grund laufen Runner innerhalb einer Webseite, die vom Browser sandkastent wird und auf Sicherheitsmechanismen basiert, die in moderne Browser integriert sind. Unabhängig von der Integration (ohne benutzerdefinierte Integrationen) wird die Zielseite immer in einem sicheren, sauber Kontext mit einem iframe ausgeführt.

Die Netzwerkberechtigungen werden auch vom Browser eingeschränkt und auf gängige Web-APIs wie HTTP, WebSocket, WebRTC usw. beschränkt.

Während sie auf die Ausführung von Tests warten, behalten Runner eine permanente WebSocket-Verbindung über eine sichere TLS-Verbindung (WSS) bei.

Anhang

Anhang A: Planen eines unbeaufsichtigten Tests

  1. Wechseln Sie zu Ihrem Dashboard für unbeaufsichtigte Tests.

  2. Wählen Sie das +-Symbol aus.

    Benutzeroberfläche des unbeaufsichtigten Testers

  3. Ausfüllen der erforderlichen Felder

    Abbildung der Benutzeroberfläche der Optionen für den automatischen Test.

    • Name : Beliebiger Name Ihrer Wahl.

    • Uhrzeit & Datum : Eine bestimmte Uhrzeit, zu der der Test beginnt.

    • Dauer : Die Dauer des Tests. Wir empfehlen mindestens 20 Minuten, um eine ordnungsgemäße Simulation zu ermöglichen.

    • Ziel-URL : Eine öffentlich verfügbare URL der Ereignisseite, die das Video während des simulierten Ereignisses wiedergibt. Sie können unsere integrierte Seite verwenden oder eine eigene erstellen.

      • Integrierte Stream : Microsoft eCDN enthält eine bereits integrierte integrierte Seite mit einem Livestream, der mehrere Wiedergaben und anpassbare Streamingprotokolle enthält.

      • Benutzerdefinierte Stream: Möglicherweise möchten Sie nur einen eigenen Livestream bereitstellen und die automatisch integrierte Seite von Microsoft eCDN verwenden. Der Stream muss öffentlich verfügbar sein und CORS-Header enthalten, damit die Runner ihn laden können. Der Stream wird automatisch wiedergegeben, wenn der Test beginnt.

      • Benutzerdefinierte Seite : Eine eigene benutzerdefinierte Seite. Die Seite muss einen Player und einen Livestream enthalten und in Microsoft eCDN integriert sein. Der Player MUSS die Wiedergabe des Videos automatisch starten, da es während des Tests keine Benutzerinteraktion gibt. Einige Browser schränken die Fähigkeit zur automatischen Wiedergabe von Videos ein. Aus diesem Grund wird empfohlen, die Audiowiedergabe stummzuschalten, wodurch die Einschränkung vereinfacht wird. Die integrierten Seiten sind standardmäßig stummgeschaltet.

    • Gerätefilter: Beschränken Sie einen Test auf eine bestimmte Gruppe von Geräten. In einigen Fällen möchten Sie möglicherweise einen Test auf einer Teilmenge der verbundenen Geräte ausführen. Beispielsweise, um einen Test nur auf Niederlassungen in den USA oder nur auf Direct Runner-Geräten durchzuführen.

      • Länderfilter : Schließen Sie nur Geräte aus bestimmten Ländern/Regionen (GeoIP) ein.

      • Integrationsfilter : Schließen Sie nur Geräte ein, die über eine bestimmte Integration verbunden sind.

      • Geräte-ID-Filter : Führen Sie einen Test nur für bestimmte Geräte-IDs aus. Dieser Filter wird hauptsächlich für lokale Debugzwecke verwendet.

  4. Wählen Sie Zeitplan aus, und der Test wird erstellt.

  5. Wenn die Startzeit des unbeaufsichtigten Tests erreicht ist, wird der Test auf den zugewiesenen verbundenen Geräten ausgeführt.

Anhang B: Integrieren von Runnern mit headless Browser

Microsoft eCDN bietet ein Skript für unbeaufsichtigte Tester ohne Installation.

Dieses Skript startet einen Chromium-Browser im Hintergrund von Computern auf einer bestimmten Seite für eine bestimmte Dauer und schließt dann den Hintergrundbrowserprozess.

Darüber hinaus bietet Microsoft eCDN ein Skript zum Ausführen des unbeaufsichtigten Testers auf Remotecomputern, die in Active Directory aufgeführt sind.

Hinweis

Beim Neustart eines Computers wird der Runner nicht automatisch wiederhergestellt, und der Browser muss mithilfe des Skripts erneut gestartet werden.

Ausführungsanweisungen für die Windows-Umgebung

  1. Laden Sie silent-tester-runner-windows.ps1 herunter– ein PowerShell-Skript, das 24 Stunden lang einen Chromium-basierten Browser (Microsoft Edge oder Google Chrome, wenn Edge nicht gefunden wird) im Hintergrund startet.

  2. Bearbeiten siesilent-tester-runner-windows.ps1:

    • $TenantID: Ersetzen Sie durch TENANT_ID Ihre Microsoft-Mandanten-ID.

    • $TestID: Ersetzen Sie durch TEST_ID eine eindeutige ID-Zeichenfolge. Diese Zeichenfolge wird bei der Erstellung von Protokolldateien verwendet, sodass unbeaufsichtigte Testadministratoren Testergebnisse eindeutig identifizieren können.

    Wichtig

    Jeder Test muss über eine eindeutige $TestID verfügen. Wenn das Skript erkennt, dass es zuvor mit demselben $TestID wie die aktuelle instance ausgeführt wurde, wird es beendet, ohne den automatischen Test auszuführen.

    • (Optional) $scenarioDuration : Legen Sie die Betriebszeitdauer des Browsers auf den gewünschten Wert in Sekunden fest. Sie können für diesen Zeitraum unbeaufsichtigte Tests auf den Zielcomputern ausführen. Da sich der Browser im Leerlauf befindet, ist es kein Problem, diesen Wert auf mehrere Tage zu erhöhen, um mehr Flexibilität beim Ausführen von Tests zu ermöglichen. Dieser Prozess übersteht einen Systemneustart nicht. Der Standardwert ist 86.400 Sekunden (24 Stunden).

    • (Optional) $customChromePath : Falls Microsoft Edge oder Google Chrome nicht im Standardpfad (C:\Program Files oder C:\Program Files (x86)) installiert ist, legen Sie diese Variable auf den Pfad der ausführbaren Datei Ihres Browsers fest. Zum Beispiel: C:\Custom Path\Edge\msedge.exe

  3. Führen Sie das Skript auf Zielcomputern aus, indem Sie die Methode Ihrer Wahl verwenden, z. B. eine der folgenden Optionen.

    • Verwenden von Gruppenrichtlinienobjekten

    • Verwenden von SCCM

    • Oder manuell über einen Domänencontroller. Zur Vereinfachung bieten wir ein Beispiel für ein Aufrufskript an.

      1. Herunterladen remote-invocation.ps1 – ein PowerShell-Skript, das silent-tester-runner-windows.ps1 auf allen Computern in Active Directory ausführt

      2. (optional) Bearbeiten Sie das Skript, um Ihre Active Directory-Abfrage basierend auf Ihren Anforderungen auf eine bestimmte Gruppe von Computern zu beschränken. Informationen zur erweiterten Filterung finden Sie in der Get-ADComputerCmdlet-Dokumentation .

      Hinweis

      Stellen Sie sicher, dass sichsilent-tester-runner-windows.ps1 im selben Verzeichnis befindet, aus dem Sie das Aufrufskript ausführen.

      Achtung

      Um optimale Ergebnisse zu erzielen, führen Sie das Runnerskript unter einem Benutzerkontext aus. Es wird davon abgeraten, das Runnerskript unter dem SYSTEM-Konto auszuführen.

  4. Wechseln Sie zum automatischen Test Dashboard und stellen Sie sicher, dass die Zielcomputer jetzt als Online-Runner angezeigt werden.

Abbildungsbeispiel mit vier Online-Runnern.

Ausführungsanweisungen für die Mac-Umgebung

  1. Laden Sie silent-tester-runner-mac.sh herunter – ein Bash-Skript, das Google Chrome 24 Stunden lang im Hintergrund startet.

  2. silent-tester-runner-mac.sh bearbeiten:

    1. ecdnCustomerId : Ersetzen Sie durch CUSTOMER_ID Ihre Microsoft-Mandanten-ID.

    2. (Optional) scenarioDuration : Legen Sie die Betriebszeitdauer des Browsers auf den gewünschten Wert in Sekunden fest. Sie können für diesen Zeitraum unbeaufsichtigte Tests auf den Zielcomputern ausführen. Da sich der Browser im Leerlauf befindet, ist es kein Problem, diesen Wert auf mehrere Tage zu erhöhen, um mehr Flexibilität beim Ausführen von Tests zu ermöglichen. Der Standardwert ist 86.400 Sekunden (24 Stunden).

  3. Abhängig von dem Tool, das zum Verwalten der Geräte am Standort verwendet wird, z. B. Jamf Pro, gibt es verschiedene Möglichkeiten, das Skript auf verschiedenen Computern auszuführen.