Search NASASearch

SEARCH · Search NASA

Results for “software testing”

Search indexed NASA NTRS and DOE OSTI research on propulsion, heat transfer, battery materials and energy systems. Follow report and document links to the original sources.

Quote a phrase for an exact phrase match. Source license links do not imply unrestricted reuse.

At least 55 records · Page 3

Single Board Computer Radiation Test Results and Radiation Test Software

Single Board Computers (SBCs) are quickly evolving and gaining capability as their cost comes down. As their footprints, cost, and power requirements decrease, their processing power increases. This makes them very attractive for use on space missions and an enabling technology as spacecraft size decreases and computational demand increases. One of the major challenges electronics face in the space environment is radiation. In 2019, the NASA Johnson Space Center (JSC) tested a selection of SBCs to low Earth orbit (LEO) radiation levels and evaluated their susceptibility and survivability. For this test campaign, JSC developed a Python software suite to better characterize the SBCs performance and intends to share the software.

Pedrotty, Samuel M.

Loran-C flight test software

The software package developed for the KIM-1 Micro-System and the Mini-L PLL receiver to simplify taking flight test data is described along with the address and data bus buffers used in the KIM-1 Micro-system. The interface hardware and timing are also presented to describe completely the software programs.

Nickum, J. D.

Risk-Based Object Oriented Testing

Software testing is a well-defined phase of the software development life cycle. Functional ("black box") testing and structural ("white box") testing are two methods of test case design commonly used by software developers. A lesser known testing method is risk-based testing, which takes into account the probability of failure of a portion of code as determined by its complexity. For object oriented programs, a methodology is proposed for identification of risk-prone classes. Risk-based testing is a highly effective testing technique that can be used to find and fix the most important problems as quickly as possible.

Rosenberg, Linda H.

Orbit Determination and Navigation Software Testing for the Mars Reconnaissance Orbiter

During the extended science phase of the Mars Reconnaissance Orbiter's lifecycle, the operational duties pertaining to navigation primarily involve orbit determination. The orbit determination process utilizes radiometric tracking data and is used for the prediction and reconstruction of MRO's trajectories. Predictions are done twice per week for ephemeris updates on-board the spacecraft and for planning purposes. Orbit Trim Maneuvers (OTM-s) are also designed using the predicted trajectory. Reconstructions, which incorporate a batch estimator, provide precise information about the spacecraft state to be synchronized with scientific measurements. These tasks were conducted regularly to validate the results obtained by the MRO Navigation Team. Additionally, the team is in the process of converting to newer versions of the navigation software and operating system. The capability to model multiple densities in the Martian atmosphere is also being implemented. However, testing outputs among these different configurations was necessary to ensure compliance to a satisfactory degree.

Deep Space Network

QUEST/Ada: Query utility environment for software testing of Ada

Results of research and development efforts are presented for Task 1, Phase 2 of a general project entitled, The Development of a Program Analysis Environment for Ada. A prototype of the QUEST/Ada system was developed to collect data to determine the effectiveness of the rule-based testing paradigm. The prototype consists of five parts: the test data generator, the parser/scanner, the test coverage analyzer, a symbolic evaluator, and a data management facility, known as the Librarian. These components are discussed at length. Also presented is an experimental design for the evaluations, an overview of the project, and a schedule for its completion.

Brown, David B.

