Parameterized unit tests
    31.
    发明申请
    Parameterized unit tests 有权
    参数化单元测试

    公开(公告)号:US20070033440A1

    公开(公告)日:2007-02-08

    申请号:US11198569

    申请日:2005-08-04

    IPC分类号: G06F11/00

    CPC分类号: G06F11/3684

    摘要: Separation of parameterized unit tests from specific test cases supports many benefits including automated test case generation. Symbolic execution assigns symbolic input variables to parameters of a parameterized unit test. Path constraints of an implementation under test (IUT) are identified during symbolic execution. A constraint solver automatically generates test cases by determining the test inputs that satisfy one of more paths, each described by constraints, through the IUT. Parameterized unit tests are used to populate behavioral summaries. Behavioral summaries are used later in future symbolic executions to emulate summarized methods. An intensional heap is provided to represent state changes performed by summarized methods. The extensional heap is used to explicitly update memory locations, e.g. object fields or array elements.

    摘要翻译: 参数化单元测试与特定测试用例的分离支持许多好处,包括自动测试用例生成。 符号执行将符号输入变量分配给参数化单元测试的参数。 在符号执行期间识别被测实施(IUT)的路径约束。 约束求解器通过确定满足一个更多路径的测试输入,通过IUT通过约束描述每个路径,自动生成测试用例。 参数化单元测试用于填充行为摘要。 行为概要将在今后的符号执行中被用来模拟汇总的方法。 提供了一个强大的堆来表示由汇总的方法执行的状态变化。 扩展堆用于显式更新内存位置,例如 对象字段或数组元素。

    STATE AS A FIRST-CLASS CITIZEN OF AN IMPERATIVE LANGUAGE
    32.
    发明申请
    STATE AS A FIRST-CLASS CITIZEN OF AN IMPERATIVE LANGUAGE 有权
    国家作为一个强制性语言的第一类公民

    公开(公告)号:US20100011194A1

    公开(公告)日:2010-01-14

    申请号:US12551345

    申请日:2009-08-31

    IPC分类号: G06F9/312

    CPC分类号: G06F9/463

    摘要: A state component saves a present state of a program or model. This state component can be invoked by the program or model itself, thereby making state a first-class citizen. As the state of the program evolves from the saved state, the saved state remains for reflection and recall, for example, for testing, verification, transaction processing, etc. Using a state reference token, the saved state of the program or model can be accessed by the program or model. For example, the program or model by utilizing a state component, can return itself to the saved state. After returning to the saved state, a second execution path can be introduced without requiring re-execution of the actions leading to the saved state. In another example, the state space of an executing model is saved in order to generate inputs required to exercise a program or model.

    摘要翻译: 状态组件保存程序或模型的当前状态。 该状态组件可以由程序或模型本身调用,从而使状态成为一流的公民。 随着程序状态从保存状态的演变,保存的状态保留用于反射和调用,例如用于测试,验证,事务处理等。使用状态引用令牌,程序或模型的保存状态可以是 由程序或模型访问。 例如,通过利用状态组件的程序或模型可以将自身返回到保存的状态。 返回到保存状态后,可以引入第二个执行路径,而不需要重新执行导致保存状态的动作。 在另一示例中,保存执行模型的状态空间,以便生成锻炼程序或模型所需的输入。

    Efficient checking of state-dependent constraints
    33.
    发明授权
    Efficient checking of state-dependent constraints 有权
    有效检查状态依赖约束

    公开(公告)号:US07500226B2

    公开(公告)日:2009-03-03

    申请号:US10792555

    申请日:2004-03-02

    IPC分类号: G06F9/44 G06F11/00

    CPC分类号: G06F11/3624

    摘要: Constraints are defined in view of a program implementation. Constraints check program state or variables to maintain data consistency. A constraint component determines a constraint's scope and variables upon which a constraint depends. Program flow is altered so constraints are checked whenever a variable upon which a constraint depends is updated. Optionally, program flow is altered dynamically to re-establish constraints whenever a variable upon which a constraint depends is updated. Re-establishing constraints provides efficiency, since a program flow is altered for a minimum cost based on a present evolving minimum set of active constraint-variable relationships.

    摘要翻译: 限制是根据程序实现而定义的。 约束检查程序状态或变量以保持数据的一致性。 约束组件确定约束所依赖的约束的范围和变量。 更改程序流程,只要更新约束所依赖的变量,就会检查约束。 可选地,当更新约束所依赖的变量时动态地改变程序流程以重新建立约束。 重新建立约束提供了效率,因为基于当前演变的最小主动约束变量关系集,程序流被改变为最小成本。

    Access driven filtering
    34.
    发明申请
    Access driven filtering 有权
    访问驱动过滤

    公开(公告)号:US20050050391A1

    公开(公告)日:2005-03-03

    申请号:US10650297

    申请日:2003-08-27

    IPC分类号: G06F11/00

    CPC分类号: G06F11/3684

    摘要: A test domain configuration module generates graphical user interfaces for identifying information about desired tests such as data types and domain configurations, and collects information used by other modules to generate tests. The identified information may include, for example, an abstract syntax, a static semantic, max counts on instances of data types, or costs of field accesses or data types for max path costs or max expression costs. A test input generator, generates test input for the identified and configured data types. In one case, the generated test inputs are generated as tree data structures. A predicate determines whether a generated test input follows semantic conditions. A test input evaluator counts instances of data types in, sums paths through, or sums total costs of, the generated test inputs. A test acceptance module saves test inputs acceptable to the predicate and the test input evaluator.

    摘要翻译: 测试域配置模块生成用于识别有关所需测试(例如数据类型和域配置)的信息的图形用户界面,并收集其他模块使用的信息以生成测试。 所识别的信息可以包括例如抽象语法,数据类型的实例的静态语义,最大值,或用于最大路径成本或最大表达成本的字段访问或数据类型的成本。 测试输入生成器,为识别和配置的数据类型生成测试输入。 在一种情况下,生成的测试输入被生成为树数据结构。 谓词确定生成的测试输入是否遵循语义条件。 测试输入评估器对数据类型的实例进行计数,总和通过生成的测试输入,或总计生成的测试输入的总和。 测试验收模块可以保存对谓词和测试输入评估器可接受的测试输入。

    State as a first-class citizen of an imperative language

    公开(公告)号:US08468505B2

    公开(公告)日:2013-06-18

    申请号:US12551345

    申请日:2009-08-31

    IPC分类号: G06F9/45

    CPC分类号: G06F9/463

    摘要: A state component saves a present state of a program or model. This state component can be invoked by the program or model itself, thereby making state a first-class citizen. As the state of the program evolves from the saved state, the saved state remains for reflection and recall, for example, for testing, verification, transaction processing, etc. Using a state reference token, the saved state of the program or model can be accessed by the program or model. For example, the program or model by utilizing a state component, can return itself to the saved state. After returning to the saved state, a second execution path can be introduced without requiring re-execution of the actions leading to the saved state. In another example, the state space of an executing model is saved in order to generate inputs required to exercise a program or model.

    State as a first-class citizen of an imperative language
    36.
    发明申请
    State as a first-class citizen of an imperative language 有权
    国家作为一种应急语言的一流公民

    公开(公告)号:US20050050536A1

    公开(公告)日:2005-03-03

    申请号:US10650245

    申请日:2003-08-27

    IPC分类号: G06F9/46 G06F9/44

    CPC分类号: G06F9/463

    摘要: A state component saves a present state of a program or model. This state component can be invoked by the program or model itself, thereby making state a first-class citizen. As the state of the program evolves from the saved state, the saved state remains for reflection and recall, for example, for testing, verification, transaction processing, etc. Using a state reference token, the saved state of the program or model can be accessed by the program or model. For example, the program or model by utilizing a state component, can return itself to the saved state. After returning to the saved state, a second execution path can be introduced without requiring re-execution of the actions leading to the saved state. In another example, the state space of an executing model is saved in order to generate inputs required to exercise a program or model.

    摘要翻译: 状态组件保存程序或模型的当前状态。 该状态组件可以由程序或模型本身调用,从而使状态成为一流的公民。 随着程序状态从保存状态的演变,保存的状态保留用于反射和调用,例如用于测试,验证,事务处理等。使用状态引用令牌,程序或模型的保存状态可以是 由程序或模型访问。 例如,通过利用状态组件的程序或模型可以将自身返回到保存的状态。 返回到保存状态后,可以引入第二个执行路径,而不需要重新执行导致保存状态的动作。 在另一示例中,保存执行模型的状态空间,以便生成锻炼程序或模型所需的输入。

    Interactive domain configuration
    37.
    发明申请
    Interactive domain configuration 有权
    互动域配置

    公开(公告)号:US20050050519A1

    公开(公告)日:2005-03-03

    申请号:US10650238

    申请日:2003-08-27

    IPC分类号: G06F9/44 H04L1/22

    CPC分类号: G06F8/75 G06F8/74 G06F11/3672

    摘要: Described herein are methods and systems for interactively configuring and producing a data domain for various data structure elements of a computer program. A domain configuration manager is described which interactively receives domain configuration information corresponding to a data structure element, reads a reflection of the program and produces a data domain according to domain configuration information. The domain configuration manager is capable of producing a data domain for a data structure element according to such domain configuration information such as an explicit expression, inheritance or domain generation technique. The reflection of the computer program exposes the methods and functions of the program to be used in the explicit expression regardless of the visibility rules. Also, predicates and conditions can be used with domain generation techniques to further narrowly configure the data domains.

    摘要翻译: 这里描述了用于交互地配置和产生用于计算机程序的各种数据结构元素的数据域的方法和系统。 描述了一种域配置管理器,其交互地接收对应于数据结构元素的域配置信息,读取该程序的反射并根据域配置信息产生数据域。 域配置管理器能够根据诸如显式表达式,继承或域生成技术之类的域配置信息为数据结构元素生成数据域。 计算机程序的反映公开了要在显式表达式中使用的程序的方法和功能,而不管可见性规则如何。 此外,谓词和条件可以与域生成技术一起使用,以进一步窄配置数据域。

    Generalized comprehension in imperative languages
    40.
    发明申请
    Generalized comprehension in imperative languages 有权
    命令语言的广义理解

    公开(公告)号:US20050166181A1

    公开(公告)日:2005-07-28

    申请号:US10765486

    申请日:2004-01-27

    IPC分类号: G06F9/44

    CPC分类号: G06F8/31

    摘要: The present invention relates to a system and methodology to enable programming of generalized comprehensions in an imperative language environment. In one aspect, a system is provided to facilitate employment of user-definable and generalized comprehensions in accordance with imperative languages. The system includes a language component to enable programming of comprehension notations in an imperative language and an interface component to describe a meaning of the comprehension notations. A translation component facilitates execution of the comprehension notations in accordance with the imperative language.

    摘要翻译: 本发明涉及一种能够在命令式语言环境中对广义理解进行编程的系统和方法。 在一方面,提供了一种系统,以便于根据命令式语言来使用用户可定义和广义的理解。 该系统包括一个语言组件,用于使命令语言中的理解符号编程,以及界面组件来描述理解符号的含义。 翻译组件有助于按照强制性语言执行理解符号。