Skip to Content

Bugs in your custom ABAP code can be quite expensive when they impact critical business processes, which is why quality assurance of custom ABAP code is receiving more and more attention in business. SAP also develops a great deal of ABAP code, and for us as well, highest quality is our primary goal. To reach this goal, SAP invested in the ABAP Test Cockpit (ATC), which has become SAP’s main internal quality assurance tool for ABAP.

We asked ourselves, why customers shouldn’t benefit from the ABAP Test Cockpit as well.  We started a pilot project with two customers to find out if the ABAP Test Cockpit can help customers assure the quality of custom code. The results were so positive that SAP decided to adapt and extend the ABAP Test Cockpit for custom code. We collaborated intensively with the pilot customers during the development cycle of the ABAP Test Cockpit. As a result now we have a brand new ABAP check tool developed with the input of customers for customers.

The ATC is already available with EhP2 for SAP NetWeaver 7.0 support package stack 12 (SAP Basis 7.02, SAP Kernel 7.20) and EhP3 for SAP NetWeaver 7.0 support package stack 5 (SAP Basis 7.31, SAP Kernel 7.20).

ABAP Test Cockpit – What is it, what are the benefits?

The ABAP Test Cockpit is a new ABAP check toolset which allows you to run static checks and ABAP Unit tests for your ABAP programs. In order to ensure a smooth migration and comparable check results throughout your company, the ABAP Test Cockpit is compatible with SAP’s Code Inspector. This means you can reuse your custom Code Inspector checks and variants in the ABAP Test Cockpit.

So is it only a Code Inspector ++? We think it is more.

Developers will like the ABAP Test Cockpit because it is directly integrated in the ABAP Develoment Tools for Eclipse (ABAP Test Cockpit for Developers in Eclipse) and ABAP workbench and has superior usability.  Working with ATC findings is very easy and efficient using the new ABAP Test Cockpit filter, navigation, and re-check functionality. Team leads and quality engineers will like the ABAP Test Cockpit because it introduces new quality assurance processes like quality gates, a robust exemption approval process, and periodic regression tests in a quality system.

You can install and run ATC locally in the systems of your development landscape or install ATC centrally as a Hub and check your systems using Remote Code Analysis in ATC. ATC’s support for solid quality processes will minimize the errors in your productive system! In addition, the ATC offers tools to analyze the ABAP Test Cockpit results on the team or project level.  ABAP Test Cockpit is integrated into the SAP Solution Manager (CCLM, CHARM) to allow cross system quality reporting.

Here are the main benefits of ABAP Test Cockpit:

  • Standard code quality with functional, performance, security aspects (ABAP Security Checks with the Code Vulnerability Analyzer (CVA))
  • The ABAP Test Cockpit is fully integrated in the ABAP Development Tools for Eclipse and in ABAP development workbench with high usability for developers and quality experts. Findings are reported in one prioritized work list.

       ATC in ABAP Development Tools for Eclipse:

       ATC in SE80:

  • Easy navigation to the editors to analyze the finding and data flow including the detailed documentation and assistance for the findings
  • Configuration of checks takes place via Code Inspector variants
  • The ABAP Test Cockpit offers superior and easy to use built-in reporting capabilities with filters and aggregated levels.
  • The ABAP Test Cockpit is not only a check tool but supports essential quality assurance techniques like quality gates or regression testing in a consolidation system.

ATC_graph_02.png

  • The ABAP Test Cockpit offers a robust process for managing exemptions (false / positive findings) based on the four-eyes principle.

For more information about the supported quality management processes, please take a look at the corresponding Best Practices document:

For more details about the involved roles (developers, quality extperts, admins) please take a look at the corresponding Getting Started guides:

 

 

To report this post you need to login first.

39 Comments

