Luận văn thạc sĩ: Thiết kế và phát triển hệ thống tự động kiểm tra phần mềm Flamingo XL

Luận văn thạc sĩ kỹ thuật nghiên cứu vnu uet concevoir et développer un système automatisé pour tester flamingo xl luận văn ths công, khảo sát thực trạng, phân tích nguyên nhân,

Trường đại học

Université Nationale du Vietnam

Chuyên ngành

Master Informatique, Spécialité Réseaux et Systèmes Communicants

Người đăng

Ẩn danh

Thể loại

mémoire

2023

54
2
0

Phí lưu trữ

30 Point

Mục lục chi tiết

Remerciements

Résumé

Abstract

1. CHAPITRE 1: Introduction

1.1. Anevia

1.2. Flamingo XL

1.3. Contexte du travail

1.4. Problématique

2. CHAPITRE 2: Bibliographie

2.1. IPTV

2.2. Flux de transport MPEG2

2.3. Programme d’Information Spécifique (PSI)

2.3.1. Tableau de Programme d’Information Spécifique (PSI)

2.3.2. Tableau de l’Association de Programme (PAT)

2.3.3. Tableau de la Carte de Programme (PMT)

2.3.4. Tableau de l’Accès Conditionnel (CAT)

2.3.5. Tableau de l’Information de Réseau (NIT)

2.4. Packet sniffer

2.4.1. Tcpdump

2.4.2. Pyshark

3. CHAPITRE 3: Conception et Implémentation

4. CHAPITRE 4: Expérimentation

5. CHAPITRE 5: Conclusion et Perspective

A Exemple du bibliothèque

B Exemple des scripts ATS

C Exemple du codage de Selenium Webdriver

Bibliography

Tóm tắt

I. Tổng quan về hệ thống tự động kiểm tra phần mềm Flamingo XL

Hệ thống tự động kiểm tra phần mềm Flamingo XL là một giải pháp tiên tiến nhằm đảm bảo chất lượng cho các ứng dụng web. Flamingo XL, sản phẩm của Anevia, được thiết kế để phục vụ cho ngành công nghiệp truyền hình và giải trí. Việc kiểm tra phần mềm tự động giúp giảm thiểu thời gian và chi phí, đồng thời nâng cao độ chính xác trong quá trình kiểm tra.

1.1. Flamingo XL và vai trò trong ngành truyền hình

Flamingo XL cung cấp dịch vụ truyền hình qua mạng IP, cho phép người dùng truy cập nội dung đa dạng. Hệ thống này hỗ trợ cả truyền hình trực tiếp và nội dung đã ghi lại, mang lại trải nghiệm tốt nhất cho người dùng.

1.2. Tại sao cần hệ thống kiểm tra tự động

Kiểm tra phần mềm tự động giúp phát hiện lỗi nhanh chóng và chính xác hơn so với kiểm tra thủ công. Điều này đặc biệt quan trọng trong môi trường phát triển phần mềm nhanh chóng như hiện nay.

II. Thách thức trong việc kiểm tra phần mềm Flamingo XL

Mặc dù hệ thống tự động kiểm tra phần mềm Flamingo XL mang lại nhiều lợi ích, nhưng vẫn tồn tại một số thách thức. Việc chuyển đổi các trường hợp kiểm tra sang kịch bản tự động có thể gặp khó khăn do tính phức tạp của sản phẩm.

2.1. Khó khăn trong việc chuyển đổi kịch bản kiểm tra

Một số trường hợp kiểm tra không thể chuyển đổi thành kịch bản tự động do yêu cầu về tương tác người dùng hoặc các tình huống không thể mô phỏng.

2.2. Đảm bảo tính chính xác của các kịch bản kiểm tra

Để đảm bảo tính chính xác, các kịch bản kiểm tra cần được thiết kế cẩn thận và phải được kiểm tra định kỳ để cập nhật theo sự thay đổi của sản phẩm.

III. Phương pháp kiểm tra tự động hiệu quả cho Flamingo XL

Để tối ưu hóa quy trình kiểm tra phần mềm, một số phương pháp đã được áp dụng cho hệ thống Flamingo XL. Việc sử dụng các công cụ như Selenium và Testerman giúp tự động hóa quy trình kiểm tra một cách hiệu quả.

3.1. Sử dụng Selenium cho kiểm tra tự động

Selenium là một công cụ mạnh mẽ cho phép tự động hóa các tác vụ trên trình duyệt. Việc sử dụng Selenium giúp giảm thiểu thời gian kiểm tra và tăng độ chính xác.

