SlideShare a Scribd company logo
Flex Test: When You Care Enough to Test
The VERY BEST
Matthew J. Bradley
Bradley Technologies
December 28, 2016
1. Introduction
After developing tests (particularly in the RF industry) for over 20 years, I have come to some
conclusions that are probably not too surprising:
1) Software is usually not re-useable from project to project. If it is re-useable,it usually is not easy.
2) Software often changes dramatically throughout the product cycle. This is because different
equipment and often different objectives are involved in each step.
3) Data is usually not going to be in the format that you want.
4) Changing instruments requires nothing short of an act of Congress. I have seen people struggle
with 40 year old spectrum analyzers because no one wants to touch the software that runs the test
system.
5) Everyone says they want traceability. Almost no one will wait for it before going into
production.
Finally, everyone says they want to solve these problems. But no one actually wants to pay for the
solution or take the time to solve it and so it remains an issue.
As a result, I decided to develop the test framework that would overcome these problems. I have
implemented it with a few customers and they have been extremely pleased. I am expanding the types of
tests that it performs as well as the instruments supported. I hope you will consider it to meet your
engineering and production needs.
Please note that development was performed primarily in LabVIEW.
2. User Interface
Figure 1 shows the engineering interface, ready to perform a harmonics test. Instrument parameters,test
conditions, and limits are all stored in a configuration file. As a result, the exact same test can be called
from another test executive (such as TestStand). Furthermore, by using multiple configuration files,
different conditions or limits can be tested with the same software.
Figure 1: Flex Test showing the engineering interface forthe Harmonics Test. Note that although the plot legend
indicates that the one half harmonic(and limit) will be tested, the actual harmonics testedwill be determinedby the
configuration file.
Tabs for additional tests (such as RF calibration, Gain Compression, S Parameters,and more) are also
shown. This enables the operator to switch between tests as needed for hardware validation and
verification, repair, or other tasks as needed.
It may be desirable, however, to have the ability to queue up severaltests and run them consecutively.
This can be done through the Multi Test tab, as shown in figure 2.
Figure 2: Not only does this allowthe operator to setupa list of tests to run, note that it also gives you the option to set a
warm up time before executing each test.
In addition, some tests simply take a long time to execute. Generally, this requires operators to frequently
check on systems to determine if the tests have completed, failed, or stopped executing. Failure to check
on these systems can lead to lower test system utilization. But, with Flex Test,this does not have to be a
problem. Text messages can be sent to groups of users to notify them when tests pass,fail, or abort. In
my experience, operators appreciate this feature most of all.
Naturally, the tests themselves re-use a great deal of code. Furthermore, they are highly structured. This
decreases development time dramatically. Typically, a new test can be built and ready to go in two days.
This is even true for custom tests that are specific to a single product. Existing tests (such as the
harmonics test shown below) require even less time to verify.
3. TestConfiguration
Configuring the tests is straightforward. For example, configuration screens for the harmonics test are
shown in figures 3 and 4. Other tests have similar appearances. This is separated from the test interface
to give our clients more control over who can change configuration files.
Figure 3: Although the format of configuration files can be customizedas needed, we have triedto make them as general
as possible. For example, multiple frequency bands can be specifiedas shown and the Harmonics measurement cluster
(in the lower left) can have piecewise linearlimits.
Figure 4: This is the same as figure 3, but in this case we are showing that we can test for more than one harmonic at a
time. In figure 3, we showed the half harmonicwhereas in this case we are showing the first harmonic. There is no limit
to the number that can be tested.
4. Output Data Files
When I have shown this in the past, the next question that is normally asked concerns the output. There
are actually a number of files that are created,including:
 Copies of all RF calibrations
 The configuration file
 A record of all instruments (including model numbers and serial numbers)
 The raw data (in Excel compatible format)
 A summary file (for some tests,also in Excel compatible format)
 A PDF report (optional). This is typically distributed to customers.
