IP Library › Granted Patent US 9,940,222
Granted Patent B2
US 9,940,222 · App. 14/947,633 · Granted Apr 10, 2018

System and method for safety-critical software automated requirements-based test case generation

Inventors: Meng Li (Niskayuna, NY); Michael Richard Durling (Niskayuna, NY); Kit Yan Siu (Niskayuna, NY); Italo Oliveira (Rio de Janeiro, BR); Han Yu (Niskayuna, NY); Augusto Marasca De Conto (Rio de Janeiro, BR)
Assignee: GENERAL ELECTRIC COMPANY
G06F11/3684G06F8/20G06F8/35G06F11/3608
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,940,222
App. No.
14/947,633
Granted
Apr 10, 2018
Kind
B2
Abstract

Automated requirements-based test case generation method includes constructing in a model-based development tool a software architecture model automatically derived from architectural information of a software design model, allocating requirement models into blocks/operators of the software architecture model, and generating component level requirements-based test cases from the software architecture. The component level requirements-based test case generation method includes receiving a software architecture along with allocated requirement models represented in hierarchical data flow diagram, selecting one of the software components, building an intermediate test model based on the selected component by automatically attaching at least one of test objectives or constraints to the corresponding software architecture model blocks/operators based on the selected test strategy, and generating human and machine readable test cases with the test generator for further automatic conversion to test executable and test review artifacts. A system and a non-transitory computer-readable medium for implementing the method are also disclosed.

Claims (27)

1. A non-transitory computer-readable medium having stored thereon instructions which when executed by a processor cause the processor to perform a method for automated requirements-based test case generation, the method comprising:

constructing a software architecture model, the software architecture model automatically derived from architectural information of a software design model;

allocating requirement models into different blocks/operators of a software architecture model; and

generating component level requirements-based test cases from the software architecture model, wherein the component level requirements-based test cases are generated according to at least one strategy selected from the list of a requirements coverage strategy, a logic condition coverage strategy, and an input masking strategy;

wherein the input masking strategy includes masking Modified Condition/Decision Coverage (MC/DC).

2. The non-transitory computer-readable medium of claim 1 , including instructions to cause the processor to allocate the requirement models by connecting corresponding monitored or controlled variables with an input port or an output port of respective ones of the different modules.

3. The non-transitory computer-readable medium of claim 1 , including instructions to cause the processor to generate integration level test cases, and apply the integration level test cases to verify if a code module complies with the allocated requirements.

4. The non-transitory computer-readable medium of claim 1 , including instructions to cause the processor to:

receive the software architecture model in the form of a hierarchical data flow diagram derived from the software design along with the allocated requirement models, the hierarchical data flow diagram including one or more blocks/operators mapping to corresponding components in the software design;

select one of the software components from the software design for test case generation; and

build an intermediate test model based on the selected component by automatically attaching at least one test objectives and test constraints to the corresponding software architecture model block/operator.

5. The non-transitory computer-readable medium of claim 4 , including instructions to cause the processor to:

generate requirements-based test cases by performing at least one of model-checking, constraint solving, and reachability resolution methods on the intermediate test model; and

translate the generated test cases into test scripts for test execution, and into test artifacts for review.

6. A system for automated requirements-based test case generation, the system comprising:

a model based development tool including a control processor configured to execute instructions, the control processor connected to a communication link; and

a component level test case generator unit to automatically generate test cases, wherein the control processor configured to execute instructions that cause the control processor to generate the test cases according to at least one strategy selected from the list of a requirements coverage strategy, a logic condition coverage strategy, and an input masking strategy;

wherein the input masking strategy includes masking Modified Condition/Decision Coverage (MC/DC).

7. The system of claim 6 , including the control processor configured to execute instructions that cause the control processor to perform the steps of:

deriving software architecture model from software design

allocating requirement models into different blocks/operators of a software architecture model;

generating component level requirements-based test cases.

8. The system of claim 7 , including the control processor configured to execute instructions that cause the control processor to generate integration level test cases, and apply the integration level test cases to verify if a code module complies with the software architecture model and the allocated requirement models.

9. The system of claim 7 , including the control processor configured to execute instructions that cause the control processor to:

receiving the software architecture model in the form of a hierarchical data flow diagram derived from the software design along with the allocated requirement models, the hierarchical data flow diagram including one or more blocks/operators mapping to corresponding components in the software design;

selecting one of the software components from the software design for test case generation; and

building an intermediate test model based on the selected component by automatically attaching at least one test objectives and test constraints to the corresponding software architecture model block/operator.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 20, 2015
From: LI, MENG; DURLING, MICHAEL RICHARD; SIU, KIT YAN; OLIVEIRA, ITALO; YU, HAN; DE CONTO, AUGUSTO MARASCA
To: GENERAL ELECTRIC COMPANY
Reel/Frame 037104/0032 →
Continuity (1)
Related Publication 20170147482A1 · May 25, 2017