3.2. Tích hợp Testerman vào quy trình kiểm tra

Testerman là công cụ chính trong việc quản lý và thực hiện các kịch bản kiểm tra tự động. Nó giúp theo dõi tiến trình và kết quả kiểm tra một cách hiệu quả.

IV. Ứng dụng thực tiễn của hệ thống kiểm tra tự động Flamingo XL

Hệ thống tự động kiểm tra phần mềm Flamingo XL đã được áp dụng thành công trong nhiều dự án thực tế. Kết quả cho thấy sự cải thiện rõ rệt về chất lượng sản phẩm và thời gian phát triển.

4.1. Kết quả đạt được từ việc kiểm tra tự động

Hệ thống đã đạt được tỷ lệ thành công trên 80% trong các kịch bản kiểm tra, cho thấy tính hiệu quả của phương pháp kiểm tra tự động.

4.2. Các dự án thành công với Flamingo XL

Nhiều dự án lớn trong ngành truyền hình đã áp dụng hệ thống này, mang lại trải nghiệm tốt hơn cho người dùng và giảm thiểu chi phí phát triển.

V. Kết luận và tương lai của hệ thống kiểm tra tự động

Hệ thống tự động kiểm tra phần mềm Flamingo XL không chỉ giúp nâng cao chất lượng sản phẩm mà còn mở ra nhiều cơ hội mới cho ngành công nghiệp phần mềm. Tương lai của kiểm tra tự động hứa hẹn sẽ còn phát triển mạnh mẽ hơn nữa.

5.1. Xu hướng phát triển của kiểm tra tự động

Với sự phát triển của công nghệ, kiểm tra tự động sẽ ngày càng trở nên phổ biến và cần thiết trong quy trình phát triển phần mềm.

5.2. Tầm quan trọng của việc cập nhật công nghệ

Để duy trì hiệu quả, các công cụ và phương pháp kiểm tra cần được cập nhật thường xuyên theo xu hướng công nghệ mới.

22/07/2025

Trích đoạn nội dung tài liệu

Université nationale du Vietnam, Hanoi INSTITUT FRANCOPHONE INTERNATIONAL PENTALOG Concevoir et développer un système automatisé pour tester Flamingo XL Mémoire présenté en vue de l'obtention du grade Master informatique, Spécialité "Réseaux et Systèmes Communicants" de l'Université Nationale du Vietnam, Hanoi. Réalisé par Anna SAELEE Promotion 17, option RSC Encadres par NGUYEN Manh Tuong LE THI THU Hoa LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Remerciements Je tiens à remercier mes encadreurs, monsieur NGUYEN Manh Tuong, le di- recteur du Pentalog à Hanoi, et Madame LE THI THU Hoa, le chef du projet pour ses disponibilités et ses conseils. Ils m’aidaient toujours à passer tous les moments difficiles et m’ont guidé à aller dans la bonne direction du projet. Je voudrais remercier monsieur Victor Moraru qui m‘a conseillé de faire le stage chez Pentalog.

Je tiens également à remercier tous les collègues du Pentalog qui m’ont appris les informations du projet et m’ont supporté à être confortable pendant la période du stage, et mes amis, qui m’ont aidé avec des conseils, des remarques et des critiques. LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Résumé Actuellement, l’informatique a beaucoup d’intérêt dans la vie quotidienne, par exemple : la communication, la distribution des nouvelles et l’éducation, etc. Il existe pas mal de technologies afin de bien profiter de ces intérêts : des sites web, des applications mobile, etc. Pour avoir la garantie de logiciel, le processus du test est appliqué dans le projet du développement de logiciel.

Le site web est un moyen qu’on utilise pour diffuser des informations à tout le monde à travers l’Internet, donc le test à la main est suffit en raison de vérifier des contenus affichés. Comme l’informatique n’est jamais rester immobile, l’application Web a été créé pour qu’un utilisateur peut interagir avec le site web plus que la lecture des informations. Autrement dit que le test devient un processus important pour garantir la qualité de l’application Web. Afin de tester un logiciel, nous avons différents méthodes comme le test uni- taire, le test d’intégration, etc.

Pourtant, le test du site web peut être faire à la main. Comme le test dans la façon d’humain peut avoir des erreurs et prend beaucoup de temps, pour cette raison le test d’automatisation du web a été développé. Dans ce travail, nous avons le but de créer des scripts pour le test d’automati- sation du web sur le produit Flamingo XL d’Anevia. Ces scripts doivent être réutiliser dans l’avenir.

