1 / 17

Experiences of migration from TTCN-2 to TTCN-3

Experiences of migration from TTCN-2 to TTCN-3. Prasanna Venkatesh Balakrishna S Pol Murulidhara R Huawei Technologies India Private Ltd. First a glimpse of history.

vita
Télécharger la présentation

Experiences of migration from TTCN-2 to TTCN-3

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Experiences of migration from TTCN-2 to TTCN-3 Prasanna Venkatesh Balakrishna S Pol Murulidhara R Huawei Technologies India Private Ltd

  2. First a glimpse of history TTCN-2 (formally TTCN-2++) is defined as per ETSI TR 101 666. This standard which was a significant revision on the original TTCN was released in 1999. However by this time the need for a more “programming language” oriented TTCN had been considered and analyzed. By 2000 ETSI completed the recommendations for TTCN-3. These were adopted as the ES 201 873 series. But by far TTCN-3 is the most successful of the TTCN standards and has dominated protocol testing for more than a decade.

  3. Is TTCN-2 relevant today? TTCN-2 Test case count (Protocol-wise) TTCN-2 Test case increase % in last 5 years Well, may not be for many of you! But there are a large set of legacy test cases which still run on TTCN-2. In our team in Huawei, we roughly have 20% of our test cases in TTCN-2 and this count seems to be growing!

  4. This topic has been discussed in T3UC in the past! Couple of past T3UC papers Comparing TTCN-3 and TTCN-2, Claude Desroches, Strategic Test Solutions (T3UC 2004) Refactoring and Converting a TTCN-2 Test Suite, Thomas Deiß, Nokia (T3UC 2005) But the issue of TTCN-2 to TTCN-3 conversion is still a relevant issue for us. So we thought that we can discuss this issue once again and with the Indian T3UC community. Is this a relevant issue for you?

  5. Why at all migrate to TTCN-3? TTCN-3 is superior to TTCN-2 TTCN-3 standards are continuously enhanced and have better support in the industry TTCN-3 professionals are more easier to get than TTCN-2 professionals TTCN-3 boasts a greater number of tools, better quality tools and wider functionality tools.

  6. Some more practical reasons Debugging a TTCN-2 script is a nuisance, there are tools which can debug TTCN3 script just like C code debugging. TTCN-3 offers a rich set of predefined function will make scripting easy. Editing in tabular format is a slow process compared to one done using TTCN3 text Allows dynamic test configurations, there by adopting for a variety of testing Extensible. anything can be represented using TTCN3, hence can be tested. Very less help in terms of online groups, problem experience etc in resolving complex issues Easy to train new members to work with TTCN3 as it is more like programming language.

  7. 1 2 3 Retain the existing test cases in TTCN-2. Write only the new ones in TTCN-3 Rewrite or Refactor all the test cases to TTCN-3. Generally the framework is redesigned and use the advantages of TTCN-3 Perform a language level conversion to TTCN-3 from TTCN-2. Use tools or automated approaches to perform this conversion Approaches for migration

  8. Only new test cases on TTCN-3 Summary: For situations where there is a totally independent new functionality to be tested, this approach is good. Additionally if the new test cases are roughly 20-30% of the existing test cases this approach is good. If a few new test cases have to be written, only these test cases can be written in TTCN-3 while retaining the old ones in TTCN-2. The ASN.1 definitions can be taken from TTCN-2, but have the TTCN-3 test cases as a separate suite.

  9. Technical Advantages of TTCN-3 in brief • TTCN2 is adequate for conformance test but lacked provisions for new and more different test needs like interoperability testing, system testing, integration testing • Also there was limited scope for user in terms of encoding, test control etc. Hence TTCN3 contains, • Syntax similar to programming language with the Tabular Notation and MSC as presentation languages. • Dynamic system configuration • Control of Test execution mechanisms • Improved encoding formats. • operations for synchronous and asynchronous communications • combined use of TTCN-3 and ASN.1 (and potential use with other languages such as IDL) • User-defined attributes • TTCN-3 also offers enhanced modularity and hence test case reusability.

  10. Refactor/Rewrite to TTCN-3 Summary: If there is a small set of test cases and the test cases in TTCN-2 are well understood then this approach is the best approach. Alternatively if a new set of test cases have to written which larger than the existing set, then this approach should be considered. If effort could be afforded the best way to go about is the refactor/rewrite all TCs from TTCN-2 to TTCN-3. In this approach the advantages of TTCN-3 is used. ASN1. definitions, part of the core TTCN-2 logic can be reused.

  11. Language level conversion to TTCN-3 Summary: If there is a huge number of test cases (with lesser complexity) in TTCN-2 and conversion need to be finished in less time then this approach is the best approach. If the suite complexity is lower, then a tool + some manual correction can migrate it to TTCN-3. This approach uses standard conversion model defined by the ETSI TTCN-2:TTCN-3 mapping. Few tools are available to do this job.

  12. Aren’t TTCN-2 & TTCN-3 supposed to compatible? They are to a great degree compatible! • But that does not mean, you can pick a TTCN-2 test case and run it on a TTCN-3 tool. • ETSI TR 101 874 specifies the mapping between TTCN-2 and TTCN-3 • ETSI specifies how a each element in The TTCN2 tabular format is converted in to TTCN3 pro forma. • But the conversion specification for the TTCN2 tabular format to TTCN3 core language is not clear. • It is essential for user to know the TTCN2 conversion in terms of TTCN3 core language. Most modern users are well aware of core language than tabular format. The ease for learning TTCN3 core is far better compared to TTCN3 TFT concepts.

  13. Schematic approach towards conversion • The flow depicts the simplified conversion approach by converting each TTCN-2 construct into respective TTCN-3 core language constructs • This flow uses an element to element mapping of TTCN-2& TTCN-3 to perform the conversion. • Hence this approach will not lead to an optimized TTCN-3 test suite.

  14. Some Industry tools available for migration Elvior – TestCasthttp://www.elvior.com/t2-to-t3 Testing Technologies TTTwo2Three - http://www.testingtech.com/products/tttwo2three.php IBM Rational System Tester (t2tot3 converter) - http://www-01.ibm.com/software/awdtools/ttester/ OpenTTCN3 - http://www.openttcn.com/products/tester2012

  15. Challenges involved The complexity of conversion depends on how TTCN-2 test suite is designed and organized. Following are few challenges we faced TTCN-2 test suite uses many global variables (like TSP & TSO). But in TTCN3 there are no global variable concept which leads to difficulty in conversion When a tool is used for conversion, there were a huge number of compilation errors which took a lot of effort to solve them. The number of errors depends on the complexity of the TTCN2 suite. All the TTCN-2 test cases, steps, ASN definitions and PDUs are maintained in single .mp file. It is very tedious to modularize these into TTCN3 .3mp files When a tool is used for conversion, the ASN structures which again linked to other ASN definition are very difficult to understand and maintain

  16. Examples of conversion TTCN2 TTCN3 TTCN2 Tabular format TTCN3 core language format TTCN2 text format in.mp file

  17. Key points and learnings • If you have a growing TTCN-2 suite, it is better to think about a migration strategy to TTCN-3. • Else it leads to more cost and trouble in the future • The migration strategy is based on the actual conditions of the project. • There are three kinds of migrations • New test cases in TTCN-3 • Refactor/Rewrite existing test cases to TTCN-3 • Use a tool to do language conversion to TTCN-3 • Using a tool to convert is also generally not so straight forward, but it is probably the most optimal way.

More Related