CN1786925A - TTCN-3 testing system basedon C++ mapping and its testing method - Google Patents

TTCN-3 testing system basedon C++ mapping and its testing method Download PDF

Info

Publication number
CN1786925A
CN1786925A CN 200510053524 CN200510053524A CN1786925A CN 1786925 A CN1786925 A CN 1786925A CN 200510053524 CN200510053524 CN 200510053524 CN 200510053524 A CN200510053524 A CN 200510053524A CN 1786925 A CN1786925 A CN 1786925A
Authority
CN
China
Prior art keywords
test
ttcn
manager
test case
testing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN 200510053524
Other languages
Chinese (zh)
Other versions
CN100435113C (en
Inventor
赵琛
潘远明
陈伟
薛云志
杨宗奎
孙丽霞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Heilongjiang Zhongke Software Co., Ltd.
Original Assignee
Institute of Software of CAS
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Institute of Software of CAS filed Critical Institute of Software of CAS
Priority to CNB2005100535248A priority Critical patent/CN100435113C/en
Publication of CN1786925A publication Critical patent/CN1786925A/en
Application granted granted Critical
Publication of CN100435113C publication Critical patent/CN100435113C/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

The invention advances a C++ mapping -based TTCN-3 testing system and method, based C++ mapping standard of TTCN-3, converting a TTCN-3 testing instance into an equi- semantic C++ testing instance by language converter, compiling, loading and executing the converted testing instance in the TTCN-3 operating environment to test a system to be tested. And every testing component in the converted testing instance realizes a process, avoiding the limit to the number of testing components in the stack space of an ordinary thread technique. The TTCN-3 operating environment realized by the invention can not only meet the black box testing for an ordinary system but also be applied to the testing for the systems with the characters of cocurrent, interactive, real time, etc.

Description

TTCN-3 test macro and method of testing based on the C++ mapping
Technical field
The present invention relates to a kind of TTCN-3 test macro of realizing based on the C++ mapping, also relate to the method for testing of utilizing this test macro, belong to the software testing technology field.
Background technology
TTCN (Testing and Test Control Notation, test and test control character representation) is an a kind of widely used international standard testing system, and up-to-date version is TTCN-3 at present.TTCN-3 can be used to be described in the various responding system tests on the multiple communication port.The typical fields that its is used is protocol test (comprise and moving and Internet protocol), service testing, based on the CORBA test of platform, API test or the like.TTCN-3 is not limited in uniformity test, and it can also be used for the test of many other kinds, as HIST, robustness testing, regression test, system and integration testing etc.
Current, existing TTCN-3 running environment is based on all that the mapping method of Java or C realizes.Because Java language need possess good platform-neutral, bring thus and carry out the lower problem of efficiency ratio, be difficult to satisfy the test needs of real-time system on the reaction time.And for the mapping method of C, higher although it carries out efficiency ratio, adopt the coupling of TTCN-3 running environment of this method realization too tight, be unfavorable for carrying out secondary development at concrete system under test (SUT).
In addition, the test macro of present existing TTCN-3 all is to adopt multithreading to realize that this implementation is fairly simple, can satisfy most Black-box Testing needs.Yet there is the constraint of stack space size in operating system to threading, and, when number of threads reaches certain scale, can cause the execution efficient of system sharply to descend.The TTCN-3 running environment that these restrictions have caused adopting multithreading to realize can't be applied to large-scale pressure test.
Summary of the invention
In view of the above-mentioned defective of prior art, the purpose of this invention is to provide a kind of TTCN-3 test macro and method of testing based on the C++ mapping.This test macro and method of testing make full use of the characteristics of C++, and corresponding TTCN-3 running environment is satisfied carry out efficient and carry out the needs of secondary development at system under test (SUT), and the relevant limit of avoiding threading to bring.
For realizing above-mentioned goal of the invention, the present invention adopts following technical scheme:
A kind of TTCN-3 test macro based on the C++ mapping is characterized in that:
Described system comprises test manager, language converter, test case actuator, shared drive manager, in-line coding/demoder, C++ Map Interface, system under test (SUT) adapter and operating system adapter, wherein
Described test manager manages whole test system; Described language converter conversion TTCN-3 test case, and the C++ test case of generative semantics equivalence are responsible for execution by described test case actuator;
Test suite in the test case carries out encoding and decoding by described in-line coding/demoder to the data that it is stored in shared drive, and described shared drive manager manages described shared drive;
Described C++ Map Interface comprises test control interface and test execution interface, described test control interface is realized being connected between described test case actuator and described system under test (SUT) adapter and the described operating system adapter, and described test execution interface is realized being connected between described test manager and the described test case actuator.
Wherein, described test case actuator comprises the TTCN_Proces class, TTCN_Process_Options class and TTCN_Process_Manager class, and wherein said class TTCN_Proces realizes the encapsulation to test suite/process; Class TTCN_Process_Options realizes the encapsulation of test suite/process association attributes; Class TTCN_Process_Manager is used for the management testing assembly.
Open three layer interfaces of described shared drive manager application programs comprise the container storehouse that meets the STL specification; The new that meets the C++ specification, the delete interface; And the allocate that meets the C specification, the deallocate interface.
Each test suite in the described test case all is implemented as a process.
Adopt the inter-process communication techniques that meets the POSIX standard between described each process.
Described test macro adopts hierarchy, and C++ mapping standard is satisfied in the funcall interface strictness between each layer.
Described in-line coding/demoder utilizes the type and size of reflex mechanism Dynamic Recognition data.
A kind of method of testing that realizes based on above-mentioned TTCN-3 test macro is characterized in that comprising the steps:
(1) for the abstract test suite of TTCN-3, is converted into C++ test case cover by language converter;
(2) described C++ test case cover carries out binding with the running environment storehouse in the C++ compiler, generates the test case library file for test case actuator load and execution;
(3) test macro starts background process, and environment is carried out initialization, loading configuration file;
(4) according to the test case that will carry out, load corresponding test case library file;
(5) start test and management process, the test case in the instantiation library file;
(6) implementation of test cases, report test execution result.
Wherein, described language converter carries out following processing to the abstract test suite of TTCN-3: after lexical analyzer and syntax analyzer, generate abstract syntax tree, by the semantic information extraction apparatus when doing semantic test, from abstract syntax tree, extract semantic information, fill in each manager, comprise symbol manager, type manager, converter, global information index and action scope manager, by code generator the information of each manager is handled at last, under the help of assistant's class, generate the test case that satisfies the C++ Map Interface.
Described language converter adds type attribute information for data in the C++ test case that generates.
TTCN-3 test macro and method of testing based on the C++ mapping that the present invention realized not only can adapt to the requirement that General System is carried out Black-box Testing, can also satisfy the actual demand that system with characteristics such as concurrent, mutual, real-time tests, so the scope of application is wider.
Description of drawings
The present invention is further illustrated below in conjunction with the drawings and specific embodiments.
Fig. 1 is the basic execution schematic flow sheet of language converter.
Fig. 2 is that the main class formation of test case actuator concerns synoptic diagram.
Fig. 3 is the basic layer structural representation of shared drive manager.
Fig. 4 is for carrying out the synoptic diagram of the invocation of procedure between two processes based on shared drive.
Fig. 5 is the basic structure synoptic diagram towards the test control interface of test manager.
Fig. 6 is a test execution interface and towards the basic structure synoptic diagram of the test control interface of test executing device.
Fig. 7 is the process flow diagram of the TTCN-3 method of testing based on C++ mapping of the present invention.
Embodiment
As everyone knows, C is not a kind of object oriented programming languages, does not have the characteristic of reusing, and is difficult to be grafted directly in the other environment at the program of a certain concrete environment establishment and uses, and therefore uses the development efficiency of C language not high.And C++ is the same with Java, all is object oriented programming languages, and they can both realize reusing by encapsulation, succession, technological means such as polymorphic.But the compiled code of Java language is a kind of syllabified code, explain execution by the Java Virtual Machine on the operating system when operation, so operational efficiency can not show a candle to C++.C++ compares with C, possesses OO characteristic, is convenient to carry out secondary development at concrete system under test (SUT); On the other hand, it is the same with the C language again, has higher running efficiency.Therefore adopt C++ to realize that TTCN-3 running environment is more satisfactory selection at present.
In order to utilize C++ to realize TTCN-3 running environment, the work that we need carry out comprises sets up corresponding C ++ Map Interface.This Map Interface comprises test control interface and test execution interface.In addition, also need to set up the functional module that comprises test manager, language converter, test executing device, shared drive manager, in-line coding/demoder, system under test (SUT) adapter and operating system adapter.The set of above-mentioned these functional modules is exactly the TTCN-3 test macro based on the C++ mapping of the present invention.Respectively these functional modules are illustrated below.
The function of test manager is to be responsible for the management work of whole TTCN-3 test macro, and its main action comprises:
◆ test control: after system initialization, all tests all begin to carry out from test control service, and it is responsible for loading test suite, and corresponding test suite start-up parameter is provided.
◆ log management: be responsible for the maintenance system daily record, and be responsible in the record measuring executing process other modules to its various event notice contents of sending that need record.
◆ the test suite management: under many situations, the execution of a test case need be finished jointly by a plurality of test suites, and these assemblies may be distributed in the middle of the different physical systems.The test suite management function is responsible for establishment, distribution and the coordination execution work of each test suite.
◆ error handling processing:, carry out that mistake (unusually) is recovered and mistake (unusually) cleaning work when making a mistake in the measuring executing process or unusual the time.
Above-mentioned test suite (test suite) is the distinctive module of TTCN-3 system, and it is by introducing the explicit or implicitly complete description of statement (import statements) all definition and one group of required behavior description of test case of complete definition.
In the TTCN-3 of reality system running environment, test manager shows as graphic user interface, and its menu structure comprises following content:
● configuration: the various parameters of system and the configuration of adapter.
◆ systematic parameter configuration: realize the relevant system configuration of test macro, realize in the mode of reading system initialization files;
◆ adapter setting: the used adapter file of current test case is set.
● carry out: the execution flow process that realizes test case.
◆ module loading: will be compiled into dynamically (or shared library) later module loading;
◆ test module is specified: specify the module title that is used for current test assignment in the module list that has loaded;
◆ module parameter setting: support to dynamically arrange module parameter, allow the tester module relevant parameters to be set at gui interface;
◆ specify implementation of test cases: finish in module loading, and after the module used of nominative testing, in all test cases of listing automatically on the menu item in front module, the user can specify test case used in the current test assignment;
◆ carry out test: begin to carry out test;
◆ carry out cancellation: cancel the current test assignment of carrying out.
● statistics: reflect current test execution situation, the number of PTC such as statistics normal termination, failure.The main statistics that realizes following index:
◆ the use-case sum of current test assignment;
◆ current use-case sum by test;
◆ the current PTC data of moving;
◆ the PTC peak value of current test assignment;
◆ the PTC number that passes through of current test case;
◆ the unsanctioned PTC data of current test case;
◆ the PTC peak value of current test case;
◆ the process sum of test macro;
◆ system request shared drive number;
◆ the current shared drive number of having used;
◆ used internal memory peak value;
● log query: system's support is to the inquiry of test log, and the daily record that this realization will write the test log file outputs on the control desk again.
● Online Help: the Online Help function that realizes this test macro.
The effect of language converter is to change the TTCN-3 test case, and the C++ test case of generative semantics equivalence, and these test cases that are converted to satisfy C++ Map Interface standard simultaneously.It is one of core technology of the present invention.
Fig. 1 has provided the basic execution flow process of language converter.The TTCN-3 test suite is through after lexical analyzer and the syntax analyzer, the abstract syntax tree that generative grammar is correct, but this moment, semanteme might not be correct, need extract semantic information inspection from abstract syntax tree; In addition, in transfer process, have many local information that need just can provide in the back, the common backfill mechanism that adopts is fairly simple, but underaction is particularly many in the information that needs backfill, and we are to its structure unclear the time.Therefore, the semantic information extraction apparatus extracts semantic information from abstract syntax tree when doing semantic test, fill in each manager, comprises symbol manager, type manager, converter, global information index and action scope manager.By code generator the information of each manager is handled at last, under the help of assistant's class, generated the test case that satisfies the C++ Map Interface.
Language converter adopts technique of compiling to realize.This is the problem that persons skilled in the art can both solve easily, so just do not describe in detail at this.
The test case actuator is responsible for carrying out the test case of being write by the standard testing language, and various basic services are provided, and comprising:
◆ test configurations: a test configurations is carried out the related assembly of testing by communication port mutually by one group and is constituted.This service can realize the dynamic-configuration to test suite.
◆ use-case is selected: a test suite often comprises numerous test case.Use-case selects service to determine the number of times whether each test case is carried out and carried out according to Test Strategy.
◆ carry out engine: be responsible for the compiling and the execution of standard testing language.
◆ template and coupling: the match service between the data is provided, is used for data are detected.This service can be used to accept and send some specific data acquisitions.
◆ Clock management: the basic management function of clock is provided, comprises startup, read and write, stop, triggering etc.; The clock of having hidden different operating system simultaneously realizes that thereby details provides unified clock service interface.
◆ test suite communication: the component communication service based on message or process is provided, makes things convenient between the test suite and cooperate, to finish the execution of a test case jointly.
◆ parametrization: the parametrization of in the test run process the various data in the test case being carried out various ways.
◆ the execution result assessment: the execution result of assessment test case, wherein introduced the secondary evaluation mechanism, i.e. local result assessment and global outcome assessment, and stipulated 4 kinds of probable values and relevant value cover up rule.
Fig. 2 has described the main class formation relation of test case actuator.Because test suite all is implemented as process, so the way to manage of the function of these classes and structure and process and function are closely related.Wherein class TTCN_Proces has realized the encapsulation to test suite/process; Class TTCN_Process_Options has realized the encapsulation of test suite/process association attributes; Class TTCN_Process_Manager is mainly used in the management testing assembly.
The basic layer structure of shared drive manager as shown in Figure 3.Wherein, the effect of ShmInitializer class is the whole shared drive of initialization zone.It directly calls shmget, and functions such as shmat come to be the application shared memory space, all is the work of this class to the assurance of the aspects such as uniqueness of the size of shared drive, multi-process application.The SharedMemory class is responsible for direct managing shared memory, its application programs provides Allocate, the shared drive operation-interface of the C specification of Deallocate etc., and AddObject, shared drive Object Operations interfaces such as GetObject, the latter makes that using this shared drive manager to communicate between process becomes possibility.The ShmObject class is used the interface of SharedMemory, and encapsulates function such as its Allocate, for application program provides new, the internal memory operation interface of C++ specifications such as delete, any class just can directly be used new as long as inherit from ShmObject, the delete operation.Based on the ShmObject class, can develop the container storehouse of a simple STL type.List wherein, Queue, Priority Queue are three kinds of more complete containers, its interface meets the STL specification substantially.In addition, in Fig. 3, shared drive manager application programs has been opened three layer interfaces, comprise the container storehouse of the above-mentioned STL of meeting specification, the new of C++ specification, delete interface, and the allocate of C specification, interfaces such as deallocate, in the reality, application program can independently be selected the one deck or the several layers interface that will use fully as required.
When test, each test suite in the test case comprises main test suite, parallel testing assembly, system testing assembly, all is implemented as a process.Compare with the thread implementation, avoided the constraint of stack space size, in addition, can be because of not the increasing sharply of test suite quantity yet, and cause system to carry out the rapid decline of efficient.The establishment of process is corresponding with the create of test suite action.On concrete code was realized, first invoke system call fork () created subprocess, and then created the example of parallel testing assembly or main test suite.Carry out the exchanges data between process for convenience fast, system has adopted POSIX (portable operating system interface) inter-process communication techniques, comprise shared drive, mutual exclusion lock, incident or the like, wherein shared drive is used to deposit communication data, incident is used for notifying the variation of shared drive data, and mutual exclusion lock is used for the synchronization of access of each process to shared drive.
The process of carrying out the invocation of procedure between two processes based on shared drive as shown in Figure 4.Process PTC1 will call to write after application is encoded by coder/decoder by port Port1 and write shared drive, the event thread readout from shared drive of reading of process PTC2 calls incident and utilizes coder/decoder to decode, the decoding back finds it is the invocation of procedure application that belongs to port Port2, just it is distributed to the port Port2 on the PTC2, Port2 carries out invoked process, and the execution result coding is write shared drive; The event thread of reading of PTC1 was read return results and decoding from shared drive, it is distributed to port Port1 on the PTC1.
The effect of in-line coding/demoder is that the data of representing with C++ are added decoding.A test suite must utilize in-line coding/demoder to encode before data are being stored in shared drive; Another test suite also needs to utilize in-line coding/demoder to decode and could use afterwards in the data of reading from shared drive.In order to encode, we have realized the reflex mechanism that a cover is simplified at the data object of C++, and this mechanism can be supported: 1) realize an instantiation of pressing of object; 2) variable in the traversal object under not knowing the situation of object type carries out the operation of assignment value to variable.Introduce this machine-processed specific implementation method below.
One. press the realization of name instantiation:
1. all classes will be inherited in base class TTCNValue, and all like this objects could be quoted by the TTCNValue pointer.
2. in each class that need realize reflecting, need to provide a TTCNValue*newInstance () method, be similar to factory mode, can create the pointer of a concrete object in this method.
3. create the map pointer of a static state in the static zones of program, the mapping that is used for preserving class name and type information is so that realize by the name instantiation.In store such all information in the object of establishment are mentioned in the front, so what preserve among the map is the pointer of class name and such object.This map will set up in program start.
4. when the name of a given class, we arrive and go to search in the mapping of map, if find the name of this class, just call the newInstance () method of its corresponding object, have so just created the object of new such.Also just realized object by the name instantiation.
Two. variable travels through by name in the object
1.TTCNType class is used for preserving the information of the variable of class, the protected member variable of the sensing TTCNType* that has a static state of class TTCNValue.Each is inherited and all has a unique TTCNType object in the class of TTCNValue and report and deposit its type information like this.
2. the name of in store class among the TTCNType of each class correspondence.
3.TTCNValue in have a vector<TTCNValue* who preserves the pointer of member variable values.Pointer with its member variable in the constructed fuction of each particular type is kept among this vector in order.
4. the information of the member variable of class (variable name, type name) is kept at simple class Attribute{attrName, among the typeName}.
5. a vector<Attribute who preserves member variable attribute (Attribute) is arranged in TTCNType〉attributes.Attribute with its member variable in the constructed fuction of each particular type is kept among this vector in order.
Method TTCNValue is provided among the TTCNValue ﹠amp; GetAttributeByName (stringname), setAttributeValue (string name, TTCNValue ﹠amp; Value), just can operate the value of member variable by name of variables.
Utilize this reflex mechanism, the type and size that in-line coding/demoder can the Dynamic Recognition data.In order to use this reflex mechanism in the execution time, language converter also need add all kinds attribute information for various data in the C++ test case that generates.
The effect of system under test (SUT) adapter is: test executing device needs to carry out constantly finishing interactive operation based on communicating by letter of message and process with system under test (SUT) in the test case operational process, and these interactive operations must by by system adapter to adaptively just finishing that concrete system under test (SUT) carries out.In addition, in order to communicate, the system under test (SUT) adapter also needs the transmission data are done corresponding format conversion.
The effect of operating system adapter is: in the implementation of test case, test executing device need call various external functions.The operating system adapter carries out adaptive to different operating system, hide the details of different operating system to test executing device.In addition, the operating system adapter uses the external function except making things convenient for test executing device, can also provide support unified working time.
Fig. 5 shown towards the basic structure of the test control interface of test manager, and Fig. 6 has shown the test execution interface and towards the basic structure of the test control interface of test executing device.As shown in Figure 5 and Figure 6, wherein TriCommunicationSA, TriPlatformSA and TriPlatformPA have constituted the test execution interface, preceding two is calling interface between test case actuator and the system under test (SUT) adapter, and the 3rd is the calling interface between test case actuator and the operating system adapter.The test execution interface is TTCN-3 running environment and the mutual standard interface of ambient systems, and system under test (SUT) adapter, operating system adapter are based on all that it develops.TciTMRequired, TciTMProvided, TciCHRequired and TciCHProvided have constituted the test control interface together, wherein preceding two interface class have been provided by the method that test manager is called and should provides, and latter two interface class has been provided by the method that the test case actuator is called and should provides.The test control interface is a interface between test manager and the test case actuator, and it is mainly used in the message transmission between the test manager and test case actuator in the test case implementation.The test case actuator is started by test manager, the test case actuator needs constantly to circulate a notice of current executing state to test manager in the process of implementation, and test manager is according to execution state information, report current test case practice condition to the user, and final test result.
The TTCN-3 test macro that is made of above-mentioned each module adopts hierarchy, and C++ mapping standard is satisfied in the funcall interface strictness between each layer.
Utilize above-mentioned functional module, the concrete grammar of execution test comprises the steps: as shown in Figure 7
(1) for the abstract test suite (ATS) of TTCN-3, is converted into C++ test case cover by language converter;
(2) above-mentioned C++ test case cover carries out binding with running environment storehouse RBLib.a in the C++ compiler, generates test case library file TSlib.a for test case actuator load and execution;
(3) test macro starts background process, and environment is carried out initialization, loading configuration file;
(4) according to the test case that will carry out, load corresponding test case library file TSlib.a;
(5) start test and management process, the test case testcase in the instantiation library file;
(6) implementation of test cases testcase, report test execution result.
In Fig. 7, the right side is the main flow of TTCN-3 running environment, and the left side is the flow process that language converter is carried out.By each above-mentioned step, can be by working out C++ Map Interface standard, to become the test case with the C++ description of equal value with the test case conversion that TTCN-3 describes by language converter, the C++ test case that running environment compiling, loading, execution conversion generate, thereby can make full use of the characteristics of C++, realize the high-level efficiency of test process, satisfy the requirement that system with characteristics such as concurrent, mutual, real-time tests.
Above TTCN-3 test macro and the method for testing based on the C++ mapping of the present invention had been described in detail, but obvious specific implementation form of the present invention is not limited thereto.For the those skilled in the art in present technique field, the various conspicuous change of under the situation of spirit that does not deviate from the method for the invention and claim scope it being carried out is all within protection scope of the present invention.

