一个SAP cds view test double的例子
发布日期:2021-06-30 14:05:10 浏览次数:3 分类:技术文章

本文共 2821 字,大约阅读时间需要 9 分钟。

*"* use this source file for your ABAP unit test classesCLASS lcl_test_productshorttexDEFINITION FINAL FOR TESTINGDURATION SHORTRISK LEVEL HARMLESS .  PRIVATE SECTION.    CLASS-DATA:      environment TYPE REF TO if_cds_test_environment.    CLASS-METHODS:      class_setup        RAISING          cx_static_check,      class_teardown.    DATA:      test_data   TYPE REF TO if_cds_test_data,      act_results TYPE STANDARD TABLE OF p_crms4_productshorttext  WITH EMPTY KEY,      makt_data   TYPE STANDARD TABLE OF makt  WITH EMPTY KEY,      mara_data   TYPE STANDARD TABLE OF mara  WITH EMPTY KEY.    METHODS:      setup RAISING cx_static_check,      insert_test_data IMPORTING                         it_data     TYPE ANY TABLE                         iv_viewname TYPE string,      test_single_record      FOR TESTING RAISING cx_static_check.ENDCLASS.CLASS lcl_test_productshorttex  IMPLEMENTATION.  METHOD class_setup.    environment = cl_cds_test_environment=>create(   i_for_entity ='PRODUCTSHORTTEXT'  ).  ENDMETHOD.  METHOD setup.    environment->clear_doubles( ).  ENDMETHOD.  METHOD class_teardown.    environment->destroy( ).  ENDMETHOD.  METHOD insert_test_data.    CLEAR test_data.    test_data = cl_cds_test_data=>create( i_data = it_data ).    DATA(z_test_data_dbl) = environment->get_double( i_name = iv_viewname ).    z_test_data_dbl->insert( test_data ).  ENDMETHOD.  METHOD test_single_record.    DATA: ls_productshorttext TYPE productshorttext,          lt_productshorttext TYPE TABLE OF productshorttext.    makt_data = VALUE #(  (           mandt =  sy-mandt           matnr =  'JA-1010-NOT_EXIST'           spras =  'E'           maktx =  'JDK Version 1.6'           maktg =  'JDK VERSION 1.6'  )   ).    insert_test_data( it_data = makt_data iv_viewname = 'MAKT' ).    mara_data = VALUE #(  (                    mandt = sy-mandt                    matnr = 'JA-1010-NOT_EXIST'                    scm_matid_guid16 =  '6C0B84B759DF1ED6B0D80E896AE01049'                 ) ).    insert_test_data( it_data = mara_data iv_viewname = 'MARA' ).    lt_productshorttext = VALUE #(  (                                      productguid = '6C0B84B759DF1ED6B0D80E896AE01049'                                      language = 'E'                                      productname = 'JDK Version 1.6'                                      productnamelarge = 'JDK VERSION 1.6'                                   )  ).    SELECT * FROM productshorttext INTO TABLE @DATA(act_results).    cl_abap_unit_assert=>assert_equals( act = lines( act_results )                                         exp = 1 ).    READ TABLE act_results INDEX 1 INTO ls_productshorttext.    cl_abap_unit_assert=>assert_table_contains( line = ls_productshorttext                                        table =  lt_productshorttext ).  ENDMETHOD.ENDCLASS.

转载地址:https://jerry.blog.csdn.net/article/details/103896471 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:如何判断某ABAP系统的Netweaver后台是否支持AMDP
下一篇:使用cds view annotation实现SAP UI5的drop down list效果

发表评论

最新留言

表示我来过!
[***.240.166.169]2024年04月08日 23时00分08秒