QUEST/Ada (query utility environment for software testing of Ada: The development of a program analysis environment for Ada, task 1, phase 3

The results of research and development efforts of the first six months of Task 1, Phase 3 of the project are presented. The goals of Phase 3 are: (1) to further refine the rule base and complete the comparative rule base evaluation; (2) to implement and evaluate a concurrency testing prototype; (3) to convert the complete (unit-level and concurrency) testing prototype to a workstation environment; and (4) to provide a prototype development document to facilitate the transfer of research technology to a working environment. These goals were partially met and the results are summarized.

Brown, David B.

A Survey of New Trends in Symbolic Execution for Software Testing and Analysis

Symbolic execution is a well-known program analysis technique which represents values of program inputs with symbolic values instead of concrete (initialized) data and executes the program by manipulating program expressions involving the symbolic values. Symbolic execution has been proposed over three decades ago but recently it has found renewed interest in the research community, due in part to the progress in decision procedures, availability of powerful computers and new algorithmic developments. We provide a survey of some of the new research trends in symbolic execution, with particular emphasis on applications to test generation and program analysis. We first describe an approach that handles complex programming constructs such as input data structures, arrays, as well as multi-threading. We follow with a discussion of abstraction techniques that can be used to limit the (possibly infinite) number of symbolic configurations that need to be analyzed for the symbolic execution of looping programs. Furthermore, we describe recent hybrid techniques that combine concrete and symbolic execution to overcome some of the inherent limitations of symbolic execution, such as handling native code or availability of decision procedures for the application domain. Finally, we give a short survey of interesting new applications, such as predictive testing, invariant inference, program repair, analysis of parallel numerical programs and differential symbolic execution.

Pasareanu, Corina S.

Testing Scientific Software: Challenges and Remedies

Over the past two decades, the emergence of highly effective software testing frameworks has greatly simplified the development and use of unit tests and has led to new software development paradigms such as test driven development (TDD). However, scientific computing introduces a number of unique testing challenges, including numerical algorithms, distributed parallelism, and exascale environments. This presentation will begin with a brief introduction to unit testing, testing frameworks, and some simple examples using pFUnit, a unit testing framework for Fortran + MPI. I will then take a closer look at several of the obstacles one faces when testing technical software and suggest methodologies that can mitigate these difficulties.

Clune, Tom

Testing Fortran Software with pFunit

Over the past two decades, the emergence of highly effective software testing frameworks has greatly simplified the development and use of unit tests and has led to new software development paradigms such as test driven development (TDD). However, technical computing introduces a number of unique testing challenges, including distributed parallelism and numerical accuracy. This webinar will begin with a basic introduction to the use of pFUnit (parallel Fortran Unit testing framework) to develop tests for Message Passing Interface (MPI) plus Fortran (MPI+Fortran) software and then present some of the new capabilities in the latest release. We will also discuss some specialized methodologies for testing numerical algorithms and speculate about future framework capabilities that may improve our ability to test at exascale.

Clune, Tom

Airborne antenna pattern calculations

Progress on the development of modeling software, testing software against caclulated data from program VPAP and measured patterns, and calculating roll plane patterns for general aviation aircraft is reported. Major objectives are the continued development of computer software for aircraft modeling and use of this software and program OSUVOL to calculate principal plane and volumetric radiation patterns. The determination of proper placement of antennas on aircraft to meet the requirements of the Microwave Landing System is discussed. An overview of the performed work, and an example of a roll plane model for the Piper PA-31T Cheyenne aircraft and the resulting calculated roll plane radiation pattern are included.

Knerr, T. J.

A Method of Partly Automated Testing of Software

A method of automated testing of software has been developed that provides an alternative to the conventional mostly manual approach for software testing. The method combines (1) automated generation of test cases on the basis of systematic exploration of the input domain of the software to be tested with (2) run-time analysis in which execution traces are monitored, verified against temporal-logic specifications, and analyzed by concurrency-error-detection algorithms. In this new method, the user only needs to provide the temporal logic specifications against which the software will be tested and the abstract description of the input domain.

Lowry, Mike

Development and Testing of Automatically Generated ACS Flight Software for the MAP Spacecraft

By integrating the attitude determination and control system (ACS) analysis and design, flight software development, and flight software testing processes, it is possible to improve the overall spacecraft development cycle, as well as allow for more thorough software testing. One of the ways to achieve this integration is to use code-generation tools to automatically generate components of the ACS flight software directly from a high-fidelity (HiFi) simulation. In the development of the Microwave Anisotropy Probe (MAP) spacecraft, currently underway at the NASA Goddard Space Flight Center, approximately 1/3 of the ACS flight software was automatically generated. In this paper, we will examine each phase of the ACS subsystem and flight software design life cycle: analysis, design, and testing. In the analysis phase, we scoped how much software we would automatically generate and created the initial interface. The design phase included parallel development of the HiFi simulation and the hand-coded flight software components. Everything came together in the test phase, in which the flight software was tested, using results from the HiFi simulation as one of the bases of comparison for testing. Because parts of the spacecraft HiFi simulation were converted into flight software, more care needed to be put into its development and configuration control to support both the HiFi simulation and flight software. The components of the HiFi simulation from which code was generated needed to be designed based on the fact that they would become flight software. This process involved such considerations as protecting against mathematical exceptions, using acceptable module and parameter naming conventions, and using an input/output interface compatible with the rest of the flight software. Maintaining good configuration control was an issue for the HiFi simulation and the flight software, and a way to track the two systems was devised. Finally, an integrated test approach was devised to support flight software testing at both the unit- and build-test levels using the HiFi simulation to generate data for performance verification. Another benefit of the simulation and code-generation application used on the MAP project is that it supported bringing flight software and test data into the HiFi simulation environment. It was possible to integrate parts of the hand-coded flight software into the HiFi simulation, and also possible to import flight software test data for comparison and performance verification. This capability was used to incorporate the flight software Kalman filter into the HiFi simulation. This enabled us to greatly increase the amount of testing that could be done on the filter, because we could exert a greater degree of control over the software-only simulation than over the flight software test environment. Also, since the simulation could be used to run the Kalman filter faster than real time, our testing efficiency was greatly increased. We will conclude our discussion with a summary of the lessons learned thus far using automatically- generated code for the MAP project, and the spacecraft status as we work towards our scheduled launch in the year 2000.

ODonnell, James R., Jr.

Software For Uniaxial Mechanical Testing Of Materials

Materials Testing Software system designed to simplify and automate both routine and not-so-routine materials-testing tasks encountered in laboratory. Supports plan/test/analyze cycle through collection of programs, each optimized to specific task. Gives precise control over nature of command waveforms and acquisition of data, including dynamically variable waveform types, sets of data-acquisition channels, and data rates. Differing command and data-acquisition rates required for exploring creep and fatigue material behavior easily accommodated. Written in Modula-2.

Mcgaw, M. A.

SMAnalytics Automated Shape Memory Test Analysis Software User's Manual: UCFTC, UPER, and DSC Test Methods, Version 1.0.2

Over the course of 60 years of shape memory alloy research and development, the properties of these alloys have been measured using various testing methods, which are often customized by the organization performing the test. However, commercial adoption of shape memory alloys in aeronautic actuator applications requires reducing property uncertainty through standardizing test methods. Historically, differential scanning calorimetry (DSC) has been used to measure transformation temperatures under stress-free conditions. This testing method is well established, and tests are run under the applicable standard, ASTM F2004-17: Standard Test Method for Transformation Temperature of Nickel-Titanium Alloys by Thermal Analysis. Two other test methods for measuring strains and transformation temperatures under constant load or free recovery after prestraining have only recently been standardized—ASTM E3097: Standard Test Method for Mechanical Uniaxial Constant Force Thermal Cycling of SMAs (UCFTC) and ASTM E3098: Standard Test Method for Mechanical Uniaxial Pre-Strain and Thermal Free Recovery of SMAs (UPFR). These standards represent a critical step forward in producing reliable material property data for the use of these alloys in aeronautics and other commercial areas. However, no standard programs or software packages were previously available for postprocessing UCFTC- and UPFR-type test data to extract property data. Each organization that performed the testing analyzed data using its own custom manual methods, such as using a plot and a straight edge, spreadsheet plotting methods, or custom code routines, to extract the required values for strains, stresses, and transformation temperatures. SMAnalytics represents the first publicly available uniform software package for processing data generated using the DSC, UCFTC, and UPFR test methods, as well as many modifications of these methods, including loading in martensite versus austenite and performing multiple thermal cycles at stress. In doing so, it provides a tool for reducing potential error or variability in the measured values due to the precision of the technique used and person-to-person variability. It is also expected that this automated data-parsing tool can accelerate the data analysis phase of the test campaign, especially for large data files. This User’s Manual describes how the SMAnalytics software works and the method for its use.

Shape Memory Alloy