You must be Logged on to comment or reply to a post.

  1. Dirk Wittenberg

    Hi Christopher,

    the test cockpit looks great. I’m already working a lot with unit tests and the code inspector – so I’m looking forward to the new test cockpit.

    Regards,

    Dirk

    (0) 
  2. Vinod Kumar

    Hi Christopher,

    ATC looks great and interesting.  May be I have to wait for sometime to use this (right now my development system is not updated with Support pack level 12)

    Thanks for sharing the information.

    Regards, Vinod

    (0) 
    1. Boris Gebhardt

      Hi Maria João,

      Thanks for your interest in ATC!

      ATC is available for customers starting with NetWeaver 700 EhP 2 (SP 12).

      (This correlates to EhP5 for SAP ERP 6.0)

      So, unfortunately ATC is not in your system yet.

      Perhaps you have a system with a higher release in your landscape and can experience the ATC there?

      Best regards

      Boris

      (1) 
  3. Nigel James

    Will SAP deliver all enhancement packs with tests that can be run through the ATC so that redundancy tests of existing productive systems can be done with new functionality delivered in those enhancement packs?

    (0) 
    1. Boris Gebhardt

      Hi Nigel

      The ABAP Test Cockpit is based on Code Inspector and runs the Code Inspector checks of a specified global Code Inspector check variant. This implies that custom Code Inspector checks and new Code Inspector checks delivered by SAP can be used in the ATC starting with NW 7.02 (EhP2 for SAP NetWeaver 7.0 support package stack 12).

      In NW releases < 7.02  the Code Inspector tooling must be used to run Code Inspector checks.

      But the tooling (ATC or Code Inspector) is decoupled from the actual Code Inspector checks.

      So the target NW release of new SAP Code Inspector checks can be set individually (independent of the tooling part).

      Best regards

      Boris

      (0) 
  4. Josef Vogler

    Hi Christopher,

    if the description and the technical information given by the check is not detailed enough for me to really get it in my mind in future, how can I find the implementation of the check by the component and the check name?

    For example, for the BC_CCMPLX checks I don’t get how it determines which line is an english comment line and what is the algorithm behind it.

    Regards,

    Josef

    (0) 
    1. Klaus Ziegler

      Hello Josef,

      the BC_CCMPLX check is an SAP internal prototype that has not been released to customers. I can only assume that some debugger magic or some accident has made this prototype visible.

      The ATC customer version reuses the Code Inspector tests. In case one of the Code Inspector tests has deficiencies in the documentation you may consider to open a ticket on component BC-DWB-TOO-ATF (ABAP test frameworks).

      Regards

        Klaus

      (0) 
  5. Ashok Babu Kumili

    Hello Christopher Kaestner,

    Thank you so much for this blog. This is very cool and helpful aid for testing aspects. I specifically love that it is solution oriented.  This is so organised and well described.

    Regards

    Ashok.

    (0) 
  6. Daniel Galisteo

    Hi Christopher

    Is it possible to use ATC exemptions in a landscape where there is no QA system acting like the Master System?

    Let me explain better:

    In my current implementation project, so far we have only a DEV system with 2 clients: 100 for development and customizing, and 110 for testing.

    I would like to use ATC in this way: developers would run ATC checks on their developments at DEV 100, and they could ask for exemptions when necessary. The purpose is to maintain the DEV system “clean” while we don’t have a QA system.

    Is it possible?

    Thank you, Best Regards

    Daniel

    (0) 
  7. Victor Dalchiele

    Hi! Im new on the forum. I’m trying ATC in my system, but i have a question:

    Could i scan only objects that are recently created?

    My objective is scan a package once a week but only scan the new objects.

    Thanks for help!

    (0) 
    1. Thomas Fiedler

      Hi Victor,

      this kind of filtering is currently not supported in ATC. But the requirement is quite clear to us and already in our implementation backlog.

      We will send out the information in our community once we can communicate the availability

      Regards,

      Thomas.

      (0) 
  8. Victor Dalchiele

    Ok, thanks for answering. Finally we make a “Z” to have this functionality, but I would like to implement the SAP implementation if done.

    Regards!

    Victor Dalchiele

    (0) 
  9. Mario Kopp

    Hi !

    I have a question regarding the ATC Checks. Since we have started to improve the quality of our custome code by ATC we see that the Developers very often use the PROGMA functionality. This is normally OK but in some cases the Quality Manager wants that this will not be possible. In other words , the QA wants that some PRAGMAs are not possible and that this have to be done by claiming an Exemption.

    Best regards

    Mario

    (0) 
    1. Klaus Ziegler

      Hello Mario,

      at present it is not possible to prevent the use for some pragmas and to allow it for others. As stop gap solution one can allow pragmas in general und use a CI search test to raise a finding in case a blacklisted pragma has been used.

      Ciao

      Klaus

      (0) 
  10. madhura A S

    Hi,

    I’m trying to configure the development system to connect to master ATC system. But ATC configuration on my system is dissabled. How I can connect to master system? Is there any specific role that i should have to connect to master system?

    Regards

    Madhura

    (0) 
    1. Stephen Pfeiffer

      Boris Gebhardt, the product owner of ATC, wrote a while back that the ATC became available to customers with NetWeaver 700 EHP2 (Enhancement Package 2) SP12, which corresponds to EHP5 for SAP ERP 6.0. So there should be a way…

      (0) 
    2. Thomas Fiedler

      Hi Jerome,

      ATC is available since SAP BASIS 7.02. In older releases you have to ue the Code Inspector. Or you use the remote ATC infrastructure that can connect to 7.00 ABAP systems as well.

      Regards,

      Thomas.

      (1) 
        1. Thomas Fiedler

          No, the  remote ATC runs on an own AS ABAP instance in your landscape based on SAP BASIS 7.50. The systems connects via RFC to your “old” system and scan the code remotely. SolMan 7.2 cannot beused as the BAsis is 7.40. 

          Regards,

          Thomas.

          (1) 

Leave a Reply