Les tests de performances des applications de navigateur Web qui fournissent des services de conférence Web, par exemple, les examens à distance, les vérifications par webcam ou les outils Web de vidéoconférence en ligne, peuvent être complexes.

Par exemple, vous pouvez vérifier le comportement de votre système lorsque plus de 100 participants sont connectés à votre plate-forme de vidéoconférence en ligne et parlent et diffusent en même temps. Bien que les tests manuels puissent être une option pour des contrôles occasionnels ou des tests de faible charge, il est difficile de couvrir tous les scénarios et de mettre en œuvre une surveillance continue et des tests de charge lorsque vous disposez d’un nombre limité de testeurs et de matériel. Pour faciliter cette tâche, Dotcom-Monitor introduit une nouvelle fonctionnalité d’émulation de webcam et de microphone qui permet de tester et de surveiller la charge de conférence Web dans une fenêtre de navigateur pour fournir les résultats de test les plus réalistes.

Dans cet article, nous allons apprendre à ajouter la fonction d’émulation de streaming audio et vidéo à un script de test avec EveryStep Scripting Tool Desktop de Dotcom-Monitor.

Comment cela fonctionne

En un mot, Dotcom-Monitor émule les flux vidéo et audio dans un navigateur, chaque fois qu’une application Web cible demande l’accès à une webcam et à un microphone sur un appareil d’utilisateur final. Pour ce faire, nous exécutons une séquence préenregistrée de transactions utilisateur dans le navigateur Chrome et utilisons des fichiers audio / vidéo personnalisés pour transmettre les médias préenregistrés.

Dotcom-Monitor n’a pas de stockage disponible localement. Avant d’exécuter l’étape de diffusion multimédia en continu, vous devez remettre les fichiers multimédias au script à partir d’un stockage de fichiers en ligne accessible au public. Dotcom-Monitor téléchargera le fichier à partir de l’URL fournie sur notre système chaque fois que le script est exécuté et le lira dans une fenêtre de navigateur pour émuler un matériel de capture vidéo et audio.

Si vous n’avez pas de configuration particulière pour tester les fichiers multimédias, nous vous recommandons d’utiliser les fichiers de test que vous pouvez télécharger directement dans le script à partir du stockage CDN Dotcom-Monitor :

Fichier audio Fichier vidéo
30 secondes https://d149yd38g6ldk.cloudfront.net/30sec.wav https://d149yd38g6ldk.cloudfront.net/WebCam30s.y4m
1 min https://d149yd38g6ldk.cloudfront.net/1min.wav https://d149yd38g6ldk.cloudfront.net/WebCam1m.y4m

Utilisation de fichiers multimédias personnalisés

Pour le test de charge, assurez-vous que le système de stockage de fichiers que vous allez utiliser dans le test dispose d’une capacité suffisante pour supporter une charge pendant une série de tests. Sinon, des erreurs liées au téléchargement de fichiers peuvent se produire pendant l’exécution du test. Pour les scénarios de surveillance des performances Web, il est également important d’utiliser un système de stockage très fiable pour garantir un accès transparent aux supports de test et un temps de chargement rapide.

Il est recommandé d’optimiser la livraison de vos fichiers multimédias à Dotcom-Monitor lors de l’exécution de tests de charge ou de surveillance, de télécharger vos fichiers multimédias de test sur un stockage CDN fiable.

Formats de fichiers et limites de taille pris en charge

La limite de taille du fichier multimédia est de 20 Mo.

Nous prenons actuellement en charge les formats de fichiers multimédias suivants à des fins de test.

Pour les fichiers vidéo :

YUV4MPEG2 (a.k.a. Y4M)

Vous pouvez trouver plus d’informations sur le format de fichier ici: http://wiki.multimedia.cx/index.php?title=YUV4MPEG2

Pour les fichiers audio :

WAV

Guide pas à pas du script d’enregistrement

Tout d’abord, téléchargez une version de bureau de l’outil de script EveryStep. Veuillez voir comment installer et utiliser l’outil dans l’article Using EveryStep Scripting Tool Desktop de notre wiki.

Dans la version de bureau de l’enregistreur EveryStep, enregistrez la navigation vers une application de conférence Web cible et lancez une session de diffusion multimédia en continu (par exemple, cliquez sur Démarrer la vidéo ou Autoriser l’accès à la webcam). Enregistrez ensuite le script.

Pour ajouter des étapes d’émulation de flux multimédia, ajoutez les méthodes suivantes avant les lignes de navigation de l’application web :

tab0.Download (string  wavFileName, string wavFileURL);
tab0.Download (string  y4mFfileName, string y4mFileURL);
UseFileForFakeMediaCapture (MediaType.Camera, string  y4mFileName);
UseFileForFakeMediaCapture (MediaType.Microphone, string  wavfileName);

Définition des paramètres

wavFileName string – .wav nom de fichier pour l’émulation audio

y4mfileName string – Nom de fichier .y4m pour l’émulation vidéo

wavFileURL string – URL du fichier audio

y4mFileURL string – URL du fichier vidéo

Assurez-vous que les noms de fichiers sont cohérents dans l’ensemble du script.

Pour réserver du temps supplémentaire pour l’étape de diffusion multimédia en continu, ajoutez la ligne Délai à la fin de l’étape de diffusion multimédia en continu.

Recherchez l’exemple de script ci-dessous.

// script_version=3.0; everystep_version=4.0.8370.4032; date=4/23/2023; Chrome=104.0.5112.57; Use System Credentials
Tabs.SetSize (1768, 876);
DMBrowser tab0 = null;
Step (1, "Webcam Test - Check Your Camera With Our Online Tool - https://www.onlinemictest.com/webcam-test/");
tab0 = Tabs.NewTab ();
//Download a test audio file
tab0.Download ("30sec.wav", "https://d149yd38g6ldk.cloudfront.net/30sec.wav");
//Download a test video file
tab0.Download ("WebCam30s.y4m", "https://d149yd38g6ldk.cloudfront.net/WebCam30s.y4m");
//Emulate a webcam video stream and mic audio
UseFileForFakeMediaCapture (MediaType.Camera, "WebCam30s.y4m"); 
UseFileForFakeMediaCapture (MediaType.Microphone, "30sec.wav");
tab0.GoTo ("https://www.onlinemictest.com/webcam-test/");
//Click a button to allow access to webcam
tab0.Div ("//DIV[@ID=\"webcam-start\"]", "//DIV[@ID=\"fullscreen_close\"]/following-sibling::DIV[1]", "//DIV[@ID=\"fullscreen_open\"]/following-sibling::DIV[2]").Click ();
Delay ("10sec".ToDuration ());