Les tests de performance des applications de navigateur Web qui fournissent des services de conférence Web (WebRTC), par exemple, les examens à distance, les vérifications de 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.
Veuillez consulter notre article de blog WebRTC Load Testing Explained pour en savoir plus sur WebRTC et les approches les plus efficaces pour tester et surveiller la charge avec WebRTC.
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 | Test de charge de fichier vidéo | Surveillance des fichiers vidéo | |
10 secondes | – | – | 10s.y4m |
30 secondes | 30sec.wav | 30s.y4m | – |
1 min | 1min.wav | 1min.y4m | – |
Formats de fichiers et limites de taille pris en charge
La limite de taille des fichiers multimédias est de 20 Mo pour les scripts de surveillance Web et de 150 Mo pour les scripts de test de charge.
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);
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 ());