All of these files are placed in the same folder which is specific to the UUT model number, serial number,
and the test time. The configuration file and calibration file are stored so that tests can be analyzed or
repeated even if the configuration changes or the system is re-calibrated.
A page from a sample report is shown in figure 5. Reports are frequently customized to individual client
and customer needs. We take special care to ensure that the reports are precisely what you want and
need.
Figure 5: One sample page of a test report. Reports are created from the data files, typically using VBA, and are
publishedto PDF format. Frequently, they include a mix of both plots and text data. We have found that our clients’
customers have been very pleasedwith both the level of detail and the clarity of presentation.
5. Instrument Drivers
I have also taken special care in the architecture of the instrument drivers that are used by Flex Test. As
stated earlier, the inability to easily change instruments to meet new requirements can present major
obstacles to the success of software. Quite frankly, I have found that many of the available drivers are not
adequate. Although there are some exceptions, many do not include the functionality that I need or have
significant errors. For example, I know of one oscilloscope driver that sets both the time per division as
well as the time for the entire sweep within the same vi. Which takes precedence when they conflict?
More importantly, why would you have one vi for both?
As a result, I have abstracted the instrument architecture. As an example, let us consider a spectrum
analyzer. From the perspective of the harmonics test,we do not set the center frequency for a specific
model. Rather,we simply set it for a generic spectrum analyzer. The code determines which spectrum
analyzer is being used and sends the appropriate commands. Without dwelling on too many details, rest
assured that it is fast and can support multiple instruments of the same type in the same test (such as
power supplies).
There is always (or at least should be!) concern, however, when replacing instruments in terms of
capabilities. I once came across a test system where they had replaced a spectrum analyzer with a
different model but did not realize that the new model could not operate at the same resolution bandwidth
settings as the old. This caused enormous problems for them. As a result, our instrument drivers have a
“Verify” mode. When turned on, this will check each setting as it is made and confirm that the
instrument is configured properly. It will also check to see if there are any error conditions present on the
instrument. This can be turned on or off quite easily. I usually leave it on, but have turned it off if it
impacts test time.
Finally, software developers often find that the instruments they need are unavailable. RF
instrumentation can be quite expensive and the equipment may be needed elsewhere. Therefore,our
instrument drivers have a “Live” mode option. When turned on, commands and queries will be sent to
the instruments. When turned off, they are not – but work can continue for the rest of the test. This can
be set for individual instruments or for all instruments in a system.
6. Conclusion
Not surprisingly, there are more details than I could discuss in this description. Some would be technical
in nature whereas others would be financial.
I would appreciate hearing from you. In particular, I am interested in:
 Which instruments do you need supported?
 What tests would you like to see?
 What other features would you want to include?
Please feelfree to send them to me at mbradley@brad-tech.com or call me at (707) 837-2893.
Flex Test

More Related Content

What's hot

types of testing in software engineering
types of testing in software engineering types of testing in software engineering
types of testing in software engineering
preetikapri1
 
System testing
System testingSystem testing
System testing
Slideshare
 
Junit4.0
Junit4.0Junit4.0
Junit4.0
gouthamrv
 
12 functional-system-testing
12 functional-system-testing12 functional-system-testing
12 functional-system-testing
nickynicks76
 
SE2018_Lec 20_ Test-Driven Development (TDD)
SE2018_Lec 20_ Test-Driven Development (TDD)SE2018_Lec 20_ Test-Driven Development (TDD)
SE2018_Lec 20_ Test-Driven Development (TDD)
Amr E. Mohamed
 
System testing
System testingSystem testing
System testing
Mani Kanth
 
Sample test-plan-template
Sample test-plan-templateSample test-plan-template
Sample test-plan-template
Dell R&D Center, Bangalore
 
Unit testing
Unit testingUnit testing
Unit testing
princezzlove
 
Basics of QTP Framework
Basics of QTP FrameworkBasics of QTP Framework
Basics of QTP Framework
Anish10110
 
Model–driven system testing service oriented systems
Model–driven system testing service oriented systemsModel–driven system testing service oriented systems
Model–driven system testing service oriented systems
Rifad Mohamed
 
Test driven development and unit testing with examples in C++
Test driven development and unit testing with examples in C++Test driven development and unit testing with examples in C++
Test driven development and unit testing with examples in C++
Hong Le Van
 
