Fermer

mai 31, 2019

Modification d'un fichier XML à partir d'une étape codée


J'ai reçu une demande intéressante d'un client aujourd'hui. Il semble que l'application que l'utilisateur a l'intention de tester est associée à un fichier user.config . Et voici ce que l'utilisateur cherche à faire dans ses propres mots:

Comment créer un test qui modifie le fichier user.config avant d'ouvrir l'application?

J'espère que ce sera intéressant pour vous de voir comment j'ai mis cela ensemble. J'ai fait un peu de recherche et ça a donné ceci:

1) Qu'est-ce qu'un fichier user.config ?

J'ai pensé que l'un de ces fichiers était probablement sur mon disque dur. J'ai fait une recherche Windows et j'ai trouvé un seul fichier user.config – c'était un fichier XML. Je l'ai copié dans c: test user.config . Ce devait être mon cobaye – jusqu'ici tout va bien.

2) Nous avons besoin d'une API XML

Donc user.config est un fichier XML. Il est toujours possible de l'éditer sous forme de fichier txt classique (à l'aide de l'API System.IO), mais cela semble un peu amateur. Je voulais utiliser une API XML. System.XML, qui est un assemblage .Net, était mon outil de choix

3) Assembler le code

J'ai passé un peu de temps à la recherche. Surtout j'ai regardé MSDN. Voici quelques-uns des articles que j'ai extraits:

http://msdn.microsoft.com/en-us/library/system.xml.aspx

http: / /msdn.microsoft.com/en-us/library/ms162365.aspx

Anyway, voici le code qui reprend le fichier user.config de c: test user.config et ajoutez-y un nœud de commentaire:

XmlDocument config = new System.Xml.XmlDocument (); \ Créer un nouveau document
config.Load ("C: \ test \ user.config"); \ Charger le contenu existant

XmlNode newElem = config.CreateNode (XmlNodeType.Comment, config.Name, config.NamespaceURI); \ Créer un nouveau noeud à ajouter au document
newElem.InnerText = "this is my node"; \ Ajouter le contenu textuel du nouveau noeud

config.AppendChild (newElem); \ Placez le nœud nouvellement créé dans le document
config.Save (XmlWriter.Create ("C: \ Intel \ user.config")); \ Ecrase le fichier xml existant avec le nouveau document (l'ancien document plus un nœud)

C'est du code C # mais vous pouvez le convertir en VB si vous en avez besoin en utilisant notre convertisseur codé . Je mets ce code dans une étape codée .

4) Ajouter les références nécessaires

Pour que ce code fonctionne, vous aurez besoin de . ] ajoutez une référence Assembly à System.XML. Sur mon ordinateur, j'ai localisé le fichier à l'emplacement suivant:

C: Fichiers de programme (x86) Assemblys de référence Microsoft Framework .NETFramework v4.0 System.XML .dll

5) Vous devez exécuter ceci avant / après votre test?

Pas de problème! Vous pouvez faire ce travail comme on le voit ici .

À propos de l'auteur

 Stoil Stoichev

Stoil Stoychev

aide ses clients à résoudre leurs problèmes de tests complexes en exploitant sa connaissance approfondie du Telerik Test Studio. Il a parcouru le monde en perfectionnant son expertise technique et en aidant nos précieux clients à réussir. Dans ses temps libres, il aime les motos, la musique live et divers sports.





Source link