Ajouter une source de données à un test de performances de site Web
Publication: juillet 2016
Liez les données pour fournir différentes valeurs au même test, par exemple, pour fournir différentes valeurs à vos paramètres de publication de formulaire.
Nous allons utiliser un exemple d'application ASP.NET. Elle contient trois pages .aspx : la page par défaut, une page rouge et une page bleue. La page par défaut a une case d'option pour choisir Rouge ou Bleu et un bouton Envoyer. Les deux autres pages .aspx sont simples. L'une a une étiquette nommée Rouge et l'autre a une étiquette nommée Bleu. Lorsque vous choisissez Envoyer sur la page par défaut, nous affichons l'une des autres pages. Pour créer une telle application, téléchargez notre exemple de code. Sinon, utilisez votre propre application web.
Votre solution doit également inclure un test de performances Web qui parcourt les pages de l'application Web similaire au projet ColorWebAppTest créé (voir Record and run a web performance test).
Créer une base de données SQL
Si vous n'avez pas Visual Studio Enterprise, vous pouvez le télécharger ici.
Créez une base de données SQL.
Créez un projet de base de données.
Ajouter une table au projet de base de données.
Ajoutez des champs à la table.
Publiez le projet de base de données.
Ajoutez des données aux champs.
Ajouter la source de données
Ajoutez une source de données.
Choisissez le type de source de données et nommez-le.
Créez une connexion.
Entrez les détails de connexion.
Sélectionnez la table que vous souhaitez utiliser pour votre test.
La table est liée au test.
Enregistrez le test.
Lier les données
Liez le champ ColorName.
Ouvrez le fichier Local.testsettings dans l'Explorateur de solutions et sélectionnez l'option Une exécution par ligne de source de données.
Enregistrez le test de performances de site Web.
Exécuter le test avec les données
Exécutez le test.
Les deux séries sont affichées pour chaque ligne de données. La série 1 envoie une requête pour la page Red.aspx, et la série 2 envoie une requête pour la page Blue.aspx.
Lorsque vous créez une liaison à une source de données, vous pouvez enfreindre la règle par défaut de l'URL de réponse. Dans ce cas, l'erreur dans la série 2 est provoquée par la règle qui attend la page Red.aspx de l'enregistrement de test d'origine, mais la liaison de données le dirige maintenant vers la page Blue.aspx.
Corrigez l'erreur de validation en supprimant la règle de validation de l'URL de réponse et en exécutant à nouveau le test.
Le test de performances de site Web réussit maintenant avec la liaison de données.
Q et R
Q : Quelles bases de données puis-je utiliser comme source de données ?
R : Vous pouvez utiliser :
Microsoft SQL Azure.
Toute version de Microsoft SQL Server 2005 ou ultérieure.
Fichier de base de données Microsoft SQL Server (y compris SQL Express).
Microsoft ODBC.
Fichier Microsoft Access à l'aide du fournisseur .NET Framework pour OLE DB.
Oracle 7.3, 8i, 9i ou 10g.
Q : Comment utiliser un fichier texte de valeurs séparées par des virgules (CSV) comme source de données ?
R : Voici comment faire :
Créez un dossier pour organiser vos artefacts de base de données de projets et ajouter un élément.
Créer un fichier texte.
Modifiez le fichier texte et ajoutez ce qui suit :
ColorId, ColorName 0,Red 1,Blue
Utilisez les étapes décrites dans Liaison des données SQL, mais choisissez le fichier CSV comme source de données.
Q : Que se passe-t-il si le fichier CSV existant ne contient pas d'en-têtes de colonne ?
R : Si vous ne pouvez pas ajouter d'en-têtes de colonnes, vous pouvez utiliser un fichier de description de schéma pour traiter le fichier CSV comme une base de données.
Ajoutez un nouveau fichier texte nommé schema.ini.
Modifiez le fichier schema.ini pour ajouter les informations qui décrivent la structure de vos données. Par exemple, un fichier de schéma qui décrit le fichier CSV peut se présenter de la manière suivante :
[testdata.csv] ColNameHeader=False
Ajoutez une source de données au test.
Si vous utilisez un fichier schema.ini, choisissez Base de données (pas Fichier CSV) comme source de données et nommez-la.
Créez une connexion.
Sélectionnez le fournisseur de données .NET Framework pour OLE DB.
Choisissez Avancé.
Pour la propriété Provider, sélectionnez Microsoft.Jet.OLEDB.4.0, puis définissez les propriétés étendues sur Text;HDR=NO.
Tapez le nom du répertoire qui contient le fichier de schéma et testez votre connexion.
Sélectionnez le fichier CSV que vous voulez utiliser.
Lorsque vous avez terminé, le fichier CSV apparaît sous forme de table.
Q : Comment utiliser un fichier XML comme source de données ?
R : Oui.
Créez un dossier pour organiser vos artefacts de base de données de projets et ajouter un élément.
Créez un fichier XML.
Modifiez le fichier XML et ajoutez vos données :
<?xml version="1.0" encoding="utf-8" ?> <ColorData> <Color> <ColorId>0</ColorId> <ColorName>Red</ColorName> </Color> <Color> <ColorId>1</ColorId> <ColorName>Blue</ColorName> </Color> </ColorData>
Utilisez les étapes décrites dans Liaison des données SQL, mais choisissez le fichier XML comme source de données.
Q : Puis-je ajouter la liaison de données à une requête de service Web qui utilise SOAP ?
R : Oui, vous devez modifier le code XML SOAP manuellement.
Choisissez la requête de service Web dans l'arborescence des requêtes et dans la fenêtre Propriétés, choisissez le bouton de sélection (...) dans la propriété Corps chaîne.
Remplacez les valeurs du corps SOAP par les valeurs liées aux données en utilisant la syntaxe suivante :
{{DataSourceName.TableName.ColumnName}}
Par exemple, si vous avez le code suivant :
<?xml version="1.0" encoding="utf-8"?> <soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="https://schemas.xmlsoap.org/soap/envelope/"> <soap:Body> <CheckStatus xmlns="http://tempuri.org/"> <userName>string</userName> <password>string</password> <orderID>int</orderID> </CheckStatus> </soap:Body> </soap:Envelope>
Vous pouvez effectuer la modification comme suit :
<?xml version="1.0" encoding="utf-8"?> <soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="https://schemas.xmlsoap.org/soap/envelope/"> <soap:Body> <CheckStatus xmlns="http://tempuri.org/"> <userName>{{DataSourceName.Users.Name}}</userName> <password>{{DataSourceName.Users.Password}}</password> <orderID>{{DataSourceName.Orders.OrderID}}</orderID> </CheckStatus> </soap:Body> </soap:Envelope>
Enregistrez le test.