Class17
Class17Class17
Class17
makesame
 
Unit Testing in PHP
Unit Testing in PHPUnit Testing in PHP
Unit Testing in PHP
Radu Murzea
 
Black Box Testing
Black Box TestingBlack Box Testing
Black Box Testing
Nivetha Padmanaban
 
Testcase definition
Testcase definitionTestcase definition
Testcase definition
Oana Feidi
 
It's Not a Bug, It's a Feature — How Misclassification Impacts Bug Prediction
It's Not a Bug, It's a Feature — How Misclassification Impacts Bug PredictionIt's Not a Bug, It's a Feature — How Misclassification Impacts Bug Prediction
It's Not a Bug, It's a Feature — How Misclassification Impacts Bug Prediction
sjust
 
The Impact of Test Ownership and Team Structure on the Reliability and Effect...
The Impact of Test Ownership and Team Structure on the Reliability and Effect...The Impact of Test Ownership and Team Structure on the Reliability and Effect...
The Impact of Test Ownership and Team Structure on the Reliability and Effect...
Kim Herzig
 
Black-Box
Black-BoxBlack-Box
Black-Box
Jason Brown, PMP
 
6months industrial training in software testing, jalandhar
6months industrial training in software testing, jalandhar6months industrial training in software testing, jalandhar
6months industrial training in software testing, jalandhar
deepikakaler1
 
6 weeks summer training in software testing,jalandhar
6 weeks summer training in software testing,jalandhar6 weeks summer training in software testing,jalandhar
6 weeks summer training in software testing,jalandhar
deepikakaler1
 

What's hot (20)

types of testing in software engineering
types of testing in software engineering types of testing in software engineering
types of testing in software engineering
 
System testing
System testingSystem testing
System testing
 
Junit4.0
Junit4.0Junit4.0
Junit4.0
 
12 functional-system-testing
12 functional-system-testing12 functional-system-testing
12 functional-system-testing
 
SE2018_Lec 20_ Test-Driven Development (TDD)
SE2018_Lec 20_ Test-Driven Development (TDD)SE2018_Lec 20_ Test-Driven Development (TDD)
SE2018_Lec 20_ Test-Driven Development (TDD)
 
System testing
System testingSystem testing
System testing
 
Sample test-plan-template
Sample test-plan-templateSample test-plan-template
Sample test-plan-template
 
Unit testing
Unit testingUnit testing
Unit testing
 
Basics of QTP Framework
Basics of QTP FrameworkBasics of QTP Framework
Basics of QTP Framework
 
Model–driven system testing service oriented systems
Model–driven system testing service oriented systemsModel–driven system testing service oriented systems
Model–driven system testing service oriented systems
 
Test driven development and unit testing with examples in C++
Test driven development and unit testing with examples in C++Test driven development and unit testing with examples in C++
Test driven development and unit testing with examples in C++
 
Class17
Class17Class17
Class17
 
Unit Testing in PHP
Unit Testing in PHPUnit Testing in PHP
Unit Testing in PHP
 
Black Box Testing
Black Box TestingBlack Box Testing
Black Box Testing
 
Testcase definition
Testcase definitionTestcase definition
Testcase definition
 
It's Not a Bug, It's a Feature — How Misclassification Impacts Bug Prediction
It's Not a Bug, It's a Feature — How Misclassification Impacts Bug PredictionIt's Not a Bug, It's a Feature — How Misclassification Impacts Bug Prediction
It's Not a Bug, It's a Feature — How Misclassification Impacts Bug Prediction
 
The Impact of Test Ownership and Team Structure on the Reliability and Effect...
The Impact of Test Ownership and Team Structure on the Reliability and Effect...The Impact of Test Ownership and Team Structure on the Reliability and Effect...
The Impact of Test Ownership and Team Structure on the Reliability and Effect...
 
Black-Box
Black-BoxBlack-Box
Black-Box
 
6months industrial training in software testing, jalandhar
6months industrial training in software testing, jalandhar6months industrial training in software testing, jalandhar
6months industrial training in software testing, jalandhar
 