Claims (10)

1. TTCN-3 test macro based on C++ mapping is characterized in that:
Described system comprises test manager, language converter, test case actuator, shared drive manager, in-line coding/demoder, C++ Map Interface, system under test (SUT) adapter and operating system adapter, wherein
Described test manager manages whole test system; Described language converter conversion TTCN-3 test case, and the C++ test case of generative semantics equivalence are responsible for execution by described test case actuator;
Test suite in the test case carries out encoding and decoding by described in-line coding/demoder to the data that it is stored in shared drive, and described shared drive manager manages described shared drive;
Described C++ Map Interface comprises test control interface and test execution interface, described test control interface is realized being connected between described test case actuator and described system under test (SUT) adapter and the described operating system adapter, and described test execution interface is realized being connected between described test manager and the described test case actuator.
2. the TTCN-3 test macro based on the C++ mapping as claimed in claim 1 is characterized in that:
Described test case actuator comprises the TTCN_Proces class, TTCN_Process_Options class and TTCN_Process_Manager class, and wherein said class TTCN_Proces realizes the encapsulation to test suite/process; Class TTCN_Process_Options realizes the encapsulation of test suite/process association attributes; Class TTCN_Process_Manager is used for the management testing assembly.
3. the TTCN-3 test macro based on C++ mapping as claimed in claim is characterized in that:
Open three layer interfaces of described shared drive manager application programs comprise the container storehouse that meets the STL specification; The new that meets the C++ specification, the delete interface; And the allocate that meets the C specification, the deallocate interface.
4. the TTCN-3 test macro based on the C++ mapping as claimed in claim 1 is characterized in that:
Each test suite in the described test case all is implemented as a process.
5. the TTCN-3 test macro based on the C++ mapping as claimed in claim 4 is characterized in that:
Adopt the inter-process communication techniques that meets the POSIX standard between described each process.
6. the TTCN-3 test macro based on the C++ mapping as claimed in claim 1 is characterized in that:
Described test macro adopts hierarchy, and C++ mapping standard is satisfied in the funcall interface strictness between each layer.
7. the TTCN-3 test macro based on the C++ mapping as claimed in claim 1 is characterized in that:
Described in-line coding/demoder utilizes the type and size of reflex mechanism Dynamic Recognition data.
8. a method of testing that realizes based on TTCN-3 test macro as claimed in claim 1 is characterized in that comprising the steps:
(1) for the abstract test suite of TTCN-3, is converted into C++ test case cover by language converter;
(2) described C++ test case cover carries out binding with the running environment storehouse in the C++ compiler, generates the test case library file for test case actuator load and execution;
(3) test macro starts background process, and environment is carried out initialization, loading configuration file;
(4) according to the test case that will carry out, load corresponding test case library file;
(5) start test and management process, the test case in the instantiation library file;
(6) implementation of test cases, report test execution result.
9. method of testing as claimed in claim 8 is characterized in that:
Described language converter carries out following processing to the abstract test suite of TTCN-3: after lexical analyzer and syntax analyzer, generate abstract syntax tree, by the semantic information extraction apparatus when doing semantic test, from abstract syntax tree, extract semantic information, fill in each manager, comprise symbol manager, type manager, converter, global information index and action scope manager, by code generator the information of each manager is handled at last, under the help of assistant's class, generate the test case that satisfies the C++ Map Interface.
10. method of testing as claimed in claim 9 is characterized in that:
Described language converter adds type attribute information for data in the C++ test case that generates.
CNB2005100535248A 2005-03-08 2005-03-08 TTCN-3 testing system basedon C++ mapping and its testing method Expired - Fee Related CN100435113C (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB2005100535248A CN100435113C (en) 2005-03-08 2005-03-08 TTCN-3 testing system basedon C++ mapping and its testing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB2005100535248A CN100435113C (en) 2005-03-08 2005-03-08 TTCN-3 testing system basedon C++ mapping and its testing method

Publications (2)

Publication Number Publication Date
CN1786925A true CN1786925A (en) 2006-06-14
CN100435113C CN100435113C (en) 2008-11-19

Family

ID=36784396

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2005100535248A Expired - Fee Related CN100435113C (en) 2005-03-08 2005-03-08 TTCN-3 testing system basedon C++ mapping and its testing method

Country Status (1)

Country Link
CN (1) CN100435113C (en)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101212357B (en) * 2006-12-31 2010-09-15 亿阳信通股份有限公司 Interface testing method and device
CN102035896A (en) * 2010-12-31 2011-04-27 北京航空航天大学 TTCN-3-based distributed testing framework applicable to software system
CN102426534A (en) * 2011-11-02 2012-04-25 大唐移动通信设备有限公司 Method and system for converting test script language into executable instruction
CN102929680A (en) * 2012-10-19 2013-02-13 普华基础软件股份有限公司 Method, device and system for converting a testing and test control notation version 3 (TTCN-3) script into a Java source code
CN101685420B (en) * 2008-09-24 2013-06-12 中兴通讯股份有限公司 Multithreading debugging method and device
CN103473109A (en) * 2013-08-30 2013-12-25 北京中创信测科技股份有限公司 Method and system for compiling TTCN-3 (testing and test control notation 3) based on System Verilog
CN106095668A (en) * 2016-06-02 2016-11-09 上海科梁信息工程股份有限公司 Generation method based on the C++ test case of event and action
CN106933554A (en) * 2015-12-30 2017-07-07 北京国双科技有限公司 Class conversion method and device
CN109408358A (en) * 2018-08-03 2019-03-01 中国人民解放军63928部队 Interoperability Test Method and system between a kind of operating system
CN109726096A (en) * 2017-10-27 2019-05-07 中移(苏州)软件技术有限公司 A kind of test data generating method and device
CN112256457A (en) * 2020-11-06 2021-01-22 开普云信息科技股份有限公司 Data loading acceleration method and device based on shared memory, electronic equipment and storage medium

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100403264C (en) * 2001-11-07 2008-07-16 华为技术有限公司 TTCN test example executing method
CN1212569C (en) * 2002-11-01 2005-07-27 英业达股份有限公司 Multiple-thread automatic test method
CN1519721A (en) * 2003-01-23 2004-08-11 英业达股份有限公司 Dynamic extendable computer testing system as well as method

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101212357B (en) * 2006-12-31 2010-09-15 亿阳信通股份有限公司 Interface testing method and device
CN101685420B (en) * 2008-09-24 2013-06-12 中兴通讯股份有限公司 Multithreading debugging method and device
CN102035896A (en) * 2010-12-31 2011-04-27 北京航空航天大学 TTCN-3-based distributed testing framework applicable to software system
CN102035896B (en) * 2010-12-31 2012-12-05 北京航空航天大学 TTCN-3-based distributed testing framework applicable to software system
CN102426534B (en) * 2011-11-02 2014-06-04 大唐联仪科技有限公司 Method and system for converting test script language into executable instruction
CN102426534A (en) * 2011-11-02 2012-04-25 大唐移动通信设备有限公司 Method and system for converting test script language into executable instruction
CN102929680B (en) * 2012-10-19 2016-03-02 普华基础软件股份有限公司 TTCN-3 script is converted to a method for Java source code, device and system
CN102929680A (en) * 2012-10-19 2013-02-13 普华基础软件股份有限公司 Method, device and system for converting a testing and test control notation version 3 (TTCN-3) script into a Java source code
CN103473109A (en) * 2013-08-30 2013-12-25 北京中创信测科技股份有限公司 Method and system for compiling TTCN-3 (testing and test control notation 3) based on System Verilog
CN103473109B (en) * 2013-08-30 2017-01-04 北京中创信测科技股份有限公司 Method and system TTCN-3 being compiled based on System Verilog
CN106933554A (en) * 2015-12-30 2017-07-07 北京国双科技有限公司 Class conversion method and device
CN106095668A (en) * 2016-06-02 2016-11-09 上海科梁信息工程股份有限公司 Generation method based on the C++ test case of event and action
CN106095668B (en) * 2016-06-02 2018-12-11 上海科梁信息工程股份有限公司 The generation method of C++ test case based on event and movement
CN109726096A (en) * 2017-10-27 2019-05-07 中移(苏州)软件技术有限公司 A kind of test data generating method and device
CN109726096B (en) * 2017-10-27 2022-04-01 中移(苏州)软件技术有限公司 Test data generation method and device
CN109408358A (en) * 2018-08-03 2019-03-01 中国人民解放军63928部队 Interoperability Test Method and system between a kind of operating system
CN112256457A (en) * 2020-11-06 2021-01-22 开普云信息科技股份有限公司 Data loading acceleration method and device based on shared memory, electronic equipment and storage medium

Also Published As

Publication number Publication date
CN100435113C (en) 2008-11-19

Similar Documents

Publication Publication Date Title
CN1786925A (en) TTCN-3 testing system basedon C++ mapping and its testing method
US8978020B2 (en) Generating reusable test components out of remote application programming interface
US7954096B2 (en) Shared loader system and method
CN100351811C (en) Method and device for testing software product robustness
CN1203404C (en) Full-delay interlinkage with module-by-module verification
US8799885B2 (en) Method and system for automated root-cause analysis for class loading failures in java
Baker et al. Runtime aspect weaving through metaprogramming
KR101803303B1 (en) Method for multimedia architecture pattern determination, method and apparatus for transformation from single-core based architecture to multi-core based architecture and
US20050193291A1 (en) Application functionality for a test tool for application programming interfaces
CN1750470A (en) Data sharing system, method and software tool
CN1877543A (en) Data-driven automatic testing system and method
CN1949186A (en) Program testing system and mapping method for said program testing system
CN1346465A (en) Token-based linking
US20090249311A1 (en) Sharing a native module of compiled code using an abstraction module of interpreted code in a virtual machine environment
CN1504881A (en) Java execution equipment and java execution method
CN100351785C (en) Method for debuging embedded system and equipment
CN1976320A (en) Data access control method and system
CN102982217B (en) The treating method and apparatus of silk-screen
EP2685376B1 (en) COBOL reference architecture
CN111506314A (en) Project development method, device, server and medium
CN1975669A (en) Method for service logic mapping onto applied language discribed by XML language
CN103019922A (en) Realization method of component architecture capable of realizing independent testing
CN101056210A (en) An event processing system and method of network central management platform
CN1900905A (en) Realizing method and its device for detecting descriptive language
CN106406970B (en) Method and apparatus for protecting application programming interface of hypervisor

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: NATIONAL FUNDAMENTAL SOFTWARE OF HEILONGJIANG

Free format text: FORMER OWNER: INST. OF SOFTWARE, CHINESE ACADEMY OF SCIENCES

Effective date: 20100919

C41 Transfer of patent application or patent right or utility model
COR Change of bibliographic data

Free format text: CORRECT: ADDRESS; FROM: 100080 NO.4, ZHONGGUANCUN SOUTH STREET 4, HAIDIAN DISTRICT, BEIJING TO: 150090 1-3/F, NO.258, HONGQI STREET, NANGANG DISTRICT, HARBIN CITY, HEILONGJIANG PROVINCE

TR01 Transfer of patent right

Effective date of registration: 20100919

Address after: 150090, 1-3 floor, 258 Hongqi Avenue, Nangang District, Heilongjiang, Harbin

Patentee after: Heilongjiang Zhongke Software Co., Ltd.

Address before: 100080 No. four, 4 South Street, Haidian District, Beijing, Zhongguancun

Patentee before: Institute of Software, Chinese Academy of Sciences

CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20081119

Termination date: 20180308