Diplomarbeit, 2006
87 Seiten, Note: 1,4
1 Introduction
1.1 Agilent Technologies - Company Structure
1.2 Project Environment
1.3 Task Description
1.4 Strategic Approach
1.5 Structure of this Thesis
1.6 Time Schedule
2 Basic Concepts
2.1 Test Devices
2.2 GPIB
2.3 Programming Language
2.3.1 SCPI
2.3.2 .NET Framework
2.3.3 The Programming Language C#
2.4 Driver Library
2.5 XML
2.5.1 Basic Components of an XML Document
2.5.2 XML Schema
2.5.3 XPath
2.5.4 XML Transformation
2.6 Gnuplot
3 Implementation
3.1 Input Formats
3.1.1 The Test Suite XML File
3.1.2 The Test XML File
3.2 Perl Component
3.2.1 GetResourceString
3.2.2 GetOutputDir
3.2.3 GetTestSuiteName
3.2.4 GetTestName
3.2.5 SetParameter
3.2.6 GetParameter
3.2.7 Error
3.2.8 WriteLink
3.2.9 WriteText
3.2.10 Log
3.2.11 ShouldAbort
3.2.12 Wait
3.3 The Code
3.3.1 Windows Application
3.3.2 Class Library
3.3.3 Setup Project
3.4 Creation of the HTML test report
4 Validation
5 Usage of the GUI Tool
5.1 Setup
5.2 The GUI
5.3 Demo Test Suite
6 Future Prospects
The primary objective of this thesis is to design and implement an automated test framework for the firmware of a Pulse Generator, enhancing development quality and reducing error-detection time. The framework aims to be reusable by decoupling test definitions from the core software through XML-based test cases, thereby eliminating the need for code adjustments for future products.
3.1.2 The Test XML File
The test file contains the actual definition of a test; mainly these are the commands that will be sent to the instrument. The structure of a test file is defined by an XML schema called “input.xsd” which is also located in the installation directory. The root element of a test file is the “test” element. It must contain a “title” and a “description” element. Both elements contain a string and are used to identify the test. The title and description will also be displayed in the GUI when a test suite is loaded. After the “title” and “description” the “test” element can contain an arbitrary number of any of the following elements, which are described in detail below:
• scpi
• sweep
• stopwatch
• resultlog
• perlstatement
• perlfile
• comment
In the input file variables in the form of “$variable$” can be used. Some elements like the “send” and “stopwatch” can define these variables and other elements can use them. These variables can also be accessed within a Perl script.
1 Introduction: Provides an overview of the Agilent environment, the project scope, and the development schedule.
2 Basic Concepts: Covers the foundational technologies including SCPI, .NET, C#, VISA library, and XML structures used in the framework.
3 Implementation: Describes the design of the test framework, detailing XML input formats, the Perl component for scripting, and the internal .NET architecture.
4 Validation: Summarizes the testing and verification process for the developed framework.
5 Usage of the GUI Tool: Offers instructions on setting up and operating the graphical user interface for test execution.
6 Future Prospects: Identifies potential enhancements, such as adding a graphical editor and support for additional command sets.
Test Framework, Firmware Testing, Agilent Technologies, XML, C#, .NET Framework, SCPI, VISA, Pulse Generator, Automated Testing, GUI, Perl, Software Engineering, Validation, XML Transformation.
This work focuses on designing and implementing an automated test framework for the firmware of a new Pulse Generator at Agilent Technologies, facilitating more efficient testing through XML-based definitions.
The framework utilizes C# and the .NET framework for logic and GUI development, uses SCPI for instrument communication via VISA, and employs XML for test definition and report generation.
The objective is to enable software engineers to automatically test complex firmware, identify bugs earlier in the development lifecycle, and allow for easy reusability of tests across different products.
Tests are defined in external XML files, which include commands and queries for the instruments, eliminating the need to modify the compiled application code when creating new test cases.
The Perl component serves as an auxiliary tool that allows developers to execute custom code for tests that cannot be handled by standard elements within the XML framework.
The test results are saved in XML and transformed into a human-readable HTML document, which includes summary tables and dynamic content toggling for improved navigation and analysis.
The "sweep" element in the XML configuration allows for recursive, loop-like parameter testing, supporting both linear and logarithmic modes to determine valid value ranges.
The framework uses an "EndLoop" property and clean-up functions within the "ProcessTestThread" class to ensure that even when an abort is requested, the system terminates gracefully and preserves valid XML output.
Der GRIN Verlag hat sich seit 1998 auf die Veröffentlichung akademischer eBooks und Bücher spezialisiert. Der GRIN Verlag steht damit als erstes Unternehmen für User Generated Quality Content. Die Verlagsseiten GRIN.com, Hausarbeiten.de und Diplomarbeiten24 bieten für Hochschullehrer, Absolventen und Studenten die ideale Plattform, wissenschaftliche Texte wie Hausarbeiten, Referate, Bachelorarbeiten, Masterarbeiten, Diplomarbeiten, Dissertationen und wissenschaftliche Aufsätze einem breiten Publikum zu präsentieren.
Kostenfreie Veröffentlichung: Hausarbeit, Bachelorarbeit, Diplomarbeit, Dissertation, Masterarbeit, Interpretation oder Referat jetzt veröffentlichen!