6 weeks summer training in software testing,jalandhar
6 weeks summer training in software testing,jalandhar6 weeks summer training in software testing,jalandhar
6 weeks summer training in software testing,jalandhar
 

Viewers also liked

December 16 (education)
December 16 (education)December 16 (education)
December 16 (education)
AIMEC Reporter
 
Preciosa Factura
Preciosa FacturaPreciosa Factura
Preciosa Factura
Parroquialainmaculada
 
CASE HISTORY KEY EVENT
CASE HISTORY KEY EVENTCASE HISTORY KEY EVENT
CASE HISTORY KEY EVENT
Key Event s.a.s
 
Epidote group
Epidote groupEpidote group
Epidote group
Abhilasha Konwar
 
GiPS ancestor (2010)
GiPS ancestor (2010)GiPS ancestor (2010)
GiPS ancestor (2010)
Alessandro Fanna
 
Unidad educativa
Unidad educativaUnidad educativa
Unidad educativa
LuisaRosales29
 
NDWC Chennai 2013 - Canine Polulation Control Preventive Oncology & Human Car...
NDWC Chennai 2013 - Canine Polulation Control Preventive Oncology & Human Car...NDWC Chennai 2013 - Canine Polulation Control Preventive Oncology & Human Car...
NDWC Chennai 2013 - Canine Polulation Control Preventive Oncology & Human Car...
Dogs Trust
 
Pyometra
PyometraPyometra
Pyometra
ivsdsm
 
Www.nicepps.ro 16692 poluarea apei nicepps
Www.nicepps.ro 16692 poluarea apei niceppsWww.nicepps.ro 16692 poluarea apei nicepps
Www.nicepps.ro 16692 poluarea apei nicepps
Cristina Borș
 
Analgésicos
AnalgésicosAnalgésicos
Analgésicos
Daniel zxcv
 
Planos y-ángulos-en-cinematográficosMETA4.2
Planos y-ángulos-en-cinematográficosMETA4.2Planos y-ángulos-en-cinematográficosMETA4.2
Planos y-ángulos-en-cinematográficosMETA4.2
brianjass
 

Viewers also liked (11)

December 16 (education)
December 16 (education)December 16 (education)
December 16 (education)
 
Preciosa Factura
Preciosa FacturaPreciosa Factura
Preciosa Factura
 
CASE HISTORY KEY EVENT
CASE HISTORY KEY EVENTCASE HISTORY KEY EVENT
CASE HISTORY KEY EVENT
 
Epidote group
Epidote groupEpidote group
Epidote group
 
GiPS ancestor (2010)
GiPS ancestor (2010)GiPS ancestor (2010)
GiPS ancestor (2010)
 
Unidad educativa
Unidad educativaUnidad educativa
Unidad educativa
 
NDWC Chennai 2013 - Canine Polulation Control Preventive Oncology & Human Car...
NDWC Chennai 2013 - Canine Polulation Control Preventive Oncology & Human Car...NDWC Chennai 2013 - Canine Polulation Control Preventive Oncology & Human Car...
NDWC Chennai 2013 - Canine Polulation Control Preventive Oncology & Human Car...
 
Pyometra
PyometraPyometra
Pyometra
 
Www.nicepps.ro 16692 poluarea apei nicepps
Www.nicepps.ro 16692 poluarea apei niceppsWww.nicepps.ro 16692 poluarea apei nicepps
Www.nicepps.ro 16692 poluarea apei nicepps
 
Analgésicos
AnalgésicosAnalgésicos
Analgésicos
 
Planos y-ángulos-en-cinematográficosMETA4.2
Planos y-ángulos-en-cinematográficosMETA4.2Planos y-ángulos-en-cinematográficosMETA4.2
Planos y-ángulos-en-cinematográficosMETA4.2
 

Similar to Flex Test

Manual testing interview questions
Manual testing interview questionsManual testing interview questions
Manual testing interview questions
BABAR MANZAR
 
Automation White Paper V2
Automation White Paper V2Automation White Paper V2
Automation White Paper V2
Mark Blair
 