En plus, le nombre du scripts réussis dois être au minimal de 80% des cas de test total. LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Abstract Today, Information Technology (IT) has a lot of interest in daily life, such as : the communication, the distribution of news and the education, etc. There are a lot of technologies in order to benefit these interests : websites, mobile applications, etc. For the software warranty, the test process is applied in the software development project.

The website is one way we use to distribute information to everyone through the Internet, so the test by hand is simply due to check the displayed content. As IT is never standing still, the web application was created for a user can interact with the website more than reading the in- formation. In other words that why the test becomes an important process to ensure the quality of the Web application. To test the software, we have different methods such as the unit test, integration testing, etc.

However, the test of the website can be done manually. As the test in the human’s way may have the error and may take a long time, a web automation test was developed. In this work, we have to create scripts for the web automation test on a product of Anevia, Flamingo XL. These scripts must be reused in the future.

In addition, the number of successful scripts have to be at minimum 80% of the total test. LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Table des matières 1 Introduction 1 1.3 Contexte du travail .2 Flux de transport MPEG2. 13 3 Conception et Implémentation 18 3.1 Conception du projet. 19 4 Expérimentation 33 5 Conclusion et Perspective 36 5.

37 A Exemple du bibliothèque 38 B Exemple des scripts ATS 42 C Exemple du codage de Selenium Webdriver 45 Bibliography 47 i LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Table des figures 2.1 Architecture du système IPTV .2 Architecture point-à-point de IPTV .3 Tableau de Programme d’Information Spécifique (PSI) .4 Tableau de l’Association de Programme (PAT) .5 Tableau de la Carte de Programme (PMT) .6 Tableau de l’Accès Conditionnel (CAT) .7 Infrastructure de Testerman .8 Méthodes de tests .1 Services de Flamingo XL .2 Fenêtre de Qtesterman .3 Exemple de la bibliothèque utilisé dans le projet .4 Diagramme de développement d’un script ATS .1 Architecture du système IPTV. 34 ii LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Chapitre 1 Introduction Aujourd’hui, l’Internet est connu par tout le monde. Chaque personne l’utilise pour différent but, comme les études, les travaux et les divertissements, etc. Pour ces raisons, l’application Web a été développée afin de répondre aux besoins des utilisateurs.

Actuellement, il existe de nombreuses applications Web, qui sont souvent uti- lisés pour accéder à des services à distant. Parmi ces applications Web, il y en a des sites-web qui exigent d’avoir un haut niveau de sécurité, une correction des données et une consistance des informations, etc. par exemple : le site E-commerce, le site de la banque, etc. Par conséquent, le test devient très important pour ce genre d’application Web.

Normalement, le test d’application Web se fait par les humains. C’est-à-dire, ils testent l’application à la main. En conséquence, il y a une forte possibilité qu’ils fassent des erreurs ou ne respectent pas l’enchaı̂nement des étapes de test. Pour ces raisons, l’utilisation de test d’automatisation est développé.

Ce test utilise des scripts afin de vérifier des fonctionnalités et la qualité de l’application Web, comme : le temps d’attente est acceptable, la vue de page est correct dans différent navigateur Web, etc. Un des services qu’on peut adapter avec l’application Web est la distribution des chaı̂nes TV. Celle-là diffuse le multimédia (l’audio et le vidéo) sur l’adresse IP. En plus, on peut aussi distribuer des chaı̂nes de satellite vers le réseau local.

Donc, on n’a pas besoins d’installer pleins d’équipements pour pouvoir regarder des chaı̂nes diffusés par le satellite. Cette technologie est appelée IPTV (Internet Protocol Television) et OTT (Over-The-Top TV). 1 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.1 Anevia En 2003, Anevia est l’un des leader dans la création de l’infrastructure de logicielles pour la diffusion de la télévision en direct et à la demande. Les produits d’Anevia ont été déployés avec succès sur différents marchés tels que les médias, les opérateurs télécom Tier-1 et Tier-2 et dans de nombreuses entreprises privées ou publiques.

Anevia a commencé le développement de Vidéo dans le système CDN (Content Delivery Networks) qui offrent aux téléspectateurs la liberté de choisir ce qu’ils veulent regarder à la télévision, partout et à tout moment. Les solutions d’Anevia rendent les CDNs plus efficaces, tout en permettant aux opérateurs de réduire le stockage et la bande passante. Ces solutions sont par nature conçues pour offrir la meilleure expérience multi-écrans (NPVR, Timeshifting , OTT et/ou IPTV) à tous les utilisa- teurs. Sur le marché d’entreprise, les produits d’Anevia ont été déployés sur tous les continents par des centaines d’hôtels, d’établissements, d’enseignement, de sociétés privées, etc.

