From 4cee472fc950f4e0d82935f3c7c47bc6a85fc34d Mon Sep 17 00:00:00 2001 From: Miguel Angel Reina Ortega <miguelangel.reinaortega@etsi.org> Date: Thu, 14 Nov 2024 14:11:07 +0000 Subject: [PATCH] Deployed 90c3142 to v4.3.0 in public with MkDocs 1.6.1 and mike 2.1.3 --- public/latest | 2 +- public/latestR4 | 2 +- public/v4.3.0/5.1/index.html | 3 ++- ...ion_eXtra_Information_for_Test_v4.3.0.docx | Bin 959894 -> 959912 bytes ...ion_eXtra_Information_for_Test_v4.3.0.epub | Bin 485920 -> 485941 bytes ...tion_eXtra_Information_for_Test_v4.3.0.pdf | Bin 683373 -> 683412 bytes public/v4.3.0/feed_json_created.json | 2 +- public/v4.3.0/feed_json_updated.json | 2 +- public/v4.3.0/feed_rss_created.xml | 2 +- public/v4.3.0/feed_rss_updated.xml | 2 +- public/v4.3.0/search/search_index.json | 2 +- public/versions.json | 10 +++++----- 12 files changed, 14 insertions(+), 13 deletions(-) diff --git a/public/latest b/public/latest index 4b23c7e2..1ddc0f60 120000 --- a/public/latest +++ b/public/latest @@ -1 +1 @@ -v4.1.1 \ No newline at end of file +v4.3.0 \ No newline at end of file diff --git a/public/latestR4 b/public/latestR4 index 4b23c7e2..1ddc0f60 120000 --- a/public/latestR4 +++ b/public/latestR4 @@ -1 +1 @@ -v4.1.1 \ No newline at end of file +v4.3.0 \ No newline at end of file diff --git a/public/v4.3.0/5.1/index.html b/public/v4.3.0/5.1/index.html index d8883279..e0e4481f 100644 --- a/public/v4.3.0/5.1/index.html +++ b/public/v4.3.0/5.1/index.html @@ -962,7 +962,8 @@ <p>APTs used by the oneM2M test suite are described in figure 5.1-1. The test system will simulate valid and invalid protocol behaviour, and will analyse the reaction of the IUT.</p> <p><img alt="Figure 5.1-1: Abstract protocol testers - oneM2M" src="../media/image2.png" /></p> <p><strong>Figure 5.1-1: Abstract protocol testers - oneM2M</strong></p> -<p>As figure 5.1-1 illustrates, the corresponding ATS needs to use lower layers to establish a proper connection to the system under test (SUT) over a physical link (Lower layers link). Four different lower layers have been specified corresponding to the binding protocols considered in oneM2M: HTTP, CoAP, WebSocket and MQTT.</p> +<p>As figure 5.1-1 illustrates, the corresponding ATS needs to use lower layers to establish a proper connection to the implementation under test (SUT) over several physical links (Lower layers link). Four different lower layers have been specified corresponding to the binding protocols considered in oneM2M: HTTP, CoAP, WebSocket and MQTT.</p> +<p>This is a new sentence.</p> diff --git a/public/v4.3.0/download/TS-0019-Abstract_Test_Suite_and_implementation_eXtra_Information_for_Test_v4.3.0.docx b/public/v4.3.0/download/TS-0019-Abstract_Test_Suite_and_implementation_eXtra_Information_for_Test_v4.3.0.docx index eed133c54055469329e86033f9180fd3f2856aa4..138ffdcd00716cb685307451a43d54a5a600e7bb 100644 GIT binary patch delta 17574 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 delta 17593 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 ZxORL_JV@;537Q2eJK7jB+KF&ue*xFiy$}EZ diff --git a/public/v4.3.0/download/TS-0019-Abstract_Test_Suite_and_implementation_eXtra_Information_for_Test_v4.3.0.epub b/public/v4.3.0/download/TS-0019-Abstract_Test_Suite_and_implementation_eXtra_Information_for_Test_v4.3.0.epub index 84be14dca271e1f02599434aaaddc2bdd5845d6b..9b4a00a6b2de8996486ff4dd3d7d86b2d28b3357 100644 GIT binary patch delta 10557 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 delta 10441 zcmZ9SRZv|`x2{>(!Zo<N1$TFMcX#(70T%9%z{1_#9Rk7KEx22dpuuf_{Qq}O?Q`Zu zKkqwgba&OPo;@$dXkH-7TOdMGk%xl*1OW*L0deAzfW!m&&nUI^&j_Xg^uV3CIO%%Q zU5Yne04M>V{2LxQ8gMapNRszeu!=LQc{(=*1f9M}mgKnRW%S}T=Mry|&9m)q+y*Tp z+{A-D);rg@&%Iw-r_$cTY9HOWRdEN2$%vy!WU@kUD9PXTjORBxGCZs5P`JL(Rc{ae zB{#z;V`5@+MxyQ!>+$!v@GDe9{9G)^obBB30I#4A(kXP%O}x0%a}>fkSm7eVEV~JJ zyT_jQUi{R!ucIjmua>*yG{!L!B8Q^0$5U==d_Gj2nYT=g!jT^vq;@YEJzrYCOrL>z z{bXc`XHAIX)h4`koppMHlT|IZ`@k_=1iknIhZ_0B0xaD+d#PoEc{GijYcN|bdKCUU z;)SaTA`?QI_sHyDI&&v$T1gP+1<k*g4RB)XuvI&6upNo`)2j5ct910bAp`Y0gR>2+ zza7o4F2daWIRdCD3Hmdc{>i|MWY08qxmN3v95nXUX;X3uD;T!^#PvFFM4-z&;jvUi zEr?PPWRRaMbd+}oks*Mpni(8JoJ)7>E1>QM3Tie&|KoF|vs)720O?5G+t!o~)zF3? z{O9WXNuK_*j>`g6{7^8B;P$AF%Q{s2aB!*M_OZ@o6;OZxG3P$;$h<d(_|ojN_X?Cz zJT$nDK%uXGJ11Lu=v-i~@n&Q>TiW*vF<$cxTTcH={ih$+RbkM-&h&4nl1VNn5Ubk3 zAdXY&$#8JVM$xg0+PY$N1ekiGXw*e*K`}ZUEW;gzL=(1Abm@;_M8)KU%An~6K-t7T zS?eFvi5%KFIq7=pKKw0tMdT6A{l14-tKB^zY*RqM0Vd$MLe4lw&R9Xtctp+^M9w&P z&bZTf4LJ<=q2``o_Ys_~>`94mJikQddU&xC<CXFAG~Zd!ZVYaZXT)&m_Mi1Mpdj!L zF@Tvg_jkV+{y)bV?w{lAq&teQVFDh2;b&Werj$dY8(yhpE|00Ms*X-t6q3{$U_WxP z;t^MERE}VQ_?qZ~U*B$d4~tETBrRmQ24;oD2YnG6@OphaJ++^fPU^lbuvmNFQKBjQ z>D$0Od{_O93Ni5o`td}}C|rWHM@8l^h545k-7RAv1vMO|JA>k~A-(fPe*Muy4SyKL z?%GV|GMti>H<UCNnNSXz^PU3ZOn2-tSm%ts?8_f8IR>q_sQxutv4Tc8l3hgT?>tz6 zQq-LcN*t+)r{d*wk{v880C)wKMEnzu`N6l;NH##3aO)U}i^;+J6v;#MFG^Zxo8@uh zlXn3ZEm}x{UUzxHHJs@Ad!34NqA%n~O78Q_<u441&+qwBUSNJ8DM*^tR(6IF&MnMz zY|7s1C{TDboYHNU%<*W3ftFf2k78QSO1x5RKWi<)a2j@66@y	-5L<f!Wp3Vq8wg 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 LtdAM+pQZi><=D2~ diff --git a/public/v4.3.0/download/TS-0019-Abstract_Test_Suite_and_implementation_eXtra_Information_for_Test_v4.3.0.pdf b/public/v4.3.0/download/TS-0019-Abstract_Test_Suite_and_implementation_eXtra_Information_for_Test_v4.3.0.pdf index da801fd34b115f2c27fa2b74c0802ba6cd32f707..7f29fff9e66f35968a53c7e8c5d2c8e43dca4c13 100644 GIT binary patch delta 11776 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 anYg%lxmZ{t^6;|ra&jQj&`7CBBmNJ4e{*#J delta 11728 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 diff --git a/public/v4.3.0/feed_json_created.json b/public/v4.3.0/feed_json_created.json index cb5abf79..1877a6f4 100644 --- a/public/v4.3.0/feed_json_created.json +++ b/public/v4.3.0/feed_json_created.json @@ -1 +1 @@ -{"version": "https://jsonfeed.org/version/1", "title": "oneM2M TS-0019", "home_page_url": "https://specifications.onem2m.org/ts-0019/v4.3.0/", "feed_url": "https://specifications.onem2m.org/ts-0019/v4.3.0/feed_json_created.json", "description": "oneM2M Specifications navigator", "icon": null, "authors": [], "language": "en", "items": [{"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/download/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/download/", "title": "Download", "content_html": "<p>Download baseline for TS-0019 version v4.3.0:</p>\n<p>[<img alt=\"Word\" src=\"images/Word.png\">](TS-0019-Abstract_Test_Suite_and_implementation_eXtra_Information_for_Test_v4.3.0.do...</p>", "image": null, "date_published": "2024-11-14T14:08:10.765506+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/B/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/B/", "title": "Annex B (informative): Bibliography", "content_html": "<p>ISO/IEC 9646-6 (1994): \"Information technology - Open Systems Interconnection - Conformance testing methodology and framework - Part 6: Protocol profile test...</p>", "image": null, "date_published": "2024-11-14T14:08:10.748089+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/A/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/A/", "title": "A", "content_html": "", "image": null, "date_published": "2024-11-14T14:08:10.725345+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/A.1/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/A.1/", "title": "A.1 Electronic annex, zip file with TTCN-3 code", "content_html": "<p>This ATS has been produced using the Testing and Test Control Notation (TTCN) according to ETSI ES 201 873-1 <a href=\"../2.1/#_ref_6\">[6]</a>.</p>\n<p>This test sui...</p>", "image": null, "date_published": "2024-11-14T14:08:10.710841+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/8/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/8/", "title": "8 TTCN-3 Verifications", "content_html": "<p>The principles for Verifying the TTCN-3 test code are given in oneM2M TS-0015 <a href=\"../2.2/#_ref_i.2\">[i.2]</a>.</p>\n<p>All test cases provided with the present...</p>", "image": null, "date_published": "2024-11-14T14:08:10.686542+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/7/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/7/", "title": "7", "content_html": "", "image": null, "date_published": "2024-11-14T14:08:10.664971+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/7.3/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/7.3/", "title": "7.3 IXIT", "content_html": "<p>The following parameters are used by the oneM2M ATS for the correct execution of the test cases.</p>\n<p><strong>Table 7.3-1: oneM2M ATS IXITs</strong><a name=\"table_7.3-1\"></a...</p>", "image": null, "date_published": "2024-11-14T14:08:10.651037+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/7.2/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/7.2/", "title": "7.2 Naming conventions", "content_html": "<h3>7.2.1 General guidelines</h3>\n<p>This test suite follows the naming convention guidelines provided in oneM2M TS-0015 <a href=\"../2.2/#_ref_i.2\">[i.2]</a>.</p>\n<p>The n...</p>", "image": null, "date_published": "2024-11-14T14:08:10.622633+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/7.1/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/7.1/", "title": "7.1 Testing conventions", "content_html": "<h3>7.1.1 Testing states</h3>\n<h4>7.1.1.1 Initial state</h4>\n<p>All test cases start with the function f_preamble_XYZ. This function brings the IUT in an \"initialized...</p>", "image": null, "date_published": "2024-11-14T14:08:10.590531+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/7.0/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/7.0/", "title": "7.0 Introduction", "content_html": "<p>The ATS conventions are intended to give a better understanding of the ATS but they also describe the conventions made for the development of the ATS. These ...</p>", "image": null, "date_published": "2024-11-14T14:08:10.575587+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/6/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/6/", "title": "6 Untestable Test Purposes", "content_html": "<p>Void.</p>", "image": null, "date_published": "2024-11-14T14:08:10.554747+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/5/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/5/", "title": "5", "content_html": "", "image": null, "date_published": "2024-11-14T14:08:10.539844+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.6/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.6/", "title": "5.6 Test strategy", "content_html": "<p>This clause introduces the test strategy being used for the TTCN-3 test cases. The chosen strategy permits to have a clear structure of the code that facilit...</p>", "image": null, "date_published": "2024-11-14T14:08:10.524218+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.5/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.5/", "title": "5.5 Test components", "content_html": "<h3>5.5.1 Tester</h3>\n<p>The Tester test component includes a set of ports, timers and variables that are common to the other defined components which are described ...</p>", "image": null, "date_published": "2024-11-14T14:08:10.503780+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.4/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.4/", "title": "5.4 Ports and ASPs (Abstract Services Primitives)", "content_html": "<h3>5.4.0 Introduction</h3>\n<p>The oneM2M ATS implements the following ports:</p>\n<ul>\n<li>The mcaPort and mcaPortIn</li>\n<li>The mccPort and mccPortIn</li>\n<li>The acPort</li>\n<li>The utPort</li>\n<li>...</li>\n</ul>", "image": null, "date_published": "2024-11-14T14:08:10.471821+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.3/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.3/", "title": "5.3 Test architecture", "content_html": "<p>The approach for the implementation of an Abstract Protocol Tester selected in oneM2M follows the recommendation of the oneM2M Testing Framework oneM2M TS-00...</p>", "image": null, "date_published": "2024-11-14T14:08:10.420528+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.2/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.2/", "title": "5.2 Test Configuration", "content_html": "<h3>5.2.1 AE Test Configuration</h3>\n<p>Test configurations are defined to test different entities such as CSE and AE, etc.</p>\n<p>Figure 5.2.1-1 shows a AE test configura...</p>", "image": null, "date_published": "2024-11-14T14:08:10.399997+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.1/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.1/", "title": "5.1 Abstract protocol tester", "content_html": "<p>An abstract protocol tester (APT) is a process that provides behaviours for testing an IUT by emulating a peer IUT at the same layer, and enabling to address...</p>", "image": null, "date_published": "2024-11-14T14:08:10.381903+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/4/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/4/", "title": "4 Conventions", "content_html": "<p>The key words \"Shall\", \"Shall not\", \"May\", \"Need not\", \"Should\", \"Should not\" in this document are to be interpreted as described in the oneM2M Drafting Rule...</p>", "image": null, "date_published": "2024-11-14T14:08:10.366614+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/3/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/3/", "title": "3", "content_html": "", "image": null, "date_published": "2024-11-14T14:08:10.349898+00:00", "authors": [], "tags": null}]} \ No newline at end of file +{"version": "https://jsonfeed.org/version/1", "title": "oneM2M TS-0019", "home_page_url": "https://specifications.onem2m.org/ts-0019/v4.3.0/", "feed_url": "https://specifications.onem2m.org/ts-0019/v4.3.0/feed_json_created.json", "description": "oneM2M Specifications navigator", "icon": null, "authors": [], "language": "en", "items": [{"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/download/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/download/", "title": "Download", "content_html": "<p>Download baseline for TS-0019 version v4.3.0:</p>\n<p>[<img alt=\"Word\" src=\"images/Word.png\">](TS-0019-Abstract_Test_Suite_and_implementation_eXtra_Information_for_Test_v4.3.0.do...</p>", "image": null, "date_published": "2024-11-14T14:11:07.543489+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/B/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/B/", "title": "Annex B (informative): Bibliography", "content_html": "<p>ISO/IEC 9646-6 (1994): \"Information technology - Open Systems Interconnection - Conformance testing methodology and framework - Part 6: Protocol profile test...</p>", "image": null, "date_published": "2024-11-14T14:11:07.525785+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/A/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/A/", "title": "A", "content_html": "", "image": null, "date_published": "2024-11-14T14:11:07.508651+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/A.1/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/A.1/", "title": "A.1 Electronic annex, zip file with TTCN-3 code", "content_html": "<p>This ATS has been produced using the Testing and Test Control Notation (TTCN) according to ETSI ES 201 873-1 <a href=\"../2.1/#_ref_6\">[6]</a>.</p>\n<p>This test sui...</p>", "image": null, "date_published": "2024-11-14T14:11:07.492855+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/8/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/8/", "title": "8 TTCN-3 Verifications", "content_html": "<p>The principles for Verifying the TTCN-3 test code are given in oneM2M TS-0015 <a href=\"../2.2/#_ref_i.2\">[i.2]</a>.</p>\n<p>All test cases provided with the present...</p>", "image": null, "date_published": "2024-11-14T14:11:07.469418+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/7/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/7/", "title": "7", "content_html": "", "image": null, "date_published": "2024-11-14T14:11:07.454527+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/7.3/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/7.3/", "title": "7.3 IXIT", "content_html": "<p>The following parameters are used by the oneM2M ATS for the correct execution of the test cases.</p>\n<p><strong>Table 7.3-1: oneM2M ATS IXITs</strong><a name=\"table_7.3-1\"></a...</p>", "image": null, "date_published": "2024-11-14T14:11:07.439791+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/7.2/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/7.2/", "title": "7.2 Naming conventions", "content_html": "<h3>7.2.1 General guidelines</h3>\n<p>This test suite follows the naming convention guidelines provided in oneM2M TS-0015 <a href=\"../2.2/#_ref_i.2\">[i.2]</a>.</p>\n<p>The n...</p>", "image": null, "date_published": "2024-11-14T14:11:07.410771+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/7.1/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/7.1/", "title": "7.1 Testing conventions", "content_html": "<h3>7.1.1 Testing states</h3>\n<h4>7.1.1.1 Initial state</h4>\n<p>All test cases start with the function f_preamble_XYZ. This function brings the IUT in an \"initialized...</p>", "image": null, "date_published": "2024-11-14T14:11:07.376481+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/7.0/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/7.0/", "title": "7.0 Introduction", "content_html": "<p>The ATS conventions are intended to give a better understanding of the ATS but they also describe the conventions made for the development of the ATS. These ...</p>", "image": null, "date_published": "2024-11-14T14:11:07.323022+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/6/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/6/", "title": "6 Untestable Test Purposes", "content_html": "<p>Void.</p>", "image": null, "date_published": "2024-11-14T14:11:07.303102+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/5/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/5/", "title": "5", "content_html": "", "image": null, "date_published": "2024-11-14T14:11:07.287020+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.6/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.6/", "title": "5.6 Test strategy", "content_html": "<p>This clause introduces the test strategy being used for the TTCN-3 test cases. The chosen strategy permits to have a clear structure of the code that facilit...</p>", "image": null, "date_published": "2024-11-14T14:11:07.272556+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.5/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.5/", "title": "5.5 Test components", "content_html": "<h3>5.5.1 Tester</h3>\n<p>The Tester test component includes a set of ports, timers and variables that are common to the other defined components which are described ...</p>", "image": null, "date_published": "2024-11-14T14:11:07.253780+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.4/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.4/", "title": "5.4 Ports and ASPs (Abstract Services Primitives)", "content_html": "<h3>5.4.0 Introduction</h3>\n<p>The oneM2M ATS implements the following ports:</p>\n<ul>\n<li>The mcaPort and mcaPortIn</li>\n<li>The mccPort and mccPortIn</li>\n<li>The acPort</li>\n<li>The utPort</li>\n<li>...</li>\n</ul>", "image": null, "date_published": "2024-11-14T14:11:07.218030+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.3/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.3/", "title": "5.3 Test architecture", "content_html": "<p>The approach for the implementation of an Abstract Protocol Tester selected in oneM2M follows the recommendation of the oneM2M Testing Framework oneM2M TS-00...</p>", "image": null, "date_published": "2024-11-14T14:11:07.161434+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.2/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.2/", "title": "5.2 Test Configuration", "content_html": "<h3>5.2.1 AE Test Configuration</h3>\n<p>Test configurations are defined to test different entities such as CSE and AE, etc.</p>\n<p>Figure 5.2.1-1 shows a AE test configura...</p>", "image": null, "date_published": "2024-11-14T14:11:07.139045+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.1/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.1/", "title": "5.1 Abstract protocol tester", "content_html": "<p>An abstract protocol tester (APT) is a process that provides behaviours for testing an IUT by emulating a peer IUT at the same layer, and enabling to address...</p>", "image": null, "date_published": "2024-11-14T14:11:07.119520+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/4/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/4/", "title": "4 Conventions", "content_html": "<p>The key words \"Shall\", \"Shall not\", \"May\", \"Need not\", \"Should\", \"Should not\" in this document are to be interpreted as described in the oneM2M Drafting Rule...</p>", "image": null, "date_published": "2024-11-14T14:11:07.102124+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/3/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/3/", "title": "3", "content_html": "", "image": null, "date_published": "2024-11-14T14:11:07.084522+00:00", "authors": [], "tags": null}]} \ No newline at end of file diff --git a/public/v4.3.0/feed_json_updated.json b/public/v4.3.0/feed_json_updated.json index 06fd4611..7ce6594b 100644 --- a/public/v4.3.0/feed_json_updated.json +++ b/public/v4.3.0/feed_json_updated.json @@ -1 +1 @@ -{"version": "https://jsonfeed.org/version/1", "title": "oneM2M TS-0019", "home_page_url": "https://specifications.onem2m.org/ts-0019/v4.3.0/", "feed_url": "https://specifications.onem2m.org/ts-0019/v4.3.0/feed_json_updated.json", "description": "oneM2M Specifications navigator", "icon": null, "authors": [], "language": "en", "items": [{"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/download/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/download/", "title": "Download", "content_html": "<p>Download baseline for TS-0019 version v4.3.0:</p>\n<p>[<img alt=\"Word\" src=\"images/Word.png\">](TS-0019-Abstract_Test_Suite_and_implementation_eXtra_Information_for_Test_v4.3.0.do...</p>", "image": null, "date_modified": "2024-11-14T14:08:10.765520+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/B/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/B/", "title": "Annex B (informative): Bibliography", "content_html": "<p>ISO/IEC 9646-6 (1994): \"Information technology - Open Systems Interconnection - Conformance testing methodology and framework - Part 6: Protocol profile test...</p>", "image": null, "date_modified": "2024-11-14T14:08:10.748103+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/A/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/A/", "title": "A", "content_html": "", "image": null, "date_modified": "2024-11-14T14:08:10.725359+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/A.1/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/A.1/", "title": "A.1 Electronic annex, zip file with TTCN-3 code", "content_html": "<p>This ATS has been produced using the Testing and Test Control Notation (TTCN) according to ETSI ES 201 873-1 <a href=\"../2.1/#_ref_6\">[6]</a>.</p>\n<p>This test sui...</p>", "image": null, "date_modified": "2024-11-14T14:08:10.710855+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/8/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/8/", "title": "8 TTCN-3 Verifications", "content_html": "<p>The principles for Verifying the TTCN-3 test code are given in oneM2M TS-0015 <a href=\"../2.2/#_ref_i.2\">[i.2]</a>.</p>\n<p>All test cases provided with the present...</p>", "image": null, "date_modified": "2024-11-14T14:08:10.686556+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/7/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/7/", "title": "7", "content_html": "", "image": null, "date_modified": "2024-11-14T14:08:10.664984+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/7.3/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/7.3/", "title": "7.3 IXIT", "content_html": "<p>The following parameters are used by the oneM2M ATS for the correct execution of the test cases.</p>\n<p><strong>Table 7.3-1: oneM2M ATS IXITs</strong><a name=\"table_7.3-1\"></a...</p>", "image": null, "date_modified": "2024-11-14T14:08:10.651050+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/7.2/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/7.2/", "title": "7.2 Naming conventions", "content_html": "<h3>7.2.1 General guidelines</h3>\n<p>This test suite follows the naming convention guidelines provided in oneM2M TS-0015 <a href=\"../2.2/#_ref_i.2\">[i.2]</a>.</p>\n<p>The n...</p>", "image": null, "date_modified": "2024-11-14T14:08:10.622647+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/7.1/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/7.1/", "title": "7.1 Testing conventions", "content_html": "<h3>7.1.1 Testing states</h3>\n<h4>7.1.1.1 Initial state</h4>\n<p>All test cases start with the function f_preamble_XYZ. This function brings the IUT in an \"initialized...</p>", "image": null, "date_modified": "2024-11-14T14:08:10.590544+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/7.0/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/7.0/", "title": "7.0 Introduction", "content_html": "<p>The ATS conventions are intended to give a better understanding of the ATS but they also describe the conventions made for the development of the ATS. These ...</p>", "image": null, "date_modified": "2024-11-14T14:08:10.575600+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/6/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/6/", "title": "6 Untestable Test Purposes", "content_html": "<p>Void.</p>", "image": null, "date_modified": "2024-11-14T14:08:10.554760+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/5/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/5/", "title": "5", "content_html": "", "image": null, "date_modified": "2024-11-14T14:08:10.539857+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.6/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.6/", "title": "5.6 Test strategy", "content_html": "<p>This clause introduces the test strategy being used for the TTCN-3 test cases. The chosen strategy permits to have a clear structure of the code that facilit...</p>", "image": null, "date_modified": "2024-11-14T14:08:10.524235+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.5/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.5/", "title": "5.5 Test components", "content_html": "<h3>5.5.1 Tester</h3>\n<p>The Tester test component includes a set of ports, timers and variables that are common to the other defined components which are described ...</p>", "image": null, "date_modified": "2024-11-14T14:08:10.503794+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.4/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.4/", "title": "5.4 Ports and ASPs (Abstract Services Primitives)", "content_html": "<h3>5.4.0 Introduction</h3>\n<p>The oneM2M ATS implements the following ports:</p>\n<ul>\n<li>The mcaPort and mcaPortIn</li>\n<li>The mccPort and mccPortIn</li>\n<li>The acPort</li>\n<li>The utPort</li>\n<li>...</li>\n</ul>", "image": null, "date_modified": "2024-11-14T14:08:10.471834+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.3/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.3/", "title": "5.3 Test architecture", "content_html": "<p>The approach for the implementation of an Abstract Protocol Tester selected in oneM2M follows the recommendation of the oneM2M Testing Framework oneM2M TS-00...</p>", "image": null, "date_modified": "2024-11-14T14:08:10.420542+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.2/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.2/", "title": "5.2 Test Configuration", "content_html": "<h3>5.2.1 AE Test Configuration</h3>\n<p>Test configurations are defined to test different entities such as CSE and AE, etc.</p>\n<p>Figure 5.2.1-1 shows a AE test configura...</p>", "image": null, "date_modified": "2024-11-14T14:08:10.400011+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.1/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.1/", "title": "5.1 Abstract protocol tester", "content_html": "<p>An abstract protocol tester (APT) is a process that provides behaviours for testing an IUT by emulating a peer IUT at the same layer, and enabling to address...</p>", "image": null, "date_modified": "2024-11-14T14:08:10.381916+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/4/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/4/", "title": "4 Conventions", "content_html": "<p>The key words \"Shall\", \"Shall not\", \"May\", \"Need not\", \"Should\", \"Should not\" in this document are to be interpreted as described in the oneM2M Drafting Rule...</p>", "image": null, "date_modified": "2024-11-14T14:08:10.366627+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/3/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/3/", "title": "3", "content_html": "", "image": null, "date_modified": "2024-11-14T14:08:10.349910+00:00", "authors": [], "tags": null}]} \ No newline at end of file +{"version": "https://jsonfeed.org/version/1", "title": "oneM2M TS-0019", "home_page_url": "https://specifications.onem2m.org/ts-0019/v4.3.0/", "feed_url": "https://specifications.onem2m.org/ts-0019/v4.3.0/feed_json_updated.json", "description": "oneM2M Specifications navigator", "icon": null, "authors": [], "language": "en", "items": [{"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/download/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/download/", "title": "Download", "content_html": "<p>Download baseline for TS-0019 version v4.3.0:</p>\n<p>[<img alt=\"Word\" src=\"images/Word.png\">](TS-0019-Abstract_Test_Suite_and_implementation_eXtra_Information_for_Test_v4.3.0.do...</p>", "image": null, "date_modified": "2024-11-14T14:11:07.543505+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/B/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/B/", "title": "Annex B (informative): Bibliography", "content_html": "<p>ISO/IEC 9646-6 (1994): \"Information technology - Open Systems Interconnection - Conformance testing methodology and framework - Part 6: Protocol profile test...</p>", "image": null, "date_modified": "2024-11-14T14:11:07.525804+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/A/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/A/", "title": "A", "content_html": "", "image": null, "date_modified": "2024-11-14T14:11:07.508667+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/A.1/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/A.1/", "title": "A.1 Electronic annex, zip file with TTCN-3 code", "content_html": "<p>This ATS has been produced using the Testing and Test Control Notation (TTCN) according to ETSI ES 201 873-1 <a href=\"../2.1/#_ref_6\">[6]</a>.</p>\n<p>This test sui...</p>", "image": null, "date_modified": "2024-11-14T14:11:07.492871+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/8/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/8/", "title": "8 TTCN-3 Verifications", "content_html": "<p>The principles for Verifying the TTCN-3 test code are given in oneM2M TS-0015 <a href=\"../2.2/#_ref_i.2\">[i.2]</a>.</p>\n<p>All test cases provided with the present...</p>", "image": null, "date_modified": "2024-11-14T14:11:07.469433+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/7/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/7/", "title": "7", "content_html": "", "image": null, "date_modified": "2024-11-14T14:11:07.454544+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/7.3/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/7.3/", "title": "7.3 IXIT", "content_html": "<p>The following parameters are used by the oneM2M ATS for the correct execution of the test cases.</p>\n<p><strong>Table 7.3-1: oneM2M ATS IXITs</strong><a name=\"table_7.3-1\"></a...</p>", "image": null, "date_modified": "2024-11-14T14:11:07.439807+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/7.2/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/7.2/", "title": "7.2 Naming conventions", "content_html": "<h3>7.2.1 General guidelines</h3>\n<p>This test suite follows the naming convention guidelines provided in oneM2M TS-0015 <a href=\"../2.2/#_ref_i.2\">[i.2]</a>.</p>\n<p>The n...</p>", "image": null, "date_modified": "2024-11-14T14:11:07.410788+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/7.1/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/7.1/", "title": "7.1 Testing conventions", "content_html": "<h3>7.1.1 Testing states</h3>\n<h4>7.1.1.1 Initial state</h4>\n<p>All test cases start with the function f_preamble_XYZ. This function brings the IUT in an \"initialized...</p>", "image": null, "date_modified": "2024-11-14T14:11:07.376499+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/7.0/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/7.0/", "title": "7.0 Introduction", "content_html": "<p>The ATS conventions are intended to give a better understanding of the ATS but they also describe the conventions made for the development of the ATS. These ...</p>", "image": null, "date_modified": "2024-11-14T14:11:07.323038+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/6/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/6/", "title": "6 Untestable Test Purposes", "content_html": "<p>Void.</p>", "image": null, "date_modified": "2024-11-14T14:11:07.303118+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/5/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/5/", "title": "5", "content_html": "", "image": null, "date_modified": "2024-11-14T14:11:07.287038+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.6/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.6/", "title": "5.6 Test strategy", "content_html": "<p>This clause introduces the test strategy being used for the TTCN-3 test cases. The chosen strategy permits to have a clear structure of the code that facilit...</p>", "image": null, "date_modified": "2024-11-14T14:11:07.272573+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.5/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.5/", "title": "5.5 Test components", "content_html": "<h3>5.5.1 Tester</h3>\n<p>The Tester test component includes a set of ports, timers and variables that are common to the other defined components which are described ...</p>", "image": null, "date_modified": "2024-11-14T14:11:07.253801+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.4/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.4/", "title": "5.4 Ports and ASPs (Abstract Services Primitives)", "content_html": "<h3>5.4.0 Introduction</h3>\n<p>The oneM2M ATS implements the following ports:</p>\n<ul>\n<li>The mcaPort and mcaPortIn</li>\n<li>The mccPort and mccPortIn</li>\n<li>The acPort</li>\n<li>The utPort</li>\n<li>...</li>\n</ul>", "image": null, "date_modified": "2024-11-14T14:11:07.218047+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.3/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.3/", "title": "5.3 Test architecture", "content_html": "<p>The approach for the implementation of an Abstract Protocol Tester selected in oneM2M follows the recommendation of the oneM2M Testing Framework oneM2M TS-00...</p>", "image": null, "date_modified": "2024-11-14T14:11:07.161451+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.2/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.2/", "title": "5.2 Test Configuration", "content_html": "<h3>5.2.1 AE Test Configuration</h3>\n<p>Test configurations are defined to test different entities such as CSE and AE, etc.</p>\n<p>Figure 5.2.1-1 shows a AE test configura...</p>", "image": null, "date_modified": "2024-11-14T14:11:07.139062+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.1/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.1/", "title": "5.1 Abstract protocol tester", "content_html": "<p>An abstract protocol tester (APT) is a process that provides behaviours for testing an IUT by emulating a peer IUT at the same layer, and enabling to address...</p>", "image": null, "date_modified": "2024-11-14T14:11:07.119537+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/4/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/4/", "title": "4 Conventions", "content_html": "<p>The key words \"Shall\", \"Shall not\", \"May\", \"Need not\", \"Should\", \"Should not\" in this document are to be interpreted as described in the oneM2M Drafting Rule...</p>", "image": null, "date_modified": "2024-11-14T14:11:07.102140+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/3/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/3/", "title": "3", "content_html": "", "image": null, "date_modified": "2024-11-14T14:11:07.084540+00:00", "authors": [], "tags": null}]} \ No newline at end of file diff --git a/public/v4.3.0/feed_rss_created.xml b/public/v4.3.0/feed_rss_created.xml index 60b97fe3..ccffda3d 100644 --- a/public/v4.3.0/feed_rss_created.xml +++ b/public/v4.3.0/feed_rss_created.xml @@ -1 +1 @@ -<?xml version="1.0" encoding="UTF-8" ?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/"> <channel><title>oneM2M TS-0019</title><description>oneM2M Specifications navigator</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/</link><atom:link href="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml" rel="self" type="application/rss+xml" /><docs>https://git.onem2m.org/specifications/ts/ts-0019.git</docs><language>en</language> <pubDate>Thu, 14 Nov 2024 14:08:10 -0000</pubDate> <lastBuildDate>Thu, 14 Nov 2024 14:08:10 -0000</lastBuildDate> <ttl>1440</ttl> <generator>MkDocs RSS plugin - v1.16.0</generator> <item> <title>Download</title> <description><p>Download baseline for TS-0019 version v4.3.0:</p><p>[<img alt="Word" src="images/Word.png">](TS-0019-Abstract_Test_Suite_and_implementation_eXtra_Information_for_Test_v4.3.0.do...</p></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/download/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/download/</guid> </item> <item> <title>Annex B (informative): Bibliography</title> <description><p>ISO/IEC 9646-6 (1994): "Information technology - Open Systems Interconnection - Conformance testing methodology and framework - Part 6: Protocol profile test...</p></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/B/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/B/</guid> </item> <item> <title>A</title> <description></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/A/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/A/</guid> </item> <item> <title>A.1 Electronic annex, zip file with TTCN-3 code</title> <description><p>This ATS has been produced using the Testing and Test Control Notation (TTCN) according to ETSI ES 201 873-1 <a href="../2.1/#_ref_6">[6]</a>.</p><p>This test sui...</p></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/A.1/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/A.1/</guid> </item> <item> <title>8 TTCN-3 Verifications</title> <description><p>The principles for Verifying the TTCN-3 test code are given in oneM2M TS-0015 <a href="../2.2/#_ref_i.2">[i.2]</a>.</p><p>All test cases provided with the present...</p></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/8/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/8/</guid> </item> <item> <title>7</title> <description></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/7/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/7/</guid> </item> <item> <title>7.3 IXIT</title> <description><p>The following parameters are used by the oneM2M ATS for the correct execution of the test cases.</p><p><strong>Table 7.3-1: oneM2M ATS IXITs</strong><a name="table_7.3-1">&lt;/a...</p></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/7.3/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/7.3/</guid> </item> <item> <title>7.2 Naming conventions</title> <description><h3>7.2.1 General guidelines</h3><p>This test suite follows the naming convention guidelines provided in oneM2M TS-0015 <a href="../2.2/#_ref_i.2">[i.2]</a>.</p><p>The n...</p></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/7.2/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/7.2/</guid> </item> <item> <title>7.1 Testing conventions</title> <description><h3>7.1.1 Testing states</h3><h4>7.1.1.1 Initial state</h4><p>All test cases start with the function f_preamble_XYZ. This function brings the IUT in an "initialized...</p></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/7.1/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/7.1/</guid> </item> <item> <title>7.0 Introduction</title> <description><p>The ATS conventions are intended to give a better understanding of the ATS but they also describe the conventions made for the development of the ATS. These ...</p></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/7.0/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/7.0/</guid> </item> <item> <title>6 Untestable Test Purposes</title> <description><p>Void.</p></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/6/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/6/</guid> </item> <item> <title>5</title> <description></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/5/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/5/</guid> </item> <item> <title>5.6 Test strategy</title> <description><p>This clause introduces the test strategy being used for the TTCN-3 test cases. The chosen strategy permits to have a clear structure of the code that facilit...</p></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/5.6/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/5.6/</guid> </item> <item> <title>5.5 Test components</title> <description><h3>5.5.1 Tester</h3><p>The Tester test component includes a set of ports, timers and variables that are common to the other defined components which are described ...</p></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/5.5/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/5.5/</guid> </item> <item> <title>5.4 Ports and ASPs (Abstract Services Primitives)</title> <description><h3>5.4.0 Introduction</h3><p>The oneM2M ATS implements the following ports:</p><ul><li>The mcaPort and mcaPortIn</li><li>The mccPort and mccPortIn</li><li>The acPort</li><li>The utPort</li><li>...</li></ul></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/5.4/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/5.4/</guid> </item> <item> <title>5.3 Test architecture</title> <description><p>The approach for the implementation of an Abstract Protocol Tester selected in oneM2M follows the recommendation of the oneM2M Testing Framework oneM2M TS-00...</p></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/5.3/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/5.3/</guid> </item> <item> <title>5.2 Test Configuration</title> <description><h3>5.2.1 AE Test Configuration</h3><p>Test configurations are defined to test different entities such as CSE and AE, etc.</p><p>Figure 5.2.1-1 shows a AE test configura...</p></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/5.2/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/5.2/</guid> </item> <item> <title>5.1 Abstract protocol tester</title> <description><p>An abstract protocol tester (APT) is a process that provides behaviours for testing an IUT by emulating a peer IUT at the same layer, and enabling to address...</p></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/5.1/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/5.1/</guid> </item> <item> <title>4 Conventions</title> <description><p>The key words "Shall", "Shall not", "May", "Need not", "Should", "Should not" in this document are to be interpreted as described in the oneM2M Drafting Rule...</p></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/4/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/4/</guid> </item> <item> <title>3</title> <description></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/3/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/3/</guid> </item> </channel></rss> \ No newline at end of file +<?xml version="1.0" encoding="UTF-8" ?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/"> <channel><title>oneM2M TS-0019</title><description>oneM2M Specifications navigator</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/</link><atom:link href="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml" rel="self" type="application/rss+xml" /><docs>https://git.onem2m.org/specifications/ts/ts-0019.git</docs><language>en</language> <pubDate>Thu, 14 Nov 2024 14:11:06 -0000</pubDate> <lastBuildDate>Thu, 14 Nov 2024 14:11:06 -0000</lastBuildDate> <ttl>1440</ttl> <generator>MkDocs RSS plugin - v1.16.0</generator> <item> <title>Download</title> <description><p>Download baseline for TS-0019 version v4.3.0:</p><p>[<img alt="Word" src="images/Word.png">](TS-0019-Abstract_Test_Suite_and_implementation_eXtra_Information_for_Test_v4.3.0.do...</p></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/download/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/download/</guid> </item> <item> <title>Annex B (informative): Bibliography</title> <description><p>ISO/IEC 9646-6 (1994): "Information technology - Open Systems Interconnection - Conformance testing methodology and framework - Part 6: Protocol profile test...</p></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/B/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/B/</guid> </item> <item> <title>A</title> <description></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/A/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/A/</guid> </item> <item> <title>A.1 Electronic annex, zip file with TTCN-3 code</title> <description><p>This ATS has been produced using the Testing and Test Control Notation (TTCN) according to ETSI ES 201 873-1 <a href="../2.1/#_ref_6">[6]</a>.</p><p>This test sui...</p></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/A.1/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/A.1/</guid> </item> <item> <title>8 TTCN-3 Verifications</title> <description><p>The principles for Verifying the TTCN-3 test code are given in oneM2M TS-0015 <a href="../2.2/#_ref_i.2">[i.2]</a>.</p><p>All test cases provided with the present...</p></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/8/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/8/</guid> </item> <item> <title>7</title> <description></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/7/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/7/</guid> </item> <item> <title>7.3 IXIT</title> <description><p>The following parameters are used by the oneM2M ATS for the correct execution of the test cases.</p><p><strong>Table 7.3-1: oneM2M ATS IXITs</strong><a name="table_7.3-1">&lt;/a...</p></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/7.3/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/7.3/</guid> </item> <item> <title>7.2 Naming conventions</title> <description><h3>7.2.1 General guidelines</h3><p>This test suite follows the naming convention guidelines provided in oneM2M TS-0015 <a href="../2.2/#_ref_i.2">[i.2]</a>.</p><p>The n...</p></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/7.2/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/7.2/</guid> </item> <item> <title>7.1 Testing conventions</title> <description><h3>7.1.1 Testing states</h3><h4>7.1.1.1 Initial state</h4><p>All test cases start with the function f_preamble_XYZ. This function brings the IUT in an "initialized...</p></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/7.1/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/7.1/</guid> </item> <item> <title>7.0 Introduction</title> <description><p>The ATS conventions are intended to give a better understanding of the ATS but they also describe the conventions made for the development of the ATS. These ...</p></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/7.0/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/7.0/</guid> </item> <item> <title>6 Untestable Test Purposes</title> <description><p>Void.</p></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/6/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/6/</guid> </item> <item> <title>5</title> <description></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/5/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/5/</guid> </item> <item> <title>5.6 Test strategy</title> <description><p>This clause introduces the test strategy being used for the TTCN-3 test cases. The chosen strategy permits to have a clear structure of the code that facilit...</p></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/5.6/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/5.6/</guid> </item> <item> <title>5.5 Test components</title> <description><h3>5.5.1 Tester</h3><p>The Tester test component includes a set of ports, timers and variables that are common to the other defined components which are described ...</p></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/5.5/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/5.5/</guid> </item> <item> <title>5.4 Ports and ASPs (Abstract Services Primitives)</title> <description><h3>5.4.0 Introduction</h3><p>The oneM2M ATS implements the following ports:</p><ul><li>The mcaPort and mcaPortIn</li><li>The mccPort and mccPortIn</li><li>The acPort</li><li>The utPort</li><li>...</li></ul></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/5.4/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/5.4/</guid> </item> <item> <title>5.3 Test architecture</title> <description><p>The approach for the implementation of an Abstract Protocol Tester selected in oneM2M follows the recommendation of the oneM2M Testing Framework oneM2M TS-00...</p></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/5.3/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/5.3/</guid> </item> <item> <title>5.2 Test Configuration</title> <description><h3>5.2.1 AE Test Configuration</h3><p>Test configurations are defined to test different entities such as CSE and AE, etc.</p><p>Figure 5.2.1-1 shows a AE test configura...</p></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/5.2/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/5.2/</guid> </item> <item> <title>5.1 Abstract protocol tester</title> <description><p>An abstract protocol tester (APT) is a process that provides behaviours for testing an IUT by emulating a peer IUT at the same layer, and enabling to address...</p></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/5.1/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/5.1/</guid> </item> <item> <title>4 Conventions</title> <description><p>The key words "Shall", "Shall not", "May", "Need not", "Should", "Should not" in this document are to be interpreted as described in the oneM2M Drafting Rule...</p></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/4/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/4/</guid> </item> <item> <title>3</title> <description></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/3/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/3/</guid> </item> </channel></rss> \ No newline at end of file diff --git a/public/v4.3.0/feed_rss_updated.xml b/public/v4.3.0/feed_rss_updated.xml index 41b01c8a..a4c2ced4 100644 --- a/public/v4.3.0/feed_rss_updated.xml +++ b/public/v4.3.0/feed_rss_updated.xml @@ -1 +1 @@ -<?xml version="1.0" encoding="UTF-8" ?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/"> <channel><title>oneM2M TS-0019</title><description>oneM2M Specifications navigator</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/</link><atom:link href="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml" rel="self" type="application/rss+xml" /><docs>https://git.onem2m.org/specifications/ts/ts-0019.git</docs><language>en</language> <pubDate>Thu, 14 Nov 2024 14:08:10 -0000</pubDate> <lastBuildDate>Thu, 14 Nov 2024 14:08:10 -0000</lastBuildDate> <ttl>1440</ttl> <generator>MkDocs RSS plugin - v1.16.0</generator> <item> <title>Download</title> <description><p>Download baseline for TS-0019 version v4.3.0:</p><p>[<img alt="Word" src="images/Word.png">](TS-0019-Abstract_Test_Suite_and_implementation_eXtra_Information_for_Test_v4.3.0.do...</p></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/download/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/download/</guid> </item> <item> <title>Annex B (informative): Bibliography</title> <description><p>ISO/IEC 9646-6 (1994): "Information technology - Open Systems Interconnection - Conformance testing methodology and framework - Part 6: Protocol profile test...</p></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/B/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/B/</guid> </item> <item> <title>A</title> <description></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/A/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/A/</guid> </item> <item> <title>A.1 Electronic annex, zip file with TTCN-3 code</title> <description><p>This ATS has been produced using the Testing and Test Control Notation (TTCN) according to ETSI ES 201 873-1 <a href="../2.1/#_ref_6">[6]</a>.</p><p>This test sui...</p></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/A.1/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/A.1/</guid> </item> <item> <title>8 TTCN-3 Verifications</title> <description><p>The principles for Verifying the TTCN-3 test code are given in oneM2M TS-0015 <a href="../2.2/#_ref_i.2">[i.2]</a>.</p><p>All test cases provided with the present...</p></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/8/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/8/</guid> </item> <item> <title>7</title> <description></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/7/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/7/</guid> </item> <item> <title>7.3 IXIT</title> <description><p>The following parameters are used by the oneM2M ATS for the correct execution of the test cases.</p><p><strong>Table 7.3-1: oneM2M ATS IXITs</strong><a name="table_7.3-1">&lt;/a...</p></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/7.3/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/7.3/</guid> </item> <item> <title>7.2 Naming conventions</title> <description><h3>7.2.1 General guidelines</h3><p>This test suite follows the naming convention guidelines provided in oneM2M TS-0015 <a href="../2.2/#_ref_i.2">[i.2]</a>.</p><p>The n...</p></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/7.2/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/7.2/</guid> </item> <item> <title>7.1 Testing conventions</title> <description><h3>7.1.1 Testing states</h3><h4>7.1.1.1 Initial state</h4><p>All test cases start with the function f_preamble_XYZ. This function brings the IUT in an "initialized...</p></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/7.1/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/7.1/</guid> </item> <item> <title>7.0 Introduction</title> <description><p>The ATS conventions are intended to give a better understanding of the ATS but they also describe the conventions made for the development of the ATS. These ...</p></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/7.0/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/7.0/</guid> </item> <item> <title>6 Untestable Test Purposes</title> <description><p>Void.</p></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/6/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/6/</guid> </item> <item> <title>5</title> <description></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/5/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/5/</guid> </item> <item> <title>5.6 Test strategy</title> <description><p>This clause introduces the test strategy being used for the TTCN-3 test cases. The chosen strategy permits to have a clear structure of the code that facilit...</p></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/5.6/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/5.6/</guid> </item> <item> <title>5.5 Test components</title> <description><h3>5.5.1 Tester</h3><p>The Tester test component includes a set of ports, timers and variables that are common to the other defined components which are described ...</p></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/5.5/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/5.5/</guid> </item> <item> <title>5.4 Ports and ASPs (Abstract Services Primitives)</title> <description><h3>5.4.0 Introduction</h3><p>The oneM2M ATS implements the following ports:</p><ul><li>The mcaPort and mcaPortIn</li><li>The mccPort and mccPortIn</li><li>The acPort</li><li>The utPort</li><li>...</li></ul></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/5.4/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/5.4/</guid> </item> <item> <title>5.3 Test architecture</title> <description><p>The approach for the implementation of an Abstract Protocol Tester selected in oneM2M follows the recommendation of the oneM2M Testing Framework oneM2M TS-00...</p></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/5.3/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/5.3/</guid> </item> <item> <title>5.2 Test Configuration</title> <description><h3>5.2.1 AE Test Configuration</h3><p>Test configurations are defined to test different entities such as CSE and AE, etc.</p><p>Figure 5.2.1-1 shows a AE test configura...</p></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/5.2/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/5.2/</guid> </item> <item> <title>5.1 Abstract protocol tester</title> <description><p>An abstract protocol tester (APT) is a process that provides behaviours for testing an IUT by emulating a peer IUT at the same layer, and enabling to address...</p></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/5.1/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/5.1/</guid> </item> <item> <title>4 Conventions</title> <description><p>The key words "Shall", "Shall not", "May", "Need not", "Should", "Should not" in this document are to be interpreted as described in the oneM2M Drafting Rule...</p></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/4/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/4/</guid> </item> <item> <title>3</title> <description></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/3/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/3/</guid> </item> </channel></rss> \ No newline at end of file +<?xml version="1.0" encoding="UTF-8" ?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/"> <channel><title>oneM2M TS-0019</title><description>oneM2M Specifications navigator</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/</link><atom:link href="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml" rel="self" type="application/rss+xml" /><docs>https://git.onem2m.org/specifications/ts/ts-0019.git</docs><language>en</language> <pubDate>Thu, 14 Nov 2024 14:11:06 -0000</pubDate> <lastBuildDate>Thu, 14 Nov 2024 14:11:06 -0000</lastBuildDate> <ttl>1440</ttl> <generator>MkDocs RSS plugin - v1.16.0</generator> <item> <title>Download</title> <description><p>Download baseline for TS-0019 version v4.3.0:</p><p>[<img alt="Word" src="images/Word.png">](TS-0019-Abstract_Test_Suite_and_implementation_eXtra_Information_for_Test_v4.3.0.do...</p></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/download/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/download/</guid> </item> <item> <title>Annex B (informative): Bibliography</title> <description><p>ISO/IEC 9646-6 (1994): "Information technology - Open Systems Interconnection - Conformance testing methodology and framework - Part 6: Protocol profile test...</p></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/B/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/B/</guid> </item> <item> <title>A</title> <description></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/A/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/A/</guid> </item> <item> <title>A.1 Electronic annex, zip file with TTCN-3 code</title> <description><p>This ATS has been produced using the Testing and Test Control Notation (TTCN) according to ETSI ES 201 873-1 <a href="../2.1/#_ref_6">[6]</a>.</p><p>This test sui...</p></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/A.1/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/A.1/</guid> </item> <item> <title>8 TTCN-3 Verifications</title> <description><p>The principles for Verifying the TTCN-3 test code are given in oneM2M TS-0015 <a href="../2.2/#_ref_i.2">[i.2]</a>.</p><p>All test cases provided with the present...</p></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/8/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/8/</guid> </item> <item> <title>7</title> <description></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/7/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/7/</guid> </item> <item> <title>7.3 IXIT</title> <description><p>The following parameters are used by the oneM2M ATS for the correct execution of the test cases.</p><p><strong>Table 7.3-1: oneM2M ATS IXITs</strong><a name="table_7.3-1">&lt;/a...</p></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/7.3/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/7.3/</guid> </item> <item> <title>7.2 Naming conventions</title> <description><h3>7.2.1 General guidelines</h3><p>This test suite follows the naming convention guidelines provided in oneM2M TS-0015 <a href="../2.2/#_ref_i.2">[i.2]</a>.</p><p>The n...</p></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/7.2/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/7.2/</guid> </item> <item> <title>7.1 Testing conventions</title> <description><h3>7.1.1 Testing states</h3><h4>7.1.1.1 Initial state</h4><p>All test cases start with the function f_preamble_XYZ. This function brings the IUT in an "initialized...</p></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/7.1/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/7.1/</guid> </item> <item> <title>7.0 Introduction</title> <description><p>The ATS conventions are intended to give a better understanding of the ATS but they also describe the conventions made for the development of the ATS. These ...</p></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/7.0/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/7.0/</guid> </item> <item> <title>6 Untestable Test Purposes</title> <description><p>Void.</p></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/6/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/6/</guid> </item> <item> <title>5</title> <description></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/5/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/5/</guid> </item> <item> <title>5.6 Test strategy</title> <description><p>This clause introduces the test strategy being used for the TTCN-3 test cases. The chosen strategy permits to have a clear structure of the code that facilit...</p></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/5.6/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/5.6/</guid> </item> <item> <title>5.5 Test components</title> <description><h3>5.5.1 Tester</h3><p>The Tester test component includes a set of ports, timers and variables that are common to the other defined components which are described ...</p></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/5.5/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/5.5/</guid> </item> <item> <title>5.4 Ports and ASPs (Abstract Services Primitives)</title> <description><h3>5.4.0 Introduction</h3><p>The oneM2M ATS implements the following ports:</p><ul><li>The mcaPort and mcaPortIn</li><li>The mccPort and mccPortIn</li><li>The acPort</li><li>The utPort</li><li>...</li></ul></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/5.4/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/5.4/</guid> </item> <item> <title>5.3 Test architecture</title> <description><p>The approach for the implementation of an Abstract Protocol Tester selected in oneM2M follows the recommendation of the oneM2M Testing Framework oneM2M TS-00...</p></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/5.3/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/5.3/</guid> </item> <item> <title>5.2 Test Configuration</title> <description><h3>5.2.1 AE Test Configuration</h3><p>Test configurations are defined to test different entities such as CSE and AE, etc.</p><p>Figure 5.2.1-1 shows a AE test configura...</p></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/5.2/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/5.2/</guid> </item> <item> <title>5.1 Abstract protocol tester</title> <description><p>An abstract protocol tester (APT) is a process that provides behaviours for testing an IUT by emulating a peer IUT at the same layer, and enabling to address...</p></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/5.1/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/5.1/</guid> </item> <item> <title>4 Conventions</title> <description><p>The key words "Shall", "Shall not", "May", "Need not", "Should", "Should not" in this document are to be interpreted as described in the oneM2M Drafting Rule...</p></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/4/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/4/</guid> </item> <item> <title>3</title> <description></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/3/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/3/</guid> </item> </channel></rss> \ No newline at end of file diff --git a/public/v4.3.0/search/search_index.json b/public/v4.3.0/search/search_index.json index 5b6ae9f2..de105cc8 100644 --- a/public/v4.3.0/search/search_index.json +++ b/public/v4.3.0/search/search_index.json @@ -1 +1 @@ -{"config":{"lang":["en"],"separator":"[\\s\\-]+","pipeline":["stopWordFilter"]},"docs":[{"location":"","title":"","text":"oneM2MTechnical Specification oneM2MTechnical Specification Document Number oneM2M-TS-0019-V-4.1.1 Document Name: Abstract Test Suite and Implementation eXtra Information for Test Date: 2024 March 1 Abstract: Abstract Test Suite and Implementation eXtra Information for Test consists of :- Definition of the Abstract Protocol Tester (APT)- Definition of TTCN-3 test architecture- Development of TTCN-3 test suite, e.g. naming conventions, code documentation, test case structure.- IXIT proforma; Template Version:23 February 2015 (Do not modify) Template Version:23 February 2015 (Do not modify) <p>This Specification is provided for future development work within oneM2M only. The Partners accept no liability for any use of this Specification.</p> <p>The present document has not been subject to any approval process by the oneM2M Partners Type 1. Published oneM2M specifications and reports for implementation should be obtained via the oneM2M Partners' Publications Offices.</p> <p>About oneM2M </p> <p>The purpose and goal of oneM2M is to develop technical specifications which address the need for a common M2M Service Layer that can be readily embedded within various hardware and software, and relied upon to connect the myriad of devices in the field with M2M application servers worldwide. </p> <p>More information about oneM2M may be found at: http//www.oneM2M.org</p> <p>Copyright Notification</p> <p>(c) 2019, oneM2M Partners Type 1 (ARIB, ATIS, CCSA, ETSI, TIA, TSDSI, TTA, TTC).</p> <p>All rights reserved.</p> <p>The copyright extends to reproduction in all media.</p> <p>Notice of Disclaimer & Limitation of Liability </p> <p>The information provided in this document is directed solely to professionals who have the appropriate degree of experience to understand and interpret its contents in accordance with generally accepted engineering or other professional standards and applicable regulations. No recommendation as to products or vendors is made or should be implied. </p> <p>NO REPRESENTATION OR WARRANTY IS MADE THAT THE INFORMATION IS TECHNICALLY ACCURATE OR SUFFICIENT OR CONFORMS TO ANY STATUTE, GOVERNMENTAL RULE OR REGULATION, AND FURTHER, NO REPRESENTATION OR WARRANTY IS MADE OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR AGAINST INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS. NO oneM2M PARTNER TYPE 1 SHALL BE LIABLE, BEYOND THE AMOUNT OF ANY SUM RECEIVED IN PAYMENT BY THAT PARTNER FOR THIS DOCUMENT, WITH RESPECT TO ANY CLAIM, AND IN NO EVENT SHALL oneM2M BE LIABLE FOR LOST PROFITS OR OTHER INCIDENTAL OR CONSEQUENTIAL DAMAGES. oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PROVIDED IN THIS DOCUMENT IS AT THE RISK OF THE USER.</p>"},{"location":"0/","title":"0","text":"oneM2MTechnical Specification oneM2MTechnical Specification Document Number oneM2M-TS-0019-V-4.1.1 Document Name: Abstract Test Suite and Implementation eXtra Information for Test Date: 2024 March 1 Abstract: Abstract Test Suite and Implementation eXtra Information for Test consists of :- Definition of the Abstract Protocol Tester (APT)- Definition of TTCN-3 test architecture- Development of TTCN-3 test suite, e.g. naming conventions, code documentation, test case structure.- IXIT proforma; Template Version:23 February 2015 (Do not modify) Template Version:23 February 2015 (Do not modify) <p>This Specification is provided for future development work within oneM2M only. The Partners accept no liability for any use of this Specification.</p> <p>The present document has not been subject to any approval process by the oneM2M Partners Type 1. Published oneM2M specifications and reports for implementation should be obtained via the oneM2M Partners' Publications Offices.</p> <p>About oneM2M </p> <p>The purpose and goal of oneM2M is to develop technical specifications which address the need for a common M2M Service Layer that can be readily embedded within various hardware and software, and relied upon to connect the myriad of devices in the field with M2M application servers worldwide. </p> <p>More information about oneM2M may be found at: http//www.oneM2M.org</p> <p>Copyright Notification</p> <p>(c) 2019, oneM2M Partners Type 1 (ARIB, ATIS, CCSA, ETSI, TIA, TSDSI, TTA, TTC).</p> <p>All rights reserved.</p> <p>The copyright extends to reproduction in all media.</p> <p>Notice of Disclaimer & Limitation of Liability </p> <p>The information provided in this document is directed solely to professionals who have the appropriate degree of experience to understand and interpret its contents in accordance with generally accepted engineering or other professional standards and applicable regulations. No recommendation as to products or vendors is made or should be implied. </p> <p>NO REPRESENTATION OR WARRANTY IS MADE THAT THE INFORMATION IS TECHNICALLY ACCURATE OR SUFFICIENT OR CONFORMS TO ANY STATUTE, GOVERNMENTAL RULE OR REGULATION, AND FURTHER, NO REPRESENTATION OR WARRANTY IS MADE OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR AGAINST INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS. NO oneM2M PARTNER TYPE 1 SHALL BE LIABLE, BEYOND THE AMOUNT OF ANY SUM RECEIVED IN PAYMENT BY THAT PARTNER FOR THIS DOCUMENT, WITH RESPECT TO ANY CLAIM, AND IN NO EVENT SHALL oneM2M BE LIABLE FOR LOST PROFITS OR OTHER INCIDENTAL OR CONSEQUENTIAL DAMAGES. oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PROVIDED IN THIS DOCUMENT IS AT THE RISK OF THE USER.</p>"},{"location":"1/","title":"1 Scope","text":"<p>The present document contains the Abstract Test Suite (ATS) for oneM2M as defined in oneM2M TS-0001 [1] and oneM2M TS-0004 [2] in compliance with the relevant requirements and in accordance with the relevant guidance given in ISO/IEC 96467 [5].</p> <p>The objective of the present document is to provide a basis for conformance tests for oneM2M products giving a high probability of interoperability between different manufacturers' equipment.</p> <p>The ISO standard for the methodology of conformance testing (ISO/IEC 96461 [3] and ISO/IEC 96462 [4]) as well as oneM2M TS-0015 Testing Framework [i.2] are used as a basis for the test methodology.</p>"},{"location":"2.1/","title":"2.1 Normative references","text":"<p>References are either specific (identified by date of publication and/or edition number or version number) or nonspecific. For specific references, only the cited version applies. For non-specific references, the latest version of the referenced document (including any amendments) applies.</p> <p>The following referenced documents are necessary for the application of the present document.</p> <ul> <li>[1] oneM2M TS-0001: \"Functional Architecture\".</li> <li>[2] oneM2M TS-0004: \"Service Layer Core Protocol\".</li> <li>[3] ISO/IEC 9646-1 (1994): \"Information technology - Open Systems Interconnection - Conformance testing methodology and framework - Part 1: General concepts\".</li> <li>[4] ISO/IEC 9646-2 (1994): \"Information technology - Open Systems Interconnection - Conformance testing methodology and framework - Part 2: Abstract Test Suite specification\".</li> <li>[5] ISO/IEC 9646-7 (1995): \"Information technology - Open Systems Interconnection - Conformance testing methodology and framework - Part 7: Implementation Conformance Statements\".</li> <li>[6] ETSI ES 201 873-1 (V4.5.1): \"Methods for Testing and Specification (MTS); The Testing and Test Control Notation version 3; Part 1: TTCN-3 Core Language\".</li> <li> <p>[7] oneM2M TS-0018: \"Test Suite Structure and Test Purposes\".</p> </li> <li> <p>[8] 3GPP TS 29.122; T8 reference point for Northbound APIs (Release 15)</p> </li> </ul>"},{"location":"2.2/","title":"2.2 Informative references","text":"<p>References are either specific (identified by date of publication and/or edition number or version number) or nonspecific. For specific references, only the cited version applies. For non-specific references, the latest version of the referenced document (including any amendments) applies.</p> <p>The following referenced documents are not necessary for the application of the present document but they assist the user with regard to a particular subject area.</p> <ul> <li>[i.1] oneM2M Drafting Rules.</li> </ul> <p>Note</p> <p>Available at http://www.onem2m.org/images/files/oneM2M-Drafting-Rules.pdf.</p> <ul> <li>[i.2] oneM2M TS-0015: \"Testing Framework\".</li> <li>[i.3] oneM2M TS-0025: \"Product profiles\".</li> </ul>"},{"location":"3.1/","title":"3.1 Terms","text":"<p>For the purposes of the present document, the terms given in ISO/IEC 96461 [3], ISO/IEC 96467 [5] and oneM2M TS-0015 [i.2] apply.</p>"},{"location":"3.2/","title":"3.2 Symbols","text":"<p>For the purposes of the present document, the following abbreviations apply:</p> <p><code>AE Application Entity</code> <code>APT Abstract Protocol Tester</code> <code>ATM Abstract Test Method</code> <code>ATS Abstract Test Suite</code> <code>CoAP Constrained Application Protocol</code> <code>CSE Common Service Entity</code> <code>HTTP Hypertext Transfer Protocol</code> <code>IP Internet Protocol</code> <code>IUT Implementation Under Test</code> <code>IXIT Implementation eXtra Information for Test</code> <code>JSON JavaScript Object Notation</code> <code>MQTT Message Queuing Telemetry Transport</code> <code>MTC Main Test Component</code> <code>PA Platform Adaptor</code> <code>PICS Protocol Implementation Conformance Statement</code> <code>PTC Paralell Test Component</code> <code>PX PiXit</code> <code>SA System Adaptor</code> <code>SUT System Under Test</code> <code>TC Test Case</code> <code>TCP Transmission Control Protocol</code> <code>TP Test Purposes</code> <code>TS Test System</code> <code>TSS Test Suite Structure</code> <code>TTCN Tree and Tabular Combined Notation</code> <code>UDP User Datagram Protocol</code> <code>UT Upper Tester</code> <code>XML eXtensible Markup Language</code> </p>"},{"location":"4/","title":"4 Conventions","text":"<p>The key words \"Shall\", \"Shall not\", \"May\", \"Need not\", \"Should\", \"Should not\" in this document are to be interpreted as described in the oneM2M Drafting Rules [i.1].</p>"},{"location":"5.1/","title":"5.1 Abstract protocol tester","text":"<p>An abstract protocol tester (APT) is a process that provides behaviours for testing an IUT by emulating a peer IUT at the same layer, and enabling to address a single test objective.</p> <p>APTs used by the oneM2M test suite are described in figure 5.1-1. The test system will simulate valid and invalid protocol behaviour, and will analyse the reaction of the IUT.</p> <p></p> <p>Figure 5.1-1: Abstract protocol testers - oneM2M</p> <p>As figure 5.1-1 illustrates, the corresponding ATS needs to use lower layers to establish a proper connection to the system under test (SUT) over a physical link (Lower layers link). Four different lower layers have been specified corresponding to the binding protocols considered in oneM2M: HTTP, CoAP, WebSocket and MQTT.</p>"},{"location":"5.2/","title":"5.2 Test Configuration","text":""},{"location":"5.2/#521-ae-test-configuration","title":"5.2.1 AE Test Configuration","text":"<p>Test configurations are defined to test different entities such as CSE and AE, etc.</p> <p>Figure 5.2.1-1 shows a AE test configuration which is mapped to CF03 in clause 6.3.3.3 in oneM2M TS0015 [i.2] and aligns with conformance test system architecture in clause 6.3.3.2 in oneM2M TS-0015 [i.2].</p> <p>The TTCN-3 Test Component in Test System sends triggering actions or behaviour to the Upper Tester Application of SUT through upper tester transport link Ut while the IUT sends/receives oneM2M service primitives through Mca to/from CSE in Test System.</p> <p></p> <p>Figure 5.2.1-1: AE test configuration</p>"},{"location":"5.3/","title":"5.3 Test architecture","text":"<p>The approach for the implementation of an Abstract Protocol Tester selected in oneM2M follows the recommendation of the oneM2M Testing Framework oneM2M TS-0015 [i.2] where the TTCN-3 language and its architecture are recommended.</p> <p>Following this recommendation the oneM2M tester architecture comprises a non-platform dependent Test Suite, and a platform dependent part.</p> <p></p> <p>Note</p> <p>However, it can be implemented in a semi-independent manner, which will minimize the dependency to those elements.</p> <p>Figure 5.3-1: High level oneM2M Test Architecture</p> <ul> <li>oneM2M TTCN -3 Abstract Test Suite: the test suite is platform independent, and it is the cornerstone of the architecture. It allows a complete decoupling between the test suite and the rest of the test system. The test suite is composed of a complete set of test cases covering oneM2M requirements specified by oneM2M TS0001 [1] and oneM2M TS-0004 [2].</li> <li>oneM2M System Adaptor : this is the platform dependent part that includes adaptors and codecs (out of the scope of the present document). This part of the architecture definition depends on the specific platform (e.g. Windows or Linux) and test tool on which the tester is going to run.</li> </ul> <p>Figure 5.3-2 shows the oneM2M TTCN-3 test architecture design used for the oneM2M ATS. The Test Suite needs to interact with the System Adaptor to implement the collection of TTCN-3 test cases that are intended to be used to test the oneM2M IUTs.</p> <p>The oneM2M TTCN-3 test cases implement the test algorithms specified in the TSS&TP document oneM2M TS0018 [7], including verdict logic that allows pass/fail diagnosis.</p> <p>The test algorithms use the interfaces defined in [1] and [2] (mca, mcc) in order to:</p> <ol> <li>control the test event to be sent towards the IUT; and</li> <li>observe the test events received from the IUT.</li> </ol> <p>In TTCN-3 these two interfaces have been implemented through a set of logical TTCN-3 ports (mcaPort and mcaPortIn for mca interface, and mccPort and mccPortIn for mcc interface) which allows oneM2M message primitives exchange with the IUT.</p> <p></p> <p>Figure 5.3-2: oneM2M Test Architecture</p> <p>The oneM2M primitive messages have been mapped into TTCN-3 structure. Through this mapping, the TTCN-3 is able to build and send these messages, as well as receive them via the ports defined above.</p> <p>Additionally, the test cases are able to control and configure the test platform through a dedicated port called acPort while port utPort enables oneM2M TTCN-3 Test Component module to trigger specific action or behaviour on IUT. TTCN3 Test Components can also exchange information through a dedicated port called infoPort.</p> <p>To build up a tester, the test platform needs to be also developed (out of scope). This test platform is composed of three adaptation layers:</p> <ul> <li>PA (Platform Adaptor) layer functionality implements the communication between the TTCN-3 modules and external elements that constitute the test tool such as timers and external functions. The External functions are a powerful resources supported by TTCN-3 language. An External function is a function declared at the TTCN-3 level but implemented at the native level.</li> <li> <p>SA (System Adaptor) layer functionality is divided into two modules:</p> <ul> <li>oneM2M lower layers stack module implements the communication with the IUT and carries out the oneM2M primitives messages sent to or received from the IUT. This module is based on TCP or UDP depending on the binding supported by the IUT. The binding is a system adaptor parameter.</li> <li>Upper Tester Transport module implements functions that enable triggering specific actions or behaviour on the IUT.</li> </ul> </li> <li> <p>CODECS layer is the part of the tester to encode and decode messages between the TTCN-3 abstract internal data representation and the format required by the related base standard which the IUT understands. Several CODECS are required in oneM2M tester to cope with the bindings considered in oneM2M (HTTP, CoAP, MQTT) and the serialization methods (xml, json).</p> </li> </ul>"},{"location":"5.4/","title":"5.4 Ports and ASPs (Abstract Services Primitives)","text":""},{"location":"5.4/#540-introduction","title":"5.4.0 Introduction","text":"<p>The oneM2M ATS implements the following ports:</p> <ul> <li>The mcaPort and mcaPortIn</li> <li>The mccPort and mccPortIn</li> <li>The acPort</li> <li>The utPort</li> <li>The InfoPort</li> </ul>"},{"location":"5.4/#541-mcaport-mcaportin-mccport-mccportin","title":"5.4.1 mcaPort, mcaPortIn, mccPort, mccPortIn","text":"<p>These ports are used to send and receive the following message sets:</p> <ul> <li>Request Primitives messages in accordance with oneM2M TS-0004 [2].</li> <li>Response Primitives messages in accordance with oneM2M TS-0004 [2].</li> </ul> <p>Two primitives are currently defined for these ports indicated as table 5.4.1-1:</p> <ol> <li>The M2MRequestPrimitive - to send or receive oneM2M messages to/from the IUT. Depending on the IUT to be tested:<ol> <li>If the IUT is an AE, these messages are either received or sent by the tester which is associated with the CSE role through the mcaPortIn or the mcaPort respectively.</li> <li>If the IUT is a CSE, these messages are either sent or received by the tester when it plays the AE role through the mcaPort or the mcaPortIn respectively, or sent or received by the tester when it plays the CSE role through the mccPort or the mccPortIn respectively.</li> </ol> </li> <li>The M2MResponsePrimitive - to send or receive oneM2M messages to/from the IUT. Depending on the IUT to be tested:<ol> <li>If the IUT is an AE, these messages are either sent or received by the tester which is associated with the CSE role through the mcaPortIn or the mcaPort respectively.</li> <li>If the IUT is a CSE, these messages are either sent or received by the tester when it plays the CSE role through the mccPortIn or the mccPort respectively, sent or received by the tester when it plays the AE role through the mcaPortIn or mcaPort respectively.</li> </ol> </li> </ol> <p>Both primitives contain another parameters that permits to dynamically configure the test adaptor for every single sending. These parameters are:</p> <ul> <li>Host: IP address of the IUT</li> <li>XML Namespace</li> <li>Protocol binding</li> <li>Serialization</li> <li>ForceFields: used to force invalid or empty values to certain attributes. This behaviour shall be implemented by the System Adaptor.</li> </ul> <p>Table 5.4.1-1: Mapping of TTCN-3 Primitives to oneM2M Service Primitives</p> TTCN-3 Primitive oneM2M Message Direction IUT M2MRequestPrimitive Request Primitive <=> AE M2MRequestPrimitive Request Primitive <=> CSE M2MResponsePrimitive Response Primitive <=> AE M2MResponsePrimitive Response Primitive <=> CSE"},{"location":"5.4/#542-mcnport-mcnportin","title":"5.4.2 mcnPort, mcnPortIn","text":"<p>These ports are used to send and receive the following message sets:</p> <ul> <li>Request Primitives messages in accordance with oneM2M TS-0004 [2].</li> <li>Response Primitives messages in accordance with oneM2M TS-0004 [2].</li> </ul> <p>Two primitives are currently defined for these ports indicated:</p> <ol> <li> <p>The T8Request - to send T8 request messages to/from the IUT according to 3GPP TS 29.122 [8]. </p> </li> <li> <p>The T8Response - to receive T8 response messages to/from the IUT according to 3GPP TS 29.122 [8].</p> </li> </ol> <p>Further primitives might be defined to support other underlying networks.</p>"},{"location":"5.4/#543-mccportinternal","title":"5.4.3 mccPortInternal","text":"<p>This port is used to send and receive the following message sets between TTCN-3 components:</p> <ul> <li>Request Primitives messages in accordance with oneM2M TS-0004 [2].</li> <li>Response Primitives messages in accordance with oneM2M TS-0004 [2].</li> </ul>"},{"location":"5.4/#544-utport","title":"5.4.4 utPort","text":""},{"location":"5.4/#5440-introduction","title":"5.4.4.0 Introduction","text":"<p>The utPort is included in the oneM2M ATS in order to be able to stimulate the IUT and receive extra information from IUT upper layers. For instance, the utPort can be applied to automate AE testing shown as clause 5.4.4.1.</p>"},{"location":"5.4/#5441-usage-for-automated-ae-testing","title":"5.4.4.1 Usage for Automated AE Testing","text":"<p>The utPort is in charge of the communication between TTCN-3 Test Component module in Test System and the Upper Tester Application in SUT.</p> <p>Functionalities that TTCN-3 Test Component module and the Upper Tester Application are required to implement are listed as follows:</p> <ul> <li>TTCN-3 Test Component is able to configure the Test System and send standardized triggering commands to the SUT (Upper Tester Application).</li> <li>Upper Tester Application can process the triggering command messages received from Test System (TTCN-3 Test Component) and stimulates IUT to act following the corresponding triggering command (i.e. sending oneM2M service primitives to Test System through Mca port).</li> </ul> <p>oneM2M service Primitive defined for utPort is listed as follows:</p> <ul> <li>The UtTrigger primitive is used to trigger upper layer events in IUT (i.e. sending oneM2M service primitives to Test System through Mca port).</li> <li>The UtTriggerAck primitive is used by IUT to send acknowledgement back to the Test System.</li> </ul> <p>The Upper Tester Application in SUT can be implemented as an embedded source code. An example for implementation of automated AE test for Registration is shown as figure 5.4.4.1-1.</p> <p></p> <p>Figure 5.4.4.1-1: Example of automated AE test using Ut interface</p>"},{"location":"5.4/#5442-upper-tester-control-primitives","title":"5.4.4.2 Upper Tester Control Primitives","text":""},{"location":"5.4/#54421-introduction","title":"5.4.4.2.1 Introduction","text":"<p>The upper tester triggering message is used to transport control commands between Test System and the Upper Tester Application. The control command will contain essential parameters that are required for certain test case.</p> <p>The upper tester triggering message type maps to particular message formats for exchanging data and those message formats are defined by TTCN-3 primitive as shown at table 5.4.4.2.1-1, U tTrigger and U tTriggerAck primitive.</p> <p>Table 5.4.4.2.1-1: Mapping of TTCN-3 Primitives to oneM2M Service Primitives</p> Upper Tester Control Message Type TTCN-3 Primitives Direction Direction Trigger UtTrigger Primitive TS UT Trigger Acknowledgement UtTriggerAck Primitive UT TS"},{"location":"5.4/#54422-uttrigger-and-uttriggerack-primitives","title":"5.4.4.2.2 UtTrigger and UtTriggerAck Primitives","text":"<p>The UtTrigger primitive is initialized by the Test System to send triggering message to the target IUT as depicted in figure 5.4.4.2.2-1. The IUT will send acknowledgement message back to the Test System using UtTriggerAck primitive if trigger message is successfully transported to the IUT. Then IUT starts interaction with Test System through oneM2M request and response primitives.</p> <p></p> <p>Figure 5.4.4.2.2-1: Trigger message flow</p> <p>Table 5.4.4.2.2-1 defines UtTrigger and UtTriggerAck primitives including oneM2M data types to which are mapped as well as examples to show how to implement UtTrigger and UtTriggerAck primitives.</p> <p>Table 5.4.4.2.2-1: UtTrigger and UtTriggerAck Primitive</p> Ut Control Primitive Mapping to oneM2M data types Description Reference Triggering Message HTTP message UtTrigger Primitive requestPrimitive ONLY essential parameters included for certain test caseSee note 1 oneM2MTS-0004 [2] EXAMPLE 1:If the test objective is to test \"Test System triggers IUT to execute a test case for creation of < AE > with labels attribute under a CSEBase resource \", then the triggering message would be serialized as following. EXAMPLE 1:If the test objective is to test \"Test System triggers IUT to execute a test case for creation of < AE > with labels attribute under a CSEBase resource \", then the triggering message would be serialized as following. UtTrigger Primitive requestPrimitive ONLY essential parameters included for certain test caseSee note 1 oneM2MTS-0004 [2] Request{\"m2m:rqp\" :{ \"op\": 1, //indicate CREATE operation \"ty\": 2, //indicate AE resource type \"to\": {TEST_SYSTEM_ADDRESS}, \"pc\": { \"m2m:ae\": { \"lbl\":\"UNINITIALIZED\" //indicate that attribute labels needs to be included }, } \"rvi\": \"2a\"}} RequestPOST /{SUT_UT_APPLICATION_URL} HTTP/1.1Host : {SUT_IP_ADDRESS:PORT}Content-Length : {PAYLOAD_LENGTH}Content-Type : application/ json{\"m2m:rqp\" :{ \"op\": 1, //indicate CREATE operation \"ty\": 2, //indicate AE resource type \"to\": {TEST_SYSTEM_ADDRESS}, \"pc\": { \"m2m:ae\": { \"lbl\":\"UNINITIALIZED\" //indicate that attribute labels needs to be included } }, \"rvi\": \"2a\"}} UtTrigger Primitive requestPrimitive ONLY essential parameters included for certain test caseSee note 1 oneM2MTS-0004 [2] EXAMPLE 2: If the test objective is to test \"Test System triggers IUT to execute a test case for delete of a < AE > resource. \", then the triggering message would be serialized as following. EXAMPLE 2: If the test objective is to test \"Test System triggers IUT to execute a test case for delete of a < AE > resource. \", then the triggering message would be serialized as following. UtTrigger Primitive requestPrimitive ONLY essential parameters included for certain test caseSee note 1 oneM2MTS-0004 [2] Request{\"m2m:rqp\" :{ \"op\": 4, //indicate DELETE operation \"to\": {TARGET_AE_RESOURCE_ADDRESS}, //indicate Target AE resource address \"rvi\": \"2a\"}} RequestPOST /{SUT_UT_APPLICATION_URL} HTTP/1.1Host : {SUT_IP_ADDRESS:PORT}Content-Length : {PAYLOAD_LENGTH}Content-Type : application/ json{\"m2m:rqp\" :{ \"op\": 4, //indicate DELETE operation \"to\": {TARGET_AE_RESOURCE_ADDRESS}, //indicate Target AE resource address \"rvi\": \"2a\"}} UtTriggerPrimitive N/A Special upper tester commands N/A \"RESET\" RequestPOST /{SUT_UT_APPLICATION_URL} HTTP/1.1Host : {SUT_IP_ADDRESS:PORT}X-M2M-UTCMD: Reset UtTrigger Ack Primitive responsePrimitive ONLY responseStatusCode attribute includedSee note 2 oneM2M TS-0004 [2] Response{ \"m2m:rsp\": { \"rsc\": 2000 }}For any triggering response, it only contains a response status code, and the response status code for the triggering operation can only be set to either 2000 (OK) or 4000 (BAD_REQUEST) according to the rules for triggering operations. ResponseHTTP/1.1 200 OKX-M2M-RSC: 2000 NOTE 1: Additional rules defined in table 5.4.4.2.2-3 are also applied.NOTE 2: Attribute response status code is defined at table 5.4.4.2.2-3. NOTE 1: Additional rules defined in table 5.4.4.2.2-3 are also applied.NOTE 2: Attribute response status code is defined at table 5.4.4.2.2-3. NOTE 1: Additional rules defined in table 5.4.4.2.2-3 are also applied.NOTE 2: Attribute response status code is defined at table 5.4.4.2.2-3. NOTE 1: Additional rules defined in table 5.4.4.2.2-3 are also applied.NOTE 2: Attribute response status code is defined at table 5.4.4.2.2-3. NOTE 1: Additional rules defined in table 5.4.4.2.2-3 are also applied.NOTE 2: Attribute response status code is defined at table 5.4.4.2.2-3. NOTE 1: Additional rules defined in table 5.4.4.2.2-3 are also applied.NOTE 2: Attribute response status code is defined at table 5.4.4.2.2-3. <p>Table 5.4.4.2.2-2: Definition of special Upper Tester commands</p> Value Interpretation Reset Inidicates that the IUT should reset <p>The rules for defining UtTrigger and UtTriggerAck primitives are:</p> <ol> <li> <p>UtTrigger primitive is represented in requestPrimitive serialized in JSON format. </p> </li> <li> <p>UtTrigger primitive shall be interpreted as follows:</p> <ul> <li>Any attribute/parameter containing a value shall be present and equal in the triggered request primitive.</li> <li>Any attribute/parameter containing \"UNINITIALIZED\" value shall be present in the triggered request primitive.</li> <li>Any other attribute/parameter shall comply with oneM2M TS-0004 [2].</li> </ul> </li> <li> <p>Parameters within UtTrigger are listed as following:</p> <ul> <li>operation: (mandatory) operation type that IUT is triggered to perform.</li> <li>resourceType: (optional) resource type of a target resource against which IUT is triggered to perform certain operation</li> <li>to: (mandatory) target resource against which IUT is triggered to perform certain operation. </li> <li>primitiveContent: (optional) represents the resource attributes that shall be included in the requestPrimitive.</li> </ul> </li> </ol> <p>Table 5.4.4.2.2-3: Definition of ResponseStatusCode for UtTriggerAck primitive</p> Response Status Code Description Response Status Code Value Interpretation OK 2000 The SUT receives successfully the triggering message from Test System BAD_REQUEST 4000 The SUT does not interpret correctly the UtTrigger primitive NOTE: Only above two response status codes are allowed to use in UtTriggerAck primitive. NOTE: Only above two response status codes are allowed to use in UtTriggerAck primitive. NOTE: Only above two response status codes are allowed to use in UtTriggerAck primitive."},{"location":"5.4/#54423-control-communication-protocol","title":"5.4.4.2.3 Control Communication Protocol","text":"<p>Protocol used for proceeding communications between Test System and Upper Tester Application is designated to the Hypertext Transfer Protocol (HTTP) protocol owning it is an application protocol that is widely supported by most all IoT devices and various intrinsic features such as persistent connection, ease of programming, flexibility, etc.</p>"},{"location":"5.4/#54424-control-message-serialization","title":"5.4.4.2.4 Control Message Serialization","text":"<p>Control commands that are wrapped within a request body of HTTP message shall be serialized into JavaScript Object Notation (JSON) because it is very lightweight and easy to parse and generate for machines.</p>"},{"location":"5.4/#545-acport","title":"5.4.5 acPort","text":"<p>The acPort is included in the oneM2M ATS in order to be able to control and configure the test adaptor for specific cases.</p>"},{"location":"5.4/#546-infoport","title":"5.4.6 infoPort","text":"<p>The infoPort is included in the oneM2M ATS in order for the TTCN-3 test components to be able to exchange information such as last response primitives or request primitives received by a component, retrieved primitive contents.</p>"},{"location":"5.5/","title":"5.5 Test components","text":""},{"location":"5.5/#551-tester","title":"5.5.1 Tester","text":"<p>The Tester test component includes a set of ports, timers and variables that are common to the other defined components which are described in table 5.5.1-1.</p> <p>Table 5.5.1-1: Tester component elements</p> Name Instance type Element type Description acPort port AdapterControlPort Port that communicates with the adapter for sending configuration parameters infoPort port InfoPort Port between test components for exchanging information utPort port UpperTesterPort Port that communicates with the UT Application for triggering actions on the IUT tc_ac timer N/A Timer for the reception of a message tc_wait timer N/A Timer for the reaction of the IUT to an upper tester primitive tc_done Timer N/A Timer for waiting completion of a component behaviour vc_config variable Configurations Configuration being used for the given test case vc_testSystemRole variable TestSystemRole Role of the test component vc_componentRegistered variable boolean Flag to indicate when a component has registered to the IUT vc_resetRequired variable Boolean Flag to indicate whether a reset of the IUT is necessary vc_resourcesList variable MyResourcesList List of all resources created by the test system on the IUT vc_resourcesIndexToBeDeleted variable IntegerList List of indexes of resources created by the test system on the IUT that need to be deleted vc_acpIndex variable integer Index of accessControlPolicy resource used by the test system by default (when required) vc_request variable MsgIn Latest request primitive received/sent vc_response variable MsgIn Latest response primitive received/sent vc_aeSimu variable default Reference to the default behaviour for an AeSimu component vc_cseSimu variable default Reference to the default behaviour for an CseSimu component vc_primitiveContentRetrievedResource variable PrimitiveContent Latest content of a RETRIEVE operation vc_myInterfaces variable Interfaces Parameters for the ports of the given component:Port (mcaPort, mcaPortIn, mccPort, mccPortIn)Host (SUT IP address :port)Protocol bindingSerialization <p>Note that vc_aeSimu and vc_cseSimu are not common to the other defined test components, but those variables are required in Tester for the correct activation/deactivation of default behaviours.</p>"},{"location":"5.5/#552-aesimu","title":"5.5.2 AeSimu","text":"<p>The AeSimu test component extends the Tester component by adding elements specific to an AE entity. Table 5.5.2-1 summarizes those elements.</p> <p>Table 5.5.2-1: AeSimu component elements</p> Name Instance type Element type Description mcaPort port OneM2MPort Port that implements the mca interface when test system is the client (sending requests) mcaPortIn port OneM2MPort Port that implements the mca interface when test system is the server (receiving requests) vc_ae2 test component AeSimu Reference to the AE2 component when required vc_cse1 test component CseSimu Reference to the CSE1 component when CF02 is used vc_ae1 test component AeSimu Reference to the AE1 component when required vc_das test component AeSimu Reference to the DAS component when required vc_aeSimuDesc variable AeSimuComponentDesc Component configuration extracted from required (AE1 or AE2) tester pixit vc_dasSimuDesc variable AeSimuComponentDesc Component configuration extracted from DAS tester pixit vc_auxiliaryAe2Up variable boolean Flag to indicate that AE2 component has been started vc_aeIndex variable integer Index of the AE resource in vc_resourcesList created by AeSimu component"},{"location":"5.5/#553-csesimu","title":"5.5.3 CseSimu","text":"<p>The CseSimu test component extends the Tester component by adding elements specific to an CSE entity. Table 5.5.3-1 summarizes those elements.</p> <p>Table 5.5.3-1: CseSimu component elements</p> Name Instance type Element type Description mcaPort port OneM2MPort Port that implements the mca interface when test system is the client (sending requests) mcaPortIn port OneM2MPort Port that implements the mca interface when test system is the server (receiving requests) mccPort port OneM2MPort Port that implements the mcc interface when test system is the client (sending requests) mccPortIn port OneM2MPort Port that implements the mcc interface when test system is the server (receiving requests) mccPortInternal port OneM2MPortInternal Port that implements the mcc and mcc' interfaces between TTCN-3 components vc_ae1 test component AeSimu Reference to the AE1 component when CF02 (CseSimu as master) is used vc_cse2 test component CseSimu Reference to the CSE1 component when required vc_cseSimuDesc variable CseSimuComponentDesc Component configuration extracted from required (CSE1 or CSE2) tester pixit vc_localResourcesList variable MyResourcesList List of all resources created by the IUT on the test system vc_localCSEBaseAnncIndex variable integer Index of the CSEBaseAnnc resource corresponding to the IUT vc_localRemoteCseIndex variable integer Index of the remoteCSE resource in vc_localResourcesList representing the IUT (CSE) vc_remoteCseIndex variable integer Index of the remoteCSE resource in vc_resourcesList representing the CseSimu component vc_cSEBaseIndex variable integer Index of the CSEBase resource in vc_localResourcesList of the CseSimu component vc_cseType variable CseTypeID CSE type of the test system (default is MN) vc_auxiliaryCse2Up variable boolean Flag to indicate that CSE2 component has been started"},{"location":"5.5/#554-scefsimu","title":"5.5.4 ScefSimu","text":"<p>The ScefSimu test component extends the Tester component by adding elements specific to an SCEF entity. Table 5.5.4-1 summarizes those elements.</p> <p>Table 5.5.4-1: ScefSimu component elements</p> Name Instance type Element type Description mcnPort port OneM2MPort Port that implements the mcn interface when test system is the client (sending requests) mcnPortIn port OneM2MPort Port that implements the mcn interface when test system is the server (receiving requests) vc_ae1 test component AeSimu Reference to the AE1 component when required vc_cse2 test component CseSimu Reference to the CSE1 component when required vc_aeSimuDesc variable AeSimuComponentDesc Component configuration extracted from required (AE1) tester pixit vc_cseSimuDesc variable CseSimuComponentDesc Component configuration extracted from required (CSE1) tester pixit vc_cseType variable CseTypeID CSE type of the test system (default is MN) vc_scefSimuDesc variable ScefSimuComponentDesc Component configuration extracted from required (SCEF) tester pixit vc_configurations variable NiddConfigurations NIDD configurations of SCEF component"},{"location":"5.6/","title":"5.6 Test strategy","text":"<p>This clause introduces the test strategy being used for the TTCN-3 test cases. The chosen strategy permits to have a clear structure of the code that facilitates an easy navigation throw the different test steps.</p> <p>The use of the TTCN-3 MTC and PTC(s) is as depicted in figure 5.6-1.</p> <p></p> <p>Figure 5.6-1: Use of TTCN-3 components</p> <p>At the start of the test case execution, the MTC is created. Then, the MTC executes the following steps:</p> <ul> <li>Step 1) initialization of the master PTC.</li> <li>Step 2) initialization of some parameters if required for the permutation test cases.</li> <li> <p>Step 3) running of the appropriate function on the master PTC. The function run on the master PTC implements a given Test Purpose. Such function follows a code structure as indicated here below:</p> <ul> <li>Local Variables, declaration of local variables.</li> <li>Test Control, checking IUT capability parameters required for the proper execution of the test.</li> <li>Test Component Configuration, that initializes the given test component and other test components acting as slave PTC(s) as required by a given configuration.</li> <li>Test adapter configuration, that configures the test adapter throw the acPort if required.</li> <li>Preamble, that implements the necessary test steps as described in the Initial conditions of a Test Purpose. It may also implement additional test steps which are required for the correct execution of the test.</li> <li>Test body, that implements the test steps as described in the Expected behaviour of a Test Purpose.</li> <li>Postamble, that implements the necessary test steps to bring the IUT back to the initial state.</li> <li>Tear down, that finalizes properly the TTCN-3 ports used by the different test components depending on the configuration.</li> </ul> </li> </ul> <p>While master PTC follows the test structure described above, slave PTC(s) run only certain procedures, usually one by one, as mandated by the master PTC.</p> <p>A procedure usually implements a oneM2M request-response exchange between a given PTC and the IUT, although it can implement any other specific action (sending or reception of a message, several request-response exchanges, etc.).</p> <ul> <li>Step 4) checking of some parameters if required for the permutation test cases.</li> </ul> <p>This test strategy may slightly vary for certain cases where specific requirements need to be fulfilled.</p>"},{"location":"6/","title":"6 Untestable Test Purposes","text":"<p>Void.</p>"},{"location":"7.0/","title":"7.0 Introduction","text":"<p>The ATS conventions are intended to give a better understanding of the ATS but they also describe the conventions made for the development of the ATS. These conventions shall be considered during any later maintenance or further development of the ATS.</p> <p>The ATS conventions contain two clauses, the naming conventions and the implementation conventions. The naming conventions describe the structure of the naming of all ATS elements. The implementation conventions describe the functional structure of the ATS.</p> <p>To define the ATS, the guidelines of oneM2M TS-0015 [i.2] were considered.</p>"},{"location":"7.1/","title":"7.1 Testing conventions","text":""},{"location":"7.1/#711-testing-states","title":"7.1.1 Testing states","text":""},{"location":"7.1/#7111-initial-state","title":"7.1.1.1 Initial state","text":"<p>All test cases start with the function f_preamble_XYZ. This function brings the IUT in an \"initialized\" state by performing some actions such as registration of AE, creation of auxiliary access control policy resource, creation of additional needed resources.</p>"},{"location":"7.1/#7112-final-state","title":"7.1.1.2 Final state","text":"<p>All test cases end with the function f_postamble_XYZ. This function brings the IUT back in an \"idle\" state which means deletion of all created resources being used by the test case so that next test case execution is not disturbed.</p> <p>As necessary, further actions may be included in the f_postamble functions.</p>"},{"location":"7.2/","title":"7.2 Naming conventions","text":""},{"location":"7.2/#721-general-guidelines","title":"7.2.1 General guidelines","text":"<p>This test suite follows the naming convention guidelines provided in oneM2M TS-0015 [i.2].</p> <p>The naming convention is based on the following underlying principles:</p> <ul> <li>in most cases, identifiers should be prefixed with a short alphabetic string (specified in table 7.2.1-1) indicating the type of TTCN3 element it represents;</li> <li>suffixes should not be used except in those specific cases identified in table 7.2.1-1;</li> <li>prefixes and suffixes should be separated from the body of the identifier with an underscore (\"_\");</li> </ul> <p><code>EXAMPLE 1: c\\_sixteen, t\\_wait.</code> </p> <ul> <li>only module names, data type names and module parameters should begin with an uppercase letter. All other names (i.e. the part of the identifier following the prefix) should begin with a lowercase letter;</li> <li>the start of second and subsequent words in an identifier should be indicated by capitalizing the first character. Underscores should not be used for this purpose.</li> </ul> <p><code>EXAMPLE 2: f\\_initialState.</code> </p> <p>Table 7.2.1-1 specifies the naming guidelines for each element of the TTCN3 language indicating the recommended prefix, suffixes (if any) and capitalization.</p> <p>Table 7.2.1-1: TTCN-3 generic naming conventions</p> Language element Naming convention Prefix Example identifier Module Use upper-case initial letter none OneM2M_Templates Group within a module Use lower-case initial letter none messageGroup Data type Use upper-case initial letter none SetupContents Message template Use lower-case initial letter m_ m_setupInit Message template with wildcard or matching expression Use lower-case initial letters mw_ mw_anyUserReply Signature template Use lower-case initial letter s_ s_callSignature Port instance Use lower-case initial letter none signallingPort Test component instance Use lower-case initial letter none userTerminal Constant Use lower-case initial letter c_ c_maxRetransmission Constant (defined within component type) Use lower-case initial letter cc_ cc_minDuration External constant Use lower-case initial letter cx_ cx_macId Function Use lower-case initial letter f_ f_authentication() External function Use lower-case initial letter fx_ fx_calculateLength() Altstep (incl. Default) Use lower-case initial letter a_ a_receiveSetup() Test case Use ETSI numbering TC_ TC_COR_0009_47_ND Variable (local) Use lower-case initial letter v_ v_macId Variable (defined within a component type) Use lower-case initial letters vc_ vc_systemName Timer (local) Use lower-case initial letter t_ t_wait Timer (defined within a component) Use lower-case initial letters tc_ tc_authMin Module parameters for PICS Use all upper case letters PICS_ PICS_DOOROPEN Module parameters for other parameters Use all upper case letters PX_ PX_TESTER_STATION_ID Formal Parameters Use lower-case initial letter p_ p_macId Enumerated Values Use lower-case initial letter e_ e_syncOk"},{"location":"7.2/#722-onem2m-specific-ttcn-3-naming-conventions","title":"7.2.2 oneM2M specific TTCN-3 naming conventions","text":"<p>Next to such general naming conventions, table 7.2.2-1 shows specific naming conventions that apply to the oneM2M TTCN-3 ATS.</p> <p>Table 7.2.2-1: oneM2M specific TTCN-3 naming conventions</p> Language element Naming convention Prefix Example identifier oneM2M Module Use upper-case initial letter OneM2M_ OneM2M_Testcases_ Module containing oneM2M types Use upper-case initial letter OneM2M_Types OneM2M_Types Module containing types and values Use upper-case initial letter OneM2M_TypesAndValues OneM2M_TypesAndValues Module containing Templates Use upper-case initial letter OneM2M_Templates OneM2M_Templates Module containing test cases Use upper-case initial letter OneM2M_Testcases OneM2M_Testcases Module containing functions Use upper-case initial letter OneM2M_Functions OneM2M_Functions Module containing external functions Use upper-case initial letter OneM2M_ExternalFunctions OneM2M_ExternalFunctions Module containing components, ports and message definitions Use upper-case initial letter OneM2M_TestSystem OneM2M_TestSystem Module containing module parameters Use upper-case initial letter OneM2M_Pixits OneM2M_Pixits"},{"location":"7.2/#723-usage-of-log-statements","title":"7.2.3 Usage of Log statements","text":"<p>All TTCN-3 log statements use the following format using the same order:</p> <ul> <li>The TTCN-3 test case or function identifier in which the log statement is defined.</li> <li>One of the categories of log: INFO, WARNING, ERROR, TIMEOUT, NONE.</li> <li>Free text.</li> </ul> <p><code>EXAMPLE 1: **log** (\"f\\_utInitializeIut: INFO: IUT initialized\");</code> </p> <p>Furthermore, the following rules are applied too:</p> <ul> <li>All TTCN-3 setverdict statements are combined (as defined in TTCN-3 - ETSI ES 201 873-1 [6]) with a log statement following the same above rules (see example 2).</li> </ul> <p><code>EXAMPLE 2: **setverdict** (**pass** , \"TC\\_ONEM2M\\_CSE\\_DMR\\_CRE\\_001: Received correct message\");</code> </p>"},{"location":"7.2/#724-test-case-tc-identifier","title":"7.2.4 Test Case (TC) identifier","text":"<p>Table 7.2.4-1: TC naming convention</p> Identifier: TC_<root>_<gr>_<sgr>_<nn>_<per> <root> = root ONEM2M oneM2M <gr> = group CSE CSE testing AE AE testing <sgr> = subgroup REG Registration DMR Data Management and Repository SUB Subscription and Notification GMG Group Management DIS Discovery LOC Location DMG Device Management CMDH Communication Management and Delivery Handling SEC Security <nn> = sequential number 001 to 999 <per> = permutation P1_P2_..PN Permutation parameters <p><code>EXAMPLE: TP identifier: TP/oneM2M/CSE/DMR/CRE/001</code> <code>TC identifier: TC\\_ONEM2M\\_CSE\\_DMR\\_CRE\\_001.</code> </p>"},{"location":"7.3/","title":"7.3 IXIT","text":"<p>The following parameters are used by the oneM2M ATS for the correct execution of the test cases.</p> <p>Table 7.3-1: oneM2M ATS IXITs</p> GROUP IXIT NAME DESCRIPTION DEFAULT VALUE IutParameters PX_IN_CSE MN-CSE True IutParameters PX_MN_CSE IN-CSE False IutParameters PX_ASN_CSE ASN-CSE False IutParameters PX_SUT_ADDRESS SUT address \"127.0.0.1:8080\" IutParameters PX_UT_IMPLEMENTED Upper Tester implemented False IutParameters PX_CSE_NAME IUT CSE Name \"cseName\" IutParameters PX_CSE_ID IUT CSE-ID with SP-relative-CSE-ID format (relative) according to oneM2M TS-0001 [1], table 7.2-1 \"/cseId\" IutParameters PX_CSE_RESOURCE_ID IUT CSE resource ID with Unstructured-CSE-relative-Resource-ID (relative) format according to oneM2MTS-0001 [1], table 7.2-1 \"cseResourceId\" IutParameters PX_SP_ID IUT M2M-SP-ID with M2M-SP-ID format (absolute) according to oneM2M TS-0001 [1], table 7.2-1 Unstructured-CSE-relative -Resource-ID \"//om2m.org\" IutParameters PX_SUPER_AE_ID AE-ID with privileges to CREATE at the IUT CSEBase with AE-ID-Stem format (relative) according to oneM2M TS-0001 [1], table 7.2-1 \"admin:admin\" IutParameters PX_SUPER_CSE_ID CSE-ID with privileges to CREATE at the IUT CSEBase with SPrelative-CSE-ID format (relative) according to oneM2M TS-0001 [1], table 7.2-1 \"/admin:admin\" IutParameters PX_ALLOWED_C_AE_IDS {\"C-AllowedAeId\"} IutParameters PX_NOT_ALLOWED_C_AE_IDS {\"C-NotAllowedAeId\"} IutParameters PX_ALLOWED_S_AE_IDS {\"S-AllowedAeId\"} IutParameters PX_NOT_ALLOWED_S_AE_IDS {\"S-NotAllowedAeId\"} IutParameters PX_NOT_ALLOWED_APP_ID \"NotAllowedAppId\" IutParameters PX_ADDRESSING_METHOD Addressing method e_hierarchical IutParameters PX_PRIMITIVE_SCOPE Primitive scope e_cseRelative IutParameters PX_WS_PROTOCOL WebSocket protocol \"oneM2M.R2.0.xml\" IutParameters PX_REQUEST_URI WebSocket context \"/\" IutParameters PX_HOSTING_CSE_ID Hosting CSE-ID for MQTT \"CSE-ID\" IutParameters PX_CREDENTIAL_ID Credential-ID for MQTT \"admin:admin\" IutParameters PX_XML_NAMESPACE XML Namespace \"m2m=\"\"http://www.onem2m.org/xml/protocols\"\"\" IutParameters PX_ACOR AccessControlOriginators {\"all\"} IutParameters PX_TCONFIG_IUT Time to configure IUT after a requested action 10.0 TesterParameters PX_TS_AE1 AE1 component settings aeIdStem = \"\"appId = \"NMyApp1Id\"mcaPort and mcaPortIn settings which include per port the following info:Binding: - bindingProtocol - bindingDesc: - tsAddress - localPort - sutAddress - remotePortSerialization TesterParameters PX_TS_AE2 AE2 component settings aeIdStem = \"\"appId = \"NMyApp2Id\"mcaPort and mcaPortIn settings which include per port the following info:Binding: - bindingProtocol - bindingDesc: - tsAddress - localPort - sutAddress - remotePortSerialization TesterParameters PX_TS_CSE1 CSE1 component settings cseName = \"CSE1_NAME\"cseId = \"/CSE1_ID\"cseResourceId = \"CSE1_RESOURCE_ID\"spId = \"//onem2m.org\"supportedResourceType = {int1, int2, int3, int16}mcaPort, mcaPortIn, mccPort and mccPortIn settings which include per port the following info:Binding: - bindingProtocol - bindingDesc: - tsAddress - localPort - sutAddress - remotePortSerialization TesterParameters PX_TS_CSE2 CSE2 component settings cseName = \"CSE2_NAME\"cseId = \"/CSE2_ID\"cseResourceId = \"CSE2_RESOURCE_ID\"spId = \"//onem2m.org\"supportedResourceType = {int1, int2, int3, int16}mcaPort, mcaPortIn, mccPort and mccPortIn settings which include per port the following info:Binding: - bindingProtocol - bindingDesc: - tsAddress - localPort - sutAddress - remotePortSerialization PX_TS_DAS DAS1 component settings aeIdStem = \"\"appId = \"\"mcaPort and mcaPortIn settings which include per port the following info:Binding: - bindingProtocol - bindingDesc: - tsAddress - localPort - sutAddress - remotePortSerialization PX_TS_UT UpperTester settings url = \"http://127.0.0.1:43000/\" ExecutionParameters PX_RESOURCES_TO_BE_DELETED (For debugging purposes) {\"MyAe\", \"MyAccessControlPolicyResource\", \"SubscriptionVerificationAcp\", \"MyAcp\", \"MyRemoteCSEResource\"} ExecutionParameters PX_RUN_POSTAMBLE (For debugging purposes) true ExecutionParameters PX_CERTIFICATE_PATH charstring \"\" ExecutionParameters PX_CERTIFICATE_NAME charstring \"\" ExecutionParameters PX_PAIRWISEKEY_METHOD PairwiseKeyMethod e_establish ExecutionParameters PX_KEY_PROVISION Provisioned e_preProvisioning"},{"location":"8/","title":"8 TTCN-3 Verifications","text":"<p>The principles for Verifying the TTCN-3 test code are given in oneM2M TS-0015 [i.2].</p> <p>All test cases provided with the present document in annex A which correspond to at least one of the product profiles defined in oneM2M TS-0025 [i.3] have been verified at the time of publication of the present document which corresponds with the TTCN-3 code gitlab tag provided in annex A.</p>"},{"location":"A.1/","title":"A.1 Electronic annex, zip file with TTCN-3 code","text":"<p>This ATS has been produced using the Testing and Test Control Notation (TTCN) according to ETSI ES 201 873-1 [6].</p> <p>This test suite has been compiled error-free using two different commercial TTCN-3 compilers.</p> <p>The TTCN-3 library modules, which form parts of the present document, are contained in the following gitLab tag:</p> <p>https://git.onem2m.org/TST/ATS/-/tags/TS-0019-baseline-v4_1_1 </p> <p></p>"},{"location":"B/","title":"Annex B (informative): Bibliography","text":"<p>ISO/IEC 9646-6 (1994): \"Information technology - Open Systems Interconnection - Conformance testing methodology and framework - Part 6: Protocol profile test specification\".</p> <p>oneM2M TS-0017: \"Implementation Conformance Statement\".</p> <p>oneM2M TS-0031: \"Feature catalogue\".</p>"},{"location":"download/","title":"Download","text":"<p>Download baseline for TS-0019 version v4.3.0:</p> <p></p>"}]} \ No newline at end of file +{"config":{"lang":["en"],"separator":"[\\s\\-]+","pipeline":["stopWordFilter"]},"docs":[{"location":"","title":"","text":"oneM2MTechnical Specification oneM2MTechnical Specification Document Number oneM2M-TS-0019-V-4.1.1 Document Name: Abstract Test Suite and Implementation eXtra Information for Test Date: 2024 March 1 Abstract: Abstract Test Suite and Implementation eXtra Information for Test consists of :- Definition of the Abstract Protocol Tester (APT)- Definition of TTCN-3 test architecture- Development of TTCN-3 test suite, e.g. naming conventions, code documentation, test case structure.- IXIT proforma; Template Version:23 February 2015 (Do not modify) Template Version:23 February 2015 (Do not modify) <p>This Specification is provided for future development work within oneM2M only. The Partners accept no liability for any use of this Specification.</p> <p>The present document has not been subject to any approval process by the oneM2M Partners Type 1. Published oneM2M specifications and reports for implementation should be obtained via the oneM2M Partners' Publications Offices.</p> <p>About oneM2M </p> <p>The purpose and goal of oneM2M is to develop technical specifications which address the need for a common M2M Service Layer that can be readily embedded within various hardware and software, and relied upon to connect the myriad of devices in the field with M2M application servers worldwide. </p> <p>More information about oneM2M may be found at: http//www.oneM2M.org</p> <p>Copyright Notification</p> <p>(c) 2019, oneM2M Partners Type 1 (ARIB, ATIS, CCSA, ETSI, TIA, TSDSI, TTA, TTC).</p> <p>All rights reserved.</p> <p>The copyright extends to reproduction in all media.</p> <p>Notice of Disclaimer & Limitation of Liability </p> <p>The information provided in this document is directed solely to professionals who have the appropriate degree of experience to understand and interpret its contents in accordance with generally accepted engineering or other professional standards and applicable regulations. No recommendation as to products or vendors is made or should be implied. </p> <p>NO REPRESENTATION OR WARRANTY IS MADE THAT THE INFORMATION IS TECHNICALLY ACCURATE OR SUFFICIENT OR CONFORMS TO ANY STATUTE, GOVERNMENTAL RULE OR REGULATION, AND FURTHER, NO REPRESENTATION OR WARRANTY IS MADE OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR AGAINST INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS. NO oneM2M PARTNER TYPE 1 SHALL BE LIABLE, BEYOND THE AMOUNT OF ANY SUM RECEIVED IN PAYMENT BY THAT PARTNER FOR THIS DOCUMENT, WITH RESPECT TO ANY CLAIM, AND IN NO EVENT SHALL oneM2M BE LIABLE FOR LOST PROFITS OR OTHER INCIDENTAL OR CONSEQUENTIAL DAMAGES. oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PROVIDED IN THIS DOCUMENT IS AT THE RISK OF THE USER.</p>"},{"location":"0/","title":"0","text":"oneM2MTechnical Specification oneM2MTechnical Specification Document Number oneM2M-TS-0019-V-4.1.1 Document Name: Abstract Test Suite and Implementation eXtra Information for Test Date: 2024 March 1 Abstract: Abstract Test Suite and Implementation eXtra Information for Test consists of :- Definition of the Abstract Protocol Tester (APT)- Definition of TTCN-3 test architecture- Development of TTCN-3 test suite, e.g. naming conventions, code documentation, test case structure.- IXIT proforma; Template Version:23 February 2015 (Do not modify) Template Version:23 February 2015 (Do not modify) <p>This Specification is provided for future development work within oneM2M only. The Partners accept no liability for any use of this Specification.</p> <p>The present document has not been subject to any approval process by the oneM2M Partners Type 1. Published oneM2M specifications and reports for implementation should be obtained via the oneM2M Partners' Publications Offices.</p> <p>About oneM2M </p> <p>The purpose and goal of oneM2M is to develop technical specifications which address the need for a common M2M Service Layer that can be readily embedded within various hardware and software, and relied upon to connect the myriad of devices in the field with M2M application servers worldwide. </p> <p>More information about oneM2M may be found at: http//www.oneM2M.org</p> <p>Copyright Notification</p> <p>(c) 2019, oneM2M Partners Type 1 (ARIB, ATIS, CCSA, ETSI, TIA, TSDSI, TTA, TTC).</p> <p>All rights reserved.</p> <p>The copyright extends to reproduction in all media.</p> <p>Notice of Disclaimer & Limitation of Liability </p> <p>The information provided in this document is directed solely to professionals who have the appropriate degree of experience to understand and interpret its contents in accordance with generally accepted engineering or other professional standards and applicable regulations. No recommendation as to products or vendors is made or should be implied. </p> <p>NO REPRESENTATION OR WARRANTY IS MADE THAT THE INFORMATION IS TECHNICALLY ACCURATE OR SUFFICIENT OR CONFORMS TO ANY STATUTE, GOVERNMENTAL RULE OR REGULATION, AND FURTHER, NO REPRESENTATION OR WARRANTY IS MADE OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR AGAINST INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS. NO oneM2M PARTNER TYPE 1 SHALL BE LIABLE, BEYOND THE AMOUNT OF ANY SUM RECEIVED IN PAYMENT BY THAT PARTNER FOR THIS DOCUMENT, WITH RESPECT TO ANY CLAIM, AND IN NO EVENT SHALL oneM2M BE LIABLE FOR LOST PROFITS OR OTHER INCIDENTAL OR CONSEQUENTIAL DAMAGES. oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PROVIDED IN THIS DOCUMENT IS AT THE RISK OF THE USER.</p>"},{"location":"1/","title":"1 Scope","text":"<p>The present document contains the Abstract Test Suite (ATS) for oneM2M as defined in oneM2M TS-0001 [1] and oneM2M TS-0004 [2] in compliance with the relevant requirements and in accordance with the relevant guidance given in ISO/IEC 96467 [5].</p> <p>The objective of the present document is to provide a basis for conformance tests for oneM2M products giving a high probability of interoperability between different manufacturers' equipment.</p> <p>The ISO standard for the methodology of conformance testing (ISO/IEC 96461 [3] and ISO/IEC 96462 [4]) as well as oneM2M TS-0015 Testing Framework [i.2] are used as a basis for the test methodology.</p>"},{"location":"2.1/","title":"2.1 Normative references","text":"<p>References are either specific (identified by date of publication and/or edition number or version number) or nonspecific. For specific references, only the cited version applies. For non-specific references, the latest version of the referenced document (including any amendments) applies.</p> <p>The following referenced documents are necessary for the application of the present document.</p> <ul> <li>[1] oneM2M TS-0001: \"Functional Architecture\".</li> <li>[2] oneM2M TS-0004: \"Service Layer Core Protocol\".</li> <li>[3] ISO/IEC 9646-1 (1994): \"Information technology - Open Systems Interconnection - Conformance testing methodology and framework - Part 1: General concepts\".</li> <li>[4] ISO/IEC 9646-2 (1994): \"Information technology - Open Systems Interconnection - Conformance testing methodology and framework - Part 2: Abstract Test Suite specification\".</li> <li>[5] ISO/IEC 9646-7 (1995): \"Information technology - Open Systems Interconnection - Conformance testing methodology and framework - Part 7: Implementation Conformance Statements\".</li> <li>[6] ETSI ES 201 873-1 (V4.5.1): \"Methods for Testing and Specification (MTS); The Testing and Test Control Notation version 3; Part 1: TTCN-3 Core Language\".</li> <li> <p>[7] oneM2M TS-0018: \"Test Suite Structure and Test Purposes\".</p> </li> <li> <p>[8] 3GPP TS 29.122; T8 reference point for Northbound APIs (Release 15)</p> </li> </ul>"},{"location":"2.2/","title":"2.2 Informative references","text":"<p>References are either specific (identified by date of publication and/or edition number or version number) or nonspecific. For specific references, only the cited version applies. For non-specific references, the latest version of the referenced document (including any amendments) applies.</p> <p>The following referenced documents are not necessary for the application of the present document but they assist the user with regard to a particular subject area.</p> <ul> <li>[i.1] oneM2M Drafting Rules.</li> </ul> <p>Note</p> <p>Available at http://www.onem2m.org/images/files/oneM2M-Drafting-Rules.pdf.</p> <ul> <li>[i.2] oneM2M TS-0015: \"Testing Framework\".</li> <li>[i.3] oneM2M TS-0025: \"Product profiles\".</li> </ul>"},{"location":"3.1/","title":"3.1 Terms","text":"<p>For the purposes of the present document, the terms given in ISO/IEC 96461 [3], ISO/IEC 96467 [5] and oneM2M TS-0015 [i.2] apply.</p>"},{"location":"3.2/","title":"3.2 Symbols","text":"<p>For the purposes of the present document, the following abbreviations apply:</p> <p><code>AE Application Entity</code> <code>APT Abstract Protocol Tester</code> <code>ATM Abstract Test Method</code> <code>ATS Abstract Test Suite</code> <code>CoAP Constrained Application Protocol</code> <code>CSE Common Service Entity</code> <code>HTTP Hypertext Transfer Protocol</code> <code>IP Internet Protocol</code> <code>IUT Implementation Under Test</code> <code>IXIT Implementation eXtra Information for Test</code> <code>JSON JavaScript Object Notation</code> <code>MQTT Message Queuing Telemetry Transport</code> <code>MTC Main Test Component</code> <code>PA Platform Adaptor</code> <code>PICS Protocol Implementation Conformance Statement</code> <code>PTC Paralell Test Component</code> <code>PX PiXit</code> <code>SA System Adaptor</code> <code>SUT System Under Test</code> <code>TC Test Case</code> <code>TCP Transmission Control Protocol</code> <code>TP Test Purposes</code> <code>TS Test System</code> <code>TSS Test Suite Structure</code> <code>TTCN Tree and Tabular Combined Notation</code> <code>UDP User Datagram Protocol</code> <code>UT Upper Tester</code> <code>XML eXtensible Markup Language</code> </p>"},{"location":"4/","title":"4 Conventions","text":"<p>The key words \"Shall\", \"Shall not\", \"May\", \"Need not\", \"Should\", \"Should not\" in this document are to be interpreted as described in the oneM2M Drafting Rules [i.1].</p>"},{"location":"5.1/","title":"5.1 Abstract protocol tester","text":"<p>An abstract protocol tester (APT) is a process that provides behaviours for testing an IUT by emulating a peer IUT at the same layer, and enabling to address a single test objective.</p> <p>APTs used by the oneM2M test suite are described in figure 5.1-1. The test system will simulate valid and invalid protocol behaviour, and will analyse the reaction of the IUT.</p> <p></p> <p>Figure 5.1-1: Abstract protocol testers - oneM2M</p> <p>As figure 5.1-1 illustrates, the corresponding ATS needs to use lower layers to establish a proper connection to the implementation under test (SUT) over several physical links (Lower layers link). Four different lower layers have been specified corresponding to the binding protocols considered in oneM2M: HTTP, CoAP, WebSocket and MQTT.</p> <p>This is a new sentence.</p>"},{"location":"5.2/","title":"5.2 Test Configuration","text":""},{"location":"5.2/#521-ae-test-configuration","title":"5.2.1 AE Test Configuration","text":"<p>Test configurations are defined to test different entities such as CSE and AE, etc.</p> <p>Figure 5.2.1-1 shows a AE test configuration which is mapped to CF03 in clause 6.3.3.3 in oneM2M TS0015 [i.2] and aligns with conformance test system architecture in clause 6.3.3.2 in oneM2M TS-0015 [i.2].</p> <p>The TTCN-3 Test Component in Test System sends triggering actions or behaviour to the Upper Tester Application of SUT through upper tester transport link Ut while the IUT sends/receives oneM2M service primitives through Mca to/from CSE in Test System.</p> <p></p> <p>Figure 5.2.1-1: AE test configuration</p>"},{"location":"5.3/","title":"5.3 Test architecture","text":"<p>The approach for the implementation of an Abstract Protocol Tester selected in oneM2M follows the recommendation of the oneM2M Testing Framework oneM2M TS-0015 [i.2] where the TTCN-3 language and its architecture are recommended.</p> <p>Following this recommendation the oneM2M tester architecture comprises a non-platform dependent Test Suite, and a platform dependent part.</p> <p></p> <p>Note</p> <p>However, it can be implemented in a semi-independent manner, which will minimize the dependency to those elements.</p> <p>Figure 5.3-1: High level oneM2M Test Architecture</p> <ul> <li>oneM2M TTCN -3 Abstract Test Suite: the test suite is platform independent, and it is the cornerstone of the architecture. It allows a complete decoupling between the test suite and the rest of the test system. The test suite is composed of a complete set of test cases covering oneM2M requirements specified by oneM2M TS0001 [1] and oneM2M TS-0004 [2].</li> <li>oneM2M System Adaptor : this is the platform dependent part that includes adaptors and codecs (out of the scope of the present document). This part of the architecture definition depends on the specific platform (e.g. Windows or Linux) and test tool on which the tester is going to run.</li> </ul> <p>Figure 5.3-2 shows the oneM2M TTCN-3 test architecture design used for the oneM2M ATS. The Test Suite needs to interact with the System Adaptor to implement the collection of TTCN-3 test cases that are intended to be used to test the oneM2M IUTs.</p> <p>The oneM2M TTCN-3 test cases implement the test algorithms specified in the TSS&TP document oneM2M TS0018 [7], including verdict logic that allows pass/fail diagnosis.</p> <p>The test algorithms use the interfaces defined in [1] and [2] (mca, mcc) in order to:</p> <ol> <li>control the test event to be sent towards the IUT; and</li> <li>observe the test events received from the IUT.</li> </ol> <p>In TTCN-3 these two interfaces have been implemented through a set of logical TTCN-3 ports (mcaPort and mcaPortIn for mca interface, and mccPort and mccPortIn for mcc interface) which allows oneM2M message primitives exchange with the IUT.</p> <p></p> <p>Figure 5.3-2: oneM2M Test Architecture</p> <p>The oneM2M primitive messages have been mapped into TTCN-3 structure. Through this mapping, the TTCN-3 is able to build and send these messages, as well as receive them via the ports defined above.</p> <p>Additionally, the test cases are able to control and configure the test platform through a dedicated port called acPort while port utPort enables oneM2M TTCN-3 Test Component module to trigger specific action or behaviour on IUT. TTCN3 Test Components can also exchange information through a dedicated port called infoPort.</p> <p>To build up a tester, the test platform needs to be also developed (out of scope). This test platform is composed of three adaptation layers:</p> <ul> <li>PA (Platform Adaptor) layer functionality implements the communication between the TTCN-3 modules and external elements that constitute the test tool such as timers and external functions. The External functions are a powerful resources supported by TTCN-3 language. An External function is a function declared at the TTCN-3 level but implemented at the native level.</li> <li> <p>SA (System Adaptor) layer functionality is divided into two modules:</p> <ul> <li>oneM2M lower layers stack module implements the communication with the IUT and carries out the oneM2M primitives messages sent to or received from the IUT. This module is based on TCP or UDP depending on the binding supported by the IUT. The binding is a system adaptor parameter.</li> <li>Upper Tester Transport module implements functions that enable triggering specific actions or behaviour on the IUT.</li> </ul> </li> <li> <p>CODECS layer is the part of the tester to encode and decode messages between the TTCN-3 abstract internal data representation and the format required by the related base standard which the IUT understands. Several CODECS are required in oneM2M tester to cope with the bindings considered in oneM2M (HTTP, CoAP, MQTT) and the serialization methods (xml, json).</p> </li> </ul>"},{"location":"5.4/","title":"5.4 Ports and ASPs (Abstract Services Primitives)","text":""},{"location":"5.4/#540-introduction","title":"5.4.0 Introduction","text":"<p>The oneM2M ATS implements the following ports:</p> <ul> <li>The mcaPort and mcaPortIn</li> <li>The mccPort and mccPortIn</li> <li>The acPort</li> <li>The utPort</li> <li>The InfoPort</li> </ul>"},{"location":"5.4/#541-mcaport-mcaportin-mccport-mccportin","title":"5.4.1 mcaPort, mcaPortIn, mccPort, mccPortIn","text":"<p>These ports are used to send and receive the following message sets:</p> <ul> <li>Request Primitives messages in accordance with oneM2M TS-0004 [2].</li> <li>Response Primitives messages in accordance with oneM2M TS-0004 [2].</li> </ul> <p>Two primitives are currently defined for these ports indicated as table 5.4.1-1:</p> <ol> <li>The M2MRequestPrimitive - to send or receive oneM2M messages to/from the IUT. Depending on the IUT to be tested:<ol> <li>If the IUT is an AE, these messages are either received or sent by the tester which is associated with the CSE role through the mcaPortIn or the mcaPort respectively.</li> <li>If the IUT is a CSE, these messages are either sent or received by the tester when it plays the AE role through the mcaPort or the mcaPortIn respectively, or sent or received by the tester when it plays the CSE role through the mccPort or the mccPortIn respectively.</li> </ol> </li> <li>The M2MResponsePrimitive - to send or receive oneM2M messages to/from the IUT. Depending on the IUT to be tested:<ol> <li>If the IUT is an AE, these messages are either sent or received by the tester which is associated with the CSE role through the mcaPortIn or the mcaPort respectively.</li> <li>If the IUT is a CSE, these messages are either sent or received by the tester when it plays the CSE role through the mccPortIn or the mccPort respectively, sent or received by the tester when it plays the AE role through the mcaPortIn or mcaPort respectively.</li> </ol> </li> </ol> <p>Both primitives contain another parameters that permits to dynamically configure the test adaptor for every single sending. These parameters are:</p> <ul> <li>Host: IP address of the IUT</li> <li>XML Namespace</li> <li>Protocol binding</li> <li>Serialization</li> <li>ForceFields: used to force invalid or empty values to certain attributes. This behaviour shall be implemented by the System Adaptor.</li> </ul> <p>Table 5.4.1-1: Mapping of TTCN-3 Primitives to oneM2M Service Primitives</p> TTCN-3 Primitive oneM2M Message Direction IUT M2MRequestPrimitive Request Primitive <=> AE M2MRequestPrimitive Request Primitive <=> CSE M2MResponsePrimitive Response Primitive <=> AE M2MResponsePrimitive Response Primitive <=> CSE"},{"location":"5.4/#542-mcnport-mcnportin","title":"5.4.2 mcnPort, mcnPortIn","text":"<p>These ports are used to send and receive the following message sets:</p> <ul> <li>Request Primitives messages in accordance with oneM2M TS-0004 [2].</li> <li>Response Primitives messages in accordance with oneM2M TS-0004 [2].</li> </ul> <p>Two primitives are currently defined for these ports indicated:</p> <ol> <li> <p>The T8Request - to send T8 request messages to/from the IUT according to 3GPP TS 29.122 [8]. </p> </li> <li> <p>The T8Response - to receive T8 response messages to/from the IUT according to 3GPP TS 29.122 [8].</p> </li> </ol> <p>Further primitives might be defined to support other underlying networks.</p>"},{"location":"5.4/#543-mccportinternal","title":"5.4.3 mccPortInternal","text":"<p>This port is used to send and receive the following message sets between TTCN-3 components:</p> <ul> <li>Request Primitives messages in accordance with oneM2M TS-0004 [2].</li> <li>Response Primitives messages in accordance with oneM2M TS-0004 [2].</li> </ul>"},{"location":"5.4/#544-utport","title":"5.4.4 utPort","text":""},{"location":"5.4/#5440-introduction","title":"5.4.4.0 Introduction","text":"<p>The utPort is included in the oneM2M ATS in order to be able to stimulate the IUT and receive extra information from IUT upper layers. For instance, the utPort can be applied to automate AE testing shown as clause 5.4.4.1.</p>"},{"location":"5.4/#5441-usage-for-automated-ae-testing","title":"5.4.4.1 Usage for Automated AE Testing","text":"<p>The utPort is in charge of the communication between TTCN-3 Test Component module in Test System and the Upper Tester Application in SUT.</p> <p>Functionalities that TTCN-3 Test Component module and the Upper Tester Application are required to implement are listed as follows:</p> <ul> <li>TTCN-3 Test Component is able to configure the Test System and send standardized triggering commands to the SUT (Upper Tester Application).</li> <li>Upper Tester Application can process the triggering command messages received from Test System (TTCN-3 Test Component) and stimulates IUT to act following the corresponding triggering command (i.e. sending oneM2M service primitives to Test System through Mca port).</li> </ul> <p>oneM2M service Primitive defined for utPort is listed as follows:</p> <ul> <li>The UtTrigger primitive is used to trigger upper layer events in IUT (i.e. sending oneM2M service primitives to Test System through Mca port).</li> <li>The UtTriggerAck primitive is used by IUT to send acknowledgement back to the Test System.</li> </ul> <p>The Upper Tester Application in SUT can be implemented as an embedded source code. An example for implementation of automated AE test for Registration is shown as figure 5.4.4.1-1.</p> <p></p> <p>Figure 5.4.4.1-1: Example of automated AE test using Ut interface</p>"},{"location":"5.4/#5442-upper-tester-control-primitives","title":"5.4.4.2 Upper Tester Control Primitives","text":""},{"location":"5.4/#54421-introduction","title":"5.4.4.2.1 Introduction","text":"<p>The upper tester triggering message is used to transport control commands between Test System and the Upper Tester Application. The control command will contain essential parameters that are required for certain test case.</p> <p>The upper tester triggering message type maps to particular message formats for exchanging data and those message formats are defined by TTCN-3 primitive as shown at table 5.4.4.2.1-1, U tTrigger and U tTriggerAck primitive.</p> <p>Table 5.4.4.2.1-1: Mapping of TTCN-3 Primitives to oneM2M Service Primitives</p> Upper Tester Control Message Type TTCN-3 Primitives Direction Direction Trigger UtTrigger Primitive TS UT Trigger Acknowledgement UtTriggerAck Primitive UT TS"},{"location":"5.4/#54422-uttrigger-and-uttriggerack-primitives","title":"5.4.4.2.2 UtTrigger and UtTriggerAck Primitives","text":"<p>The UtTrigger primitive is initialized by the Test System to send triggering message to the target IUT as depicted in figure 5.4.4.2.2-1. The IUT will send acknowledgement message back to the Test System using UtTriggerAck primitive if trigger message is successfully transported to the IUT. Then IUT starts interaction with Test System through oneM2M request and response primitives.</p> <p></p> <p>Figure 5.4.4.2.2-1: Trigger message flow</p> <p>Table 5.4.4.2.2-1 defines UtTrigger and UtTriggerAck primitives including oneM2M data types to which are mapped as well as examples to show how to implement UtTrigger and UtTriggerAck primitives.</p> <p>Table 5.4.4.2.2-1: UtTrigger and UtTriggerAck Primitive</p> Ut Control Primitive Mapping to oneM2M data types Description Reference Triggering Message HTTP message UtTrigger Primitive requestPrimitive ONLY essential parameters included for certain test caseSee note 1 oneM2MTS-0004 [2] EXAMPLE 1:If the test objective is to test \"Test System triggers IUT to execute a test case for creation of < AE > with labels attribute under a CSEBase resource \", then the triggering message would be serialized as following. EXAMPLE 1:If the test objective is to test \"Test System triggers IUT to execute a test case for creation of < AE > with labels attribute under a CSEBase resource \", then the triggering message would be serialized as following. UtTrigger Primitive requestPrimitive ONLY essential parameters included for certain test caseSee note 1 oneM2MTS-0004 [2] Request{\"m2m:rqp\" :{ \"op\": 1, //indicate CREATE operation \"ty\": 2, //indicate AE resource type \"to\": {TEST_SYSTEM_ADDRESS}, \"pc\": { \"m2m:ae\": { \"lbl\":\"UNINITIALIZED\" //indicate that attribute labels needs to be included }, } \"rvi\": \"2a\"}} RequestPOST /{SUT_UT_APPLICATION_URL} HTTP/1.1Host : {SUT_IP_ADDRESS:PORT}Content-Length : {PAYLOAD_LENGTH}Content-Type : application/ json{\"m2m:rqp\" :{ \"op\": 1, //indicate CREATE operation \"ty\": 2, //indicate AE resource type \"to\": {TEST_SYSTEM_ADDRESS}, \"pc\": { \"m2m:ae\": { \"lbl\":\"UNINITIALIZED\" //indicate that attribute labels needs to be included } }, \"rvi\": \"2a\"}} UtTrigger Primitive requestPrimitive ONLY essential parameters included for certain test caseSee note 1 oneM2MTS-0004 [2] EXAMPLE 2: If the test objective is to test \"Test System triggers IUT to execute a test case for delete of a < AE > resource. \", then the triggering message would be serialized as following. EXAMPLE 2: If the test objective is to test \"Test System triggers IUT to execute a test case for delete of a < AE > resource. \", then the triggering message would be serialized as following. UtTrigger Primitive requestPrimitive ONLY essential parameters included for certain test caseSee note 1 oneM2MTS-0004 [2] Request{\"m2m:rqp\" :{ \"op\": 4, //indicate DELETE operation \"to\": {TARGET_AE_RESOURCE_ADDRESS}, //indicate Target AE resource address \"rvi\": \"2a\"}} RequestPOST /{SUT_UT_APPLICATION_URL} HTTP/1.1Host : {SUT_IP_ADDRESS:PORT}Content-Length : {PAYLOAD_LENGTH}Content-Type : application/ json{\"m2m:rqp\" :{ \"op\": 4, //indicate DELETE operation \"to\": {TARGET_AE_RESOURCE_ADDRESS}, //indicate Target AE resource address \"rvi\": \"2a\"}} UtTriggerPrimitive N/A Special upper tester commands N/A \"RESET\" RequestPOST /{SUT_UT_APPLICATION_URL} HTTP/1.1Host : {SUT_IP_ADDRESS:PORT}X-M2M-UTCMD: Reset UtTrigger Ack Primitive responsePrimitive ONLY responseStatusCode attribute includedSee note 2 oneM2M TS-0004 [2] Response{ \"m2m:rsp\": { \"rsc\": 2000 }}For any triggering response, it only contains a response status code, and the response status code for the triggering operation can only be set to either 2000 (OK) or 4000 (BAD_REQUEST) according to the rules for triggering operations. ResponseHTTP/1.1 200 OKX-M2M-RSC: 2000 NOTE 1: Additional rules defined in table 5.4.4.2.2-3 are also applied.NOTE 2: Attribute response status code is defined at table 5.4.4.2.2-3. NOTE 1: Additional rules defined in table 5.4.4.2.2-3 are also applied.NOTE 2: Attribute response status code is defined at table 5.4.4.2.2-3. NOTE 1: Additional rules defined in table 5.4.4.2.2-3 are also applied.NOTE 2: Attribute response status code is defined at table 5.4.4.2.2-3. NOTE 1: Additional rules defined in table 5.4.4.2.2-3 are also applied.NOTE 2: Attribute response status code is defined at table 5.4.4.2.2-3. NOTE 1: Additional rules defined in table 5.4.4.2.2-3 are also applied.NOTE 2: Attribute response status code is defined at table 5.4.4.2.2-3. NOTE 1: Additional rules defined in table 5.4.4.2.2-3 are also applied.NOTE 2: Attribute response status code is defined at table 5.4.4.2.2-3. <p>Table 5.4.4.2.2-2: Definition of special Upper Tester commands</p> Value Interpretation Reset Inidicates that the IUT should reset <p>The rules for defining UtTrigger and UtTriggerAck primitives are:</p> <ol> <li> <p>UtTrigger primitive is represented in requestPrimitive serialized in JSON format. </p> </li> <li> <p>UtTrigger primitive shall be interpreted as follows:</p> <ul> <li>Any attribute/parameter containing a value shall be present and equal in the triggered request primitive.</li> <li>Any attribute/parameter containing \"UNINITIALIZED\" value shall be present in the triggered request primitive.</li> <li>Any other attribute/parameter shall comply with oneM2M TS-0004 [2].</li> </ul> </li> <li> <p>Parameters within UtTrigger are listed as following:</p> <ul> <li>operation: (mandatory) operation type that IUT is triggered to perform.</li> <li>resourceType: (optional) resource type of a target resource against which IUT is triggered to perform certain operation</li> <li>to: (mandatory) target resource against which IUT is triggered to perform certain operation. </li> <li>primitiveContent: (optional) represents the resource attributes that shall be included in the requestPrimitive.</li> </ul> </li> </ol> <p>Table 5.4.4.2.2-3: Definition of ResponseStatusCode for UtTriggerAck primitive</p> Response Status Code Description Response Status Code Value Interpretation OK 2000 The SUT receives successfully the triggering message from Test System BAD_REQUEST 4000 The SUT does not interpret correctly the UtTrigger primitive NOTE: Only above two response status codes are allowed to use in UtTriggerAck primitive. NOTE: Only above two response status codes are allowed to use in UtTriggerAck primitive. NOTE: Only above two response status codes are allowed to use in UtTriggerAck primitive."},{"location":"5.4/#54423-control-communication-protocol","title":"5.4.4.2.3 Control Communication Protocol","text":"<p>Protocol used for proceeding communications between Test System and Upper Tester Application is designated to the Hypertext Transfer Protocol (HTTP) protocol owning it is an application protocol that is widely supported by most all IoT devices and various intrinsic features such as persistent connection, ease of programming, flexibility, etc.</p>"},{"location":"5.4/#54424-control-message-serialization","title":"5.4.4.2.4 Control Message Serialization","text":"<p>Control commands that are wrapped within a request body of HTTP message shall be serialized into JavaScript Object Notation (JSON) because it is very lightweight and easy to parse and generate for machines.</p>"},{"location":"5.4/#545-acport","title":"5.4.5 acPort","text":"<p>The acPort is included in the oneM2M ATS in order to be able to control and configure the test adaptor for specific cases.</p>"},{"location":"5.4/#546-infoport","title":"5.4.6 infoPort","text":"<p>The infoPort is included in the oneM2M ATS in order for the TTCN-3 test components to be able to exchange information such as last response primitives or request primitives received by a component, retrieved primitive contents.</p>"},{"location":"5.5/","title":"5.5 Test components","text":""},{"location":"5.5/#551-tester","title":"5.5.1 Tester","text":"<p>The Tester test component includes a set of ports, timers and variables that are common to the other defined components which are described in table 5.5.1-1.</p> <p>Table 5.5.1-1: Tester component elements</p> Name Instance type Element type Description acPort port AdapterControlPort Port that communicates with the adapter for sending configuration parameters infoPort port InfoPort Port between test components for exchanging information utPort port UpperTesterPort Port that communicates with the UT Application for triggering actions on the IUT tc_ac timer N/A Timer for the reception of a message tc_wait timer N/A Timer for the reaction of the IUT to an upper tester primitive tc_done Timer N/A Timer for waiting completion of a component behaviour vc_config variable Configurations Configuration being used for the given test case vc_testSystemRole variable TestSystemRole Role of the test component vc_componentRegistered variable boolean Flag to indicate when a component has registered to the IUT vc_resetRequired variable Boolean Flag to indicate whether a reset of the IUT is necessary vc_resourcesList variable MyResourcesList List of all resources created by the test system on the IUT vc_resourcesIndexToBeDeleted variable IntegerList List of indexes of resources created by the test system on the IUT that need to be deleted vc_acpIndex variable integer Index of accessControlPolicy resource used by the test system by default (when required) vc_request variable MsgIn Latest request primitive received/sent vc_response variable MsgIn Latest response primitive received/sent vc_aeSimu variable default Reference to the default behaviour for an AeSimu component vc_cseSimu variable default Reference to the default behaviour for an CseSimu component vc_primitiveContentRetrievedResource variable PrimitiveContent Latest content of a RETRIEVE operation vc_myInterfaces variable Interfaces Parameters for the ports of the given component:Port (mcaPort, mcaPortIn, mccPort, mccPortIn)Host (SUT IP address :port)Protocol bindingSerialization <p>Note that vc_aeSimu and vc_cseSimu are not common to the other defined test components, but those variables are required in Tester for the correct activation/deactivation of default behaviours.</p>"},{"location":"5.5/#552-aesimu","title":"5.5.2 AeSimu","text":"<p>The AeSimu test component extends the Tester component by adding elements specific to an AE entity. Table 5.5.2-1 summarizes those elements.</p> <p>Table 5.5.2-1: AeSimu component elements</p> Name Instance type Element type Description mcaPort port OneM2MPort Port that implements the mca interface when test system is the client (sending requests) mcaPortIn port OneM2MPort Port that implements the mca interface when test system is the server (receiving requests) vc_ae2 test component AeSimu Reference to the AE2 component when required vc_cse1 test component CseSimu Reference to the CSE1 component when CF02 is used vc_ae1 test component AeSimu Reference to the AE1 component when required vc_das test component AeSimu Reference to the DAS component when required vc_aeSimuDesc variable AeSimuComponentDesc Component configuration extracted from required (AE1 or AE2) tester pixit vc_dasSimuDesc variable AeSimuComponentDesc Component configuration extracted from DAS tester pixit vc_auxiliaryAe2Up variable boolean Flag to indicate that AE2 component has been started vc_aeIndex variable integer Index of the AE resource in vc_resourcesList created by AeSimu component"},{"location":"5.5/#553-csesimu","title":"5.5.3 CseSimu","text":"<p>The CseSimu test component extends the Tester component by adding elements specific to an CSE entity. Table 5.5.3-1 summarizes those elements.</p> <p>Table 5.5.3-1: CseSimu component elements</p> Name Instance type Element type Description mcaPort port OneM2MPort Port that implements the mca interface when test system is the client (sending requests) mcaPortIn port OneM2MPort Port that implements the mca interface when test system is the server (receiving requests) mccPort port OneM2MPort Port that implements the mcc interface when test system is the client (sending requests) mccPortIn port OneM2MPort Port that implements the mcc interface when test system is the server (receiving requests) mccPortInternal port OneM2MPortInternal Port that implements the mcc and mcc' interfaces between TTCN-3 components vc_ae1 test component AeSimu Reference to the AE1 component when CF02 (CseSimu as master) is used vc_cse2 test component CseSimu Reference to the CSE1 component when required vc_cseSimuDesc variable CseSimuComponentDesc Component configuration extracted from required (CSE1 or CSE2) tester pixit vc_localResourcesList variable MyResourcesList List of all resources created by the IUT on the test system vc_localCSEBaseAnncIndex variable integer Index of the CSEBaseAnnc resource corresponding to the IUT vc_localRemoteCseIndex variable integer Index of the remoteCSE resource in vc_localResourcesList representing the IUT (CSE) vc_remoteCseIndex variable integer Index of the remoteCSE resource in vc_resourcesList representing the CseSimu component vc_cSEBaseIndex variable integer Index of the CSEBase resource in vc_localResourcesList of the CseSimu component vc_cseType variable CseTypeID CSE type of the test system (default is MN) vc_auxiliaryCse2Up variable boolean Flag to indicate that CSE2 component has been started"},{"location":"5.5/#554-scefsimu","title":"5.5.4 ScefSimu","text":"<p>The ScefSimu test component extends the Tester component by adding elements specific to an SCEF entity. Table 5.5.4-1 summarizes those elements.</p> <p>Table 5.5.4-1: ScefSimu component elements</p> Name Instance type Element type Description mcnPort port OneM2MPort Port that implements the mcn interface when test system is the client (sending requests) mcnPortIn port OneM2MPort Port that implements the mcn interface when test system is the server (receiving requests) vc_ae1 test component AeSimu Reference to the AE1 component when required vc_cse2 test component CseSimu Reference to the CSE1 component when required vc_aeSimuDesc variable AeSimuComponentDesc Component configuration extracted from required (AE1) tester pixit vc_cseSimuDesc variable CseSimuComponentDesc Component configuration extracted from required (CSE1) tester pixit vc_cseType variable CseTypeID CSE type of the test system (default is MN) vc_scefSimuDesc variable ScefSimuComponentDesc Component configuration extracted from required (SCEF) tester pixit vc_configurations variable NiddConfigurations NIDD configurations of SCEF component"},{"location":"5.6/","title":"5.6 Test strategy","text":"<p>This clause introduces the test strategy being used for the TTCN-3 test cases. The chosen strategy permits to have a clear structure of the code that facilitates an easy navigation throw the different test steps.</p> <p>The use of the TTCN-3 MTC and PTC(s) is as depicted in figure 5.6-1.</p> <p></p> <p>Figure 5.6-1: Use of TTCN-3 components</p> <p>At the start of the test case execution, the MTC is created. Then, the MTC executes the following steps:</p> <ul> <li>Step 1) initialization of the master PTC.</li> <li>Step 2) initialization of some parameters if required for the permutation test cases.</li> <li> <p>Step 3) running of the appropriate function on the master PTC. The function run on the master PTC implements a given Test Purpose. Such function follows a code structure as indicated here below:</p> <ul> <li>Local Variables, declaration of local variables.</li> <li>Test Control, checking IUT capability parameters required for the proper execution of the test.</li> <li>Test Component Configuration, that initializes the given test component and other test components acting as slave PTC(s) as required by a given configuration.</li> <li>Test adapter configuration, that configures the test adapter throw the acPort if required.</li> <li>Preamble, that implements the necessary test steps as described in the Initial conditions of a Test Purpose. It may also implement additional test steps which are required for the correct execution of the test.</li> <li>Test body, that implements the test steps as described in the Expected behaviour of a Test Purpose.</li> <li>Postamble, that implements the necessary test steps to bring the IUT back to the initial state.</li> <li>Tear down, that finalizes properly the TTCN-3 ports used by the different test components depending on the configuration.</li> </ul> </li> </ul> <p>While master PTC follows the test structure described above, slave PTC(s) run only certain procedures, usually one by one, as mandated by the master PTC.</p> <p>A procedure usually implements a oneM2M request-response exchange between a given PTC and the IUT, although it can implement any other specific action (sending or reception of a message, several request-response exchanges, etc.).</p> <ul> <li>Step 4) checking of some parameters if required for the permutation test cases.</li> </ul> <p>This test strategy may slightly vary for certain cases where specific requirements need to be fulfilled.</p>"},{"location":"6/","title":"6 Untestable Test Purposes","text":"<p>Void.</p>"},{"location":"7.0/","title":"7.0 Introduction","text":"<p>The ATS conventions are intended to give a better understanding of the ATS but they also describe the conventions made for the development of the ATS. These conventions shall be considered during any later maintenance or further development of the ATS.</p> <p>The ATS conventions contain two clauses, the naming conventions and the implementation conventions. The naming conventions describe the structure of the naming of all ATS elements. The implementation conventions describe the functional structure of the ATS.</p> <p>To define the ATS, the guidelines of oneM2M TS-0015 [i.2] were considered.</p>"},{"location":"7.1/","title":"7.1 Testing conventions","text":""},{"location":"7.1/#711-testing-states","title":"7.1.1 Testing states","text":""},{"location":"7.1/#7111-initial-state","title":"7.1.1.1 Initial state","text":"<p>All test cases start with the function f_preamble_XYZ. This function brings the IUT in an \"initialized\" state by performing some actions such as registration of AE, creation of auxiliary access control policy resource, creation of additional needed resources.</p>"},{"location":"7.1/#7112-final-state","title":"7.1.1.2 Final state","text":"<p>All test cases end with the function f_postamble_XYZ. This function brings the IUT back in an \"idle\" state which means deletion of all created resources being used by the test case so that next test case execution is not disturbed.</p> <p>As necessary, further actions may be included in the f_postamble functions.</p>"},{"location":"7.2/","title":"7.2 Naming conventions","text":""},{"location":"7.2/#721-general-guidelines","title":"7.2.1 General guidelines","text":"<p>This test suite follows the naming convention guidelines provided in oneM2M TS-0015 [i.2].</p> <p>The naming convention is based on the following underlying principles:</p> <ul> <li>in most cases, identifiers should be prefixed with a short alphabetic string (specified in table 7.2.1-1) indicating the type of TTCN3 element it represents;</li> <li>suffixes should not be used except in those specific cases identified in table 7.2.1-1;</li> <li>prefixes and suffixes should be separated from the body of the identifier with an underscore (\"_\");</li> </ul> <p><code>EXAMPLE 1: c\\_sixteen, t\\_wait.</code> </p> <ul> <li>only module names, data type names and module parameters should begin with an uppercase letter. All other names (i.e. the part of the identifier following the prefix) should begin with a lowercase letter;</li> <li>the start of second and subsequent words in an identifier should be indicated by capitalizing the first character. Underscores should not be used for this purpose.</li> </ul> <p><code>EXAMPLE 2: f\\_initialState.</code> </p> <p>Table 7.2.1-1 specifies the naming guidelines for each element of the TTCN3 language indicating the recommended prefix, suffixes (if any) and capitalization.</p> <p>Table 7.2.1-1: TTCN-3 generic naming conventions</p> Language element Naming convention Prefix Example identifier Module Use upper-case initial letter none OneM2M_Templates Group within a module Use lower-case initial letter none messageGroup Data type Use upper-case initial letter none SetupContents Message template Use lower-case initial letter m_ m_setupInit Message template with wildcard or matching expression Use lower-case initial letters mw_ mw_anyUserReply Signature template Use lower-case initial letter s_ s_callSignature Port instance Use lower-case initial letter none signallingPort Test component instance Use lower-case initial letter none userTerminal Constant Use lower-case initial letter c_ c_maxRetransmission Constant (defined within component type) Use lower-case initial letter cc_ cc_minDuration External constant Use lower-case initial letter cx_ cx_macId Function Use lower-case initial letter f_ f_authentication() External function Use lower-case initial letter fx_ fx_calculateLength() Altstep (incl. Default) Use lower-case initial letter a_ a_receiveSetup() Test case Use ETSI numbering TC_ TC_COR_0009_47_ND Variable (local) Use lower-case initial letter v_ v_macId Variable (defined within a component type) Use lower-case initial letters vc_ vc_systemName Timer (local) Use lower-case initial letter t_ t_wait Timer (defined within a component) Use lower-case initial letters tc_ tc_authMin Module parameters for PICS Use all upper case letters PICS_ PICS_DOOROPEN Module parameters for other parameters Use all upper case letters PX_ PX_TESTER_STATION_ID Formal Parameters Use lower-case initial letter p_ p_macId Enumerated Values Use lower-case initial letter e_ e_syncOk"},{"location":"7.2/#722-onem2m-specific-ttcn-3-naming-conventions","title":"7.2.2 oneM2M specific TTCN-3 naming conventions","text":"<p>Next to such general naming conventions, table 7.2.2-1 shows specific naming conventions that apply to the oneM2M TTCN-3 ATS.</p> <p>Table 7.2.2-1: oneM2M specific TTCN-3 naming conventions</p> Language element Naming convention Prefix Example identifier oneM2M Module Use upper-case initial letter OneM2M_ OneM2M_Testcases_ Module containing oneM2M types Use upper-case initial letter OneM2M_Types OneM2M_Types Module containing types and values Use upper-case initial letter OneM2M_TypesAndValues OneM2M_TypesAndValues Module containing Templates Use upper-case initial letter OneM2M_Templates OneM2M_Templates Module containing test cases Use upper-case initial letter OneM2M_Testcases OneM2M_Testcases Module containing functions Use upper-case initial letter OneM2M_Functions OneM2M_Functions Module containing external functions Use upper-case initial letter OneM2M_ExternalFunctions OneM2M_ExternalFunctions Module containing components, ports and message definitions Use upper-case initial letter OneM2M_TestSystem OneM2M_TestSystem Module containing module parameters Use upper-case initial letter OneM2M_Pixits OneM2M_Pixits"},{"location":"7.2/#723-usage-of-log-statements","title":"7.2.3 Usage of Log statements","text":"<p>All TTCN-3 log statements use the following format using the same order:</p> <ul> <li>The TTCN-3 test case or function identifier in which the log statement is defined.</li> <li>One of the categories of log: INFO, WARNING, ERROR, TIMEOUT, NONE.</li> <li>Free text.</li> </ul> <p><code>EXAMPLE 1: **log** (\"f\\_utInitializeIut: INFO: IUT initialized\");</code> </p> <p>Furthermore, the following rules are applied too:</p> <ul> <li>All TTCN-3 setverdict statements are combined (as defined in TTCN-3 - ETSI ES 201 873-1 [6]) with a log statement following the same above rules (see example 2).</li> </ul> <p><code>EXAMPLE 2: **setverdict** (**pass** , \"TC\\_ONEM2M\\_CSE\\_DMR\\_CRE\\_001: Received correct message\");</code> </p>"},{"location":"7.2/#724-test-case-tc-identifier","title":"7.2.4 Test Case (TC) identifier","text":"<p>Table 7.2.4-1: TC naming convention</p> Identifier: TC_<root>_<gr>_<sgr>_<nn>_<per> <root> = root ONEM2M oneM2M <gr> = group CSE CSE testing AE AE testing <sgr> = subgroup REG Registration DMR Data Management and Repository SUB Subscription and Notification GMG Group Management DIS Discovery LOC Location DMG Device Management CMDH Communication Management and Delivery Handling SEC Security <nn> = sequential number 001 to 999 <per> = permutation P1_P2_..PN Permutation parameters <p><code>EXAMPLE: TP identifier: TP/oneM2M/CSE/DMR/CRE/001</code> <code>TC identifier: TC\\_ONEM2M\\_CSE\\_DMR\\_CRE\\_001.</code> </p>"},{"location":"7.3/","title":"7.3 IXIT","text":"<p>The following parameters are used by the oneM2M ATS for the correct execution of the test cases.</p> <p>Table 7.3-1: oneM2M ATS IXITs</p> GROUP IXIT NAME DESCRIPTION DEFAULT VALUE IutParameters PX_IN_CSE MN-CSE True IutParameters PX_MN_CSE IN-CSE False IutParameters PX_ASN_CSE ASN-CSE False IutParameters PX_SUT_ADDRESS SUT address \"127.0.0.1:8080\" IutParameters PX_UT_IMPLEMENTED Upper Tester implemented False IutParameters PX_CSE_NAME IUT CSE Name \"cseName\" IutParameters PX_CSE_ID IUT CSE-ID with SP-relative-CSE-ID format (relative) according to oneM2M TS-0001 [1], table 7.2-1 \"/cseId\" IutParameters PX_CSE_RESOURCE_ID IUT CSE resource ID with Unstructured-CSE-relative-Resource-ID (relative) format according to oneM2MTS-0001 [1], table 7.2-1 \"cseResourceId\" IutParameters PX_SP_ID IUT M2M-SP-ID with M2M-SP-ID format (absolute) according to oneM2M TS-0001 [1], table 7.2-1 Unstructured-CSE-relative -Resource-ID \"//om2m.org\" IutParameters PX_SUPER_AE_ID AE-ID with privileges to CREATE at the IUT CSEBase with AE-ID-Stem format (relative) according to oneM2M TS-0001 [1], table 7.2-1 \"admin:admin\" IutParameters PX_SUPER_CSE_ID CSE-ID with privileges to CREATE at the IUT CSEBase with SPrelative-CSE-ID format (relative) according to oneM2M TS-0001 [1], table 7.2-1 \"/admin:admin\" IutParameters PX_ALLOWED_C_AE_IDS {\"C-AllowedAeId\"} IutParameters PX_NOT_ALLOWED_C_AE_IDS {\"C-NotAllowedAeId\"} IutParameters PX_ALLOWED_S_AE_IDS {\"S-AllowedAeId\"} IutParameters PX_NOT_ALLOWED_S_AE_IDS {\"S-NotAllowedAeId\"} IutParameters PX_NOT_ALLOWED_APP_ID \"NotAllowedAppId\" IutParameters PX_ADDRESSING_METHOD Addressing method e_hierarchical IutParameters PX_PRIMITIVE_SCOPE Primitive scope e_cseRelative IutParameters PX_WS_PROTOCOL WebSocket protocol \"oneM2M.R2.0.xml\" IutParameters PX_REQUEST_URI WebSocket context \"/\" IutParameters PX_HOSTING_CSE_ID Hosting CSE-ID for MQTT \"CSE-ID\" IutParameters PX_CREDENTIAL_ID Credential-ID for MQTT \"admin:admin\" IutParameters PX_XML_NAMESPACE XML Namespace \"m2m=\"\"http://www.onem2m.org/xml/protocols\"\"\" IutParameters PX_ACOR AccessControlOriginators {\"all\"} IutParameters PX_TCONFIG_IUT Time to configure IUT after a requested action 10.0 TesterParameters PX_TS_AE1 AE1 component settings aeIdStem = \"\"appId = \"NMyApp1Id\"mcaPort and mcaPortIn settings which include per port the following info:Binding: - bindingProtocol - bindingDesc: - tsAddress - localPort - sutAddress - remotePortSerialization TesterParameters PX_TS_AE2 AE2 component settings aeIdStem = \"\"appId = \"NMyApp2Id\"mcaPort and mcaPortIn settings which include per port the following info:Binding: - bindingProtocol - bindingDesc: - tsAddress - localPort - sutAddress - remotePortSerialization TesterParameters PX_TS_CSE1 CSE1 component settings cseName = \"CSE1_NAME\"cseId = \"/CSE1_ID\"cseResourceId = \"CSE1_RESOURCE_ID\"spId = \"//onem2m.org\"supportedResourceType = {int1, int2, int3, int16}mcaPort, mcaPortIn, mccPort and mccPortIn settings which include per port the following info:Binding: - bindingProtocol - bindingDesc: - tsAddress - localPort - sutAddress - remotePortSerialization TesterParameters PX_TS_CSE2 CSE2 component settings cseName = \"CSE2_NAME\"cseId = \"/CSE2_ID\"cseResourceId = \"CSE2_RESOURCE_ID\"spId = \"//onem2m.org\"supportedResourceType = {int1, int2, int3, int16}mcaPort, mcaPortIn, mccPort and mccPortIn settings which include per port the following info:Binding: - bindingProtocol - bindingDesc: - tsAddress - localPort - sutAddress - remotePortSerialization PX_TS_DAS DAS1 component settings aeIdStem = \"\"appId = \"\"mcaPort and mcaPortIn settings which include per port the following info:Binding: - bindingProtocol - bindingDesc: - tsAddress - localPort - sutAddress - remotePortSerialization PX_TS_UT UpperTester settings url = \"http://127.0.0.1:43000/\" ExecutionParameters PX_RESOURCES_TO_BE_DELETED (For debugging purposes) {\"MyAe\", \"MyAccessControlPolicyResource\", \"SubscriptionVerificationAcp\", \"MyAcp\", \"MyRemoteCSEResource\"} ExecutionParameters PX_RUN_POSTAMBLE (For debugging purposes) true ExecutionParameters PX_CERTIFICATE_PATH charstring \"\" ExecutionParameters PX_CERTIFICATE_NAME charstring \"\" ExecutionParameters PX_PAIRWISEKEY_METHOD PairwiseKeyMethod e_establish ExecutionParameters PX_KEY_PROVISION Provisioned e_preProvisioning"},{"location":"8/","title":"8 TTCN-3 Verifications","text":"<p>The principles for Verifying the TTCN-3 test code are given in oneM2M TS-0015 [i.2].</p> <p>All test cases provided with the present document in annex A which correspond to at least one of the product profiles defined in oneM2M TS-0025 [i.3] have been verified at the time of publication of the present document which corresponds with the TTCN-3 code gitlab tag provided in annex A.</p>"},{"location":"A.1/","title":"A.1 Electronic annex, zip file with TTCN-3 code","text":"<p>This ATS has been produced using the Testing and Test Control Notation (TTCN) according to ETSI ES 201 873-1 [6].</p> <p>This test suite has been compiled error-free using two different commercial TTCN-3 compilers.</p> <p>The TTCN-3 library modules, which form parts of the present document, are contained in the following gitLab tag:</p> <p>https://git.onem2m.org/TST/ATS/-/tags/TS-0019-baseline-v4_1_1 </p> <p></p>"},{"location":"B/","title":"Annex B (informative): Bibliography","text":"<p>ISO/IEC 9646-6 (1994): \"Information technology - Open Systems Interconnection - Conformance testing methodology and framework - Part 6: Protocol profile test specification\".</p> <p>oneM2M TS-0017: \"Implementation Conformance Statement\".</p> <p>oneM2M TS-0031: \"Feature catalogue\".</p>"},{"location":"download/","title":"Download","text":"<p>Download baseline for TS-0019 version v4.3.0:</p> <p></p>"}]} \ No newline at end of file diff --git a/public/versions.json b/public/versions.json index 804b8456..a4286660 100644 --- a/public/versions.json +++ b/public/versions.json @@ -2,7 +2,10 @@ { "version": "v4.3.0", "title": "v4.3.0", - "aliases": [] + "aliases": [ + "latest", + "latestR4" + ] }, { "version": "v4.2.0", @@ -15,10 +18,7 @@ { "version": "v4.1.1", "title": "v4.1.1", - "aliases": [ - "latestR4", - "latest" - ], + "aliases": [], "properties": { "hidden": false } -- GitLab