Testing Presentation
Testing PresentationTesting Presentation
Testing Presentation
sureshpkumar
 
Fitnesse, Watir and Ruby Based Test Automation System
Fitnesse, Watir and Ruby Based Test Automation SystemFitnesse, Watir and Ruby Based Test Automation System
Fitnesse, Watir and Ruby Based Test Automation System
Harbinger Systems - HRTech Builder of Choice
 
ISTQB / ISEB Foundation Exam Practice -1
ISTQB / ISEB Foundation Exam Practice -1ISTQB / ISEB Foundation Exam Practice -1
ISTQB / ISEB Foundation Exam Practice -1
Yogindernath Gupta
 
Performance testing and j meter
Performance testing and j meterPerformance testing and j meter
Performance testing and j meter
Purna Chandar
 
Testing Software Solutions
Testing Software SolutionsTesting Software Solutions
Testing Software Solutions
gavhays
 
Performance testing checklist.pdf
Performance testing checklist.pdfPerformance testing checklist.pdf
Performance testing checklist.pdf
AnuSelvaraj2
 
ISTQB, ISEB Lecture Notes
ISTQB, ISEB Lecture NotesISTQB, ISEB Lecture Notes
ISTQB, ISEB Lecture Notes
onsoftwaretest
 
Performance Test Plan - Sample 1
Performance Test Plan - Sample 1Performance Test Plan - Sample 1
Performance Test Plan - Sample 1
Atul Pant
 
Configuration testing
Configuration testingConfiguration testing
Configuration testing
farouq umar
 
Apachejmeterabriefintroduction
ApachejmeterabriefintroductionApachejmeterabriefintroduction
Apachejmeterabriefintroduction
Foredoomed
 
MBT_Installers_Dev_Env
MBT_Installers_Dev_EnvMBT_Installers_Dev_Env
MBT_Installers_Dev_Env
Chris Struble
 
Manual testing visonia
Manual testing   visoniaManual testing   visonia
Manual testing visonia
VisoniaTechlab
 
End to-end root cause analysis minimize the time to incident resolution
End to-end root cause analysis minimize the time to incident resolutionEnd to-end root cause analysis minimize the time to incident resolution
End to-end root cause analysis minimize the time to incident resolution
Cleo Filho
 
manual-testing
manual-testingmanual-testing
manual-testing
Kanak Mane
 
Workshop BI/DWH AGILE TESTING SNS Bank English
Workshop BI/DWH AGILE TESTING SNS Bank EnglishWorkshop BI/DWH AGILE TESTING SNS Bank English
Workshop BI/DWH AGILE TESTING SNS Bank English
Marcus Drost
 
Getting started with_testcomplete
Getting started with_testcompleteGetting started with_testcomplete
Getting started with_testcomplete
ankit.das
 
Database performance management
Database performance managementDatabase performance management
Database performance management
scottaver
 
Sd Revision
Sd RevisionSd Revision
Sd Revision
mrsmackenzie
 

Similar to Flex Test (20)

Manual testing interview questions
Manual testing interview questionsManual testing interview questions
Manual testing interview questions
 
Automation White Paper V2
Automation White Paper V2Automation White Paper V2
Automation White Paper V2
 
Testing Presentation
Testing PresentationTesting Presentation
Testing Presentation
 
Fitnesse, Watir and Ruby Based Test Automation System
Fitnesse, Watir and Ruby Based Test Automation SystemFitnesse, Watir and Ruby Based Test Automation System
Fitnesse, Watir and Ruby Based Test Automation System
 
ISTQB / ISEB Foundation Exam Practice -1
ISTQB / ISEB Foundation Exam Practice -1ISTQB / ISEB Foundation Exam Practice -1
ISTQB / ISEB Foundation Exam Practice -1
 
Performance testing and j meter
Performance testing and j meterPerformance testing and j meter
Performance testing and j meter
 
Testing Software Solutions
Testing Software SolutionsTesting Software Solutions
Testing Software Solutions
 
Performance testing checklist.pdf
Performance testing checklist.pdfPerformance testing checklist.pdf
Performance testing checklist.pdf
 