qui souhaitent diffuser de la vidéo en direct et à la demande.2 Flamingo XL Flamingo XL est l’un des produits d’Anevia qui est dédié au marché d’hospi- talité (hôpitaux, hôtels). Les solutions proposées permettent de diffuser sur le réseau local à la fois la télévision en direct et les contenus enregistrés. Après avoir reçu le si- gnal TV et celui de la radio en direct par satellite, par câble et numérique terrestre, le Flamingo XL les transfère sur des réseaux IP pour les ordinateurs, les set-top boxes, les téléviseurs modernes et toute autre appareil avec un accès réseau qui est relié avec le Flamingo XL. Nous pouvons se connecter à l’interface Web et de piloter le Flamingo XL en utilisant la connexion SSH.3 Contexte du travail Pour assurer la qualité du Flamingo XL, le test d’automatisation est adapté dans le projet.

Le script créé dans ce projet doit être réutiliser dans l’avenir afin de minimiser le temps du test. Le langage spécifique du projet est le Python. Les outils spécifiques du projet sont le Testerman et le Selenium-RC. Ces deux outils per- mettent de créer des tests automatisés avec l’application Web ; le Testerman est l’outil 2 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com principal qui gère l’exécution du test d’automatisation, et le Selenium-RC fonctionne comme un sonde permettant de lancer le test sur l’application Web.

Le développement du projet est divisé en 1. Compréhension du produit : Pour mieux comprendre et développer les scripts de test d’automatisation, nous devons bien comprendre les fonction- nalités et les services fournit par le produit sous test. Vérification des cas de test : Après avoir bien compris le produit, nous devons vérifier les cas de test reliés avec ce produit. Comme il existe plusieurs version de produit, donc nous devons valider les étapes dans les cas de test en raison d’assurer la cohérence entre le produit sous test et les cas de test utilisés.

S’il y a beaucoup de différent, il faut mettre à jour les cas de test. Conception de la structure du codage : Pour que le codage du projet sera bien saisi par tout le monde dans l’équipe, il est nécessaire de concevoir la structure des bibliothèques et des scripts de test. Ce-là peut nous aider à augmenter la qualité du codage, par exemple : éviter la duplication de la même fonctionnalité dans une bibliothèque. Installation des outils : Nous faisons la préparation de l’ordinateur, comme l’installation de plug-in Firebug et FirePath dans le navigateur Firefox, etc.

Développement des bibliothèques et des scripts de test d’automatisa- tion : Nous devons développer les bibliothèques en Python avant de les déployer dans les scripts de test d’automatisation.4 Problématique L’objectif général du projet est de transformer le cas de test du Flamingo XL environ 80% à utiliser les scripts du test d’automatisation. Pourtant, ces scripts doivent être réutiliser avec d’autres produits dans la famille de Flamingo (différente version ou plate-forme). Parfois, nous ne pouvons pas transformer le cas de test en script parce qu’il pourra provoquer des problèmes, par exemple : on peut simuler la rupture de la connexion avec la commande ”sudo ifconfig eth0 down”, mais cette commande peut inciter un problème de connexion sur le serveur. C’est-à-dire, on ne peut pas rétablir la connexion avec la commande à distance.

Donc, il faut éviter de transférer le cas de test comme ça en script. 3 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Chapitre 2 Bibliographie Dans cette partie, nous décrivons les informations reliée au test d’automatisa- tion dans le domaine du streaming. Premièrement, nous commençons par présenter le protocole IPTV qui nous permet de diffuser la vidéo de satellite vers le réseau. Deuxièmement, nous montrons les informations du flux de transport MPEG2 (TS MPEG2).

Troisiè-mement, nous abordons les outils de capture des trames. Qua- trièmement, on présente l’outil principal du projet qui nous permet de faire le test d’automatisation, le Testerman. Enfin, nous discutons sur les logiciels permettant de tester des applications Web.1 IPTV Dans [15], IPTV signifie ”Internet Protocol Television”, et n’importe quel utili- sateur avec un outil IP ,comme le smartphone peut obtenir le service IPTV n’importe où et à tout moment, tant que l’utilisateur peut accéder à l’Internet. Les architectures de système IPTV sont présentés dans la figure 2.

Cette dernière illustre les principaux composants d’un système IPTV : 1. Les serveurs d’acquisition : ils codent la vidéo et ajoutent des métadonnées de gestion des droits numériques (Digital Rights Management : DRM) 2.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