ISTQB, ISEB Lecture Notes
ISTQB, ISEB Lecture NotesISTQB, ISEB Lecture Notes
ISTQB, ISEB Lecture Notes
 
Performance Test Plan - Sample 1
Performance Test Plan - Sample 1Performance Test Plan - Sample 1
Performance Test Plan - Sample 1
 
Configuration testing
Configuration testingConfiguration testing
Configuration testing
 
Apachejmeterabriefintroduction
ApachejmeterabriefintroductionApachejmeterabriefintroduction
Apachejmeterabriefintroduction
 
MBT_Installers_Dev_Env
MBT_Installers_Dev_EnvMBT_Installers_Dev_Env
MBT_Installers_Dev_Env
 
Manual testing visonia
Manual testing   visoniaManual testing   visonia
Manual testing visonia
 
End to-end root cause analysis minimize the time to incident resolution
End to-end root cause analysis minimize the time to incident resolutionEnd to-end root cause analysis minimize the time to incident resolution
End to-end root cause analysis minimize the time to incident resolution
 
manual-testing
manual-testingmanual-testing
manual-testing
 
Workshop BI/DWH AGILE TESTING SNS Bank English
Workshop BI/DWH AGILE TESTING SNS Bank EnglishWorkshop BI/DWH AGILE TESTING SNS Bank English
Workshop BI/DWH AGILE TESTING SNS Bank English
 
Getting started with_testcomplete
Getting started with_testcompleteGetting started with_testcomplete
Getting started with_testcomplete
 
Database performance management
Database performance managementDatabase performance management
Database performance management
 
Sd Revision
Sd RevisionSd Revision
Sd Revision
 

Flex Test

  • 1. Flex Test: When You Care Enough to Test The VERY BEST Matthew J. Bradley Bradley Technologies December 28, 2016 1. Introduction After developing tests (particularly in the RF industry) for over 20 years, I have come to some conclusions that are probably not too surprising: 1) Software is usually not re-useable from project to project. If it is re-useable,it usually is not easy. 2) Software often changes dramatically throughout the product cycle. This is because different equipment and often different objectives are involved in each step. 3) Data is usually not going to be in the format that you want. 4) Changing instruments requires nothing short of an act of Congress. I have seen people struggle with 40 year old spectrum analyzers because no one wants to touch the software that runs the test system. 5) Everyone says they want traceability. Almost no one will wait for it before going into production. Finally, everyone says they want to solve these problems. But no one actually wants to pay for the solution or take the time to solve it and so it remains an issue. As a result, I decided to develop the test framework that would overcome these problems. I have implemented it with a few customers and they have been extremely pleased. I am expanding the types of tests that it performs as well as the instruments supported. I hope you will consider it to meet your engineering and production needs. Please note that development was performed primarily in LabVIEW. 2. User Interface Figure 1 shows the engineering interface, ready to perform a harmonics test. Instrument parameters,test conditions, and limits are all stored in a configuration file. As a result, the exact same test can be called from another test executive (such as TestStand). Furthermore, by using multiple configuration files, different conditions or limits can be tested with the same software.
  • 2. Figure 1: Flex Test showing the engineering interface forthe Harmonics Test. Note that although the plot legend indicates that the one half harmonic(and limit) will be tested, the actual harmonics testedwill be determinedby the configuration file. Tabs for additional tests (such as RF calibration, Gain Compression, S Parameters,and more) are also shown. This enables the operator to switch between tests as needed for hardware validation and verification, repair, or other tasks as needed.
  • 3. It may be desirable, however, to have the ability to queue up severaltests and run them consecutively. This can be done through the Multi Test tab, as shown in figure 2. Figure 2: Not only does this allowthe operator to setupa list of tests to run, note that it also gives you the option to set a warm up time before executing each test. In addition, some tests simply take a long time to execute. Generally, this requires operators to frequently check on systems to determine if the tests have completed, failed, or stopped executing. Failure to check on these systems can lead to lower test system utilization. But, with Flex Test,this does not have to be a problem. Text messages can be sent to groups of users to notify them when tests pass,fail, or abort. In my experience, operators appreciate this feature most of all. Naturally, the tests themselves re-use a great deal of code. Furthermore, they are highly structured. This decreases development time dramatically. Typically, a new test can be built and ready to go in two days. This is even true for custom tests that are specific to a single product. Existing tests (such as the harmonics test shown below) require even less time to verify.
  • 4. 3. TestConfiguration Configuring the tests is straightforward. For example, configuration screens for the harmonics test are shown in figures 3 and 4. Other tests have similar appearances. This is separated from the test interface to give our clients more control over who can change configuration files. Figure 3: Although the format of configuration files can be customizedas needed, we have triedto make them as general as possible. For example, multiple frequency bands can be specifiedas shown and the Harmonics measurement cluster (in the lower left) can have piecewise linearlimits.
  • 5. Figure 4: This is the same as figure 3, but in this case we are showing that we can test for more than one harmonic at a time. In figure 3, we showed the half harmonicwhereas in this case we are showing the first harmonic. There is no limit to the number that can be tested. 4. Output Data Files When I have shown this in the past, the next question that is normally asked concerns the output. There are actually a number of files that are created,including:  Copies of all RF calibrations  The configuration file  A record of all instruments (including model numbers and serial numbers)  The raw data (in Excel compatible format)  A summary file (for some tests,also in Excel compatible format)  A PDF report (optional). This is typically distributed to customers. All of these files are placed in the same folder which is specific to the UUT model number, serial number, and the test time. The configuration file and calibration file are stored so that tests can be analyzed or repeated even if the configuration changes or the system is re-calibrated.
  • 6. A page from a sample report is shown in figure 5. Reports are frequently customized to individual client and customer needs. We take special care to ensure that the reports are precisely what you want and need. Figure 5: One sample page of a test report. Reports are created from the data files, typically using VBA, and are publishedto PDF format. Frequently, they include a mix of both plots and text data. We have found that our clients’ customers have been very pleasedwith both the level of detail and the clarity of presentation.
  • 7. 5. Instrument Drivers I have also taken special care in the architecture of the instrument drivers that are used by Flex Test. As stated earlier, the inability to easily change instruments to meet new requirements can present major obstacles to the success of software. Quite frankly, I have found that many of the available drivers are not adequate. Although there are some exceptions, many do not include the functionality that I need or have significant errors. For example, I know of one oscilloscope driver that sets both the time per division as well as the time for the entire sweep within the same vi. Which takes precedence when they conflict? More importantly, why would you have one vi for both? As a result, I have abstracted the instrument architecture. As an example, let us consider a spectrum analyzer. From the perspective of the harmonics test,we do not set the center frequency for a specific model. Rather,we simply set it for a generic spectrum analyzer. The code determines which spectrum analyzer is being used and sends the appropriate commands. Without dwelling on too many details, rest assured that it is fast and can support multiple instruments of the same type in the same test (such as power supplies). There is always (or at least should be!) concern, however, when replacing instruments in terms of capabilities. I once came across a test system where they had replaced a spectrum analyzer with a different model but did not realize that the new model could not operate at the same resolution bandwidth settings as the old. This caused enormous problems for them. As a result, our instrument drivers have a “Verify” mode. When turned on, this will check each setting as it is made and confirm that the instrument is configured properly. It will also check to see if there are any error conditions present on the instrument. This can be turned on or off quite easily. I usually leave it on, but have turned it off if it impacts test time. Finally, software developers often find that the instruments they need are unavailable. RF instrumentation can be quite expensive and the equipment may be needed elsewhere. Therefore,our instrument drivers have a “Live” mode option. When turned on, commands and queries will be sent to the instruments. When turned off, they are not – but work can continue for the rest of the test. This can be set for individual instruments or for all instruments in a system. 6. Conclusion Not surprisingly, there are more details than I could discuss in this description. Some would be technical in nature whereas others would be financial. I would appreciate hearing from you. In particular, I am interested in:  Which instruments do you need supported?  What tests would you like to see?  What other features would you want to include? Please feelfree to send them to me at mbradley@brad-tech.com or call me at (707) 837-2893.