diff options
author | mrpa <miruna.paun@enea.com> | 2021-01-26 17:21:42 +0100 |
---|---|---|
committer | Miruna Paun <mrpa@enea.se> | 2021-01-27 15:30:21 +0200 |
commit | f6cfce42ff1ad5f49d76028d7cdf67ab158ed3cb (patch) | |
tree | b310e077197ff42211de5d47f53417db47add024 | |
parent | 1eee467409871bc24c5385e825afa7139c19a9f1 (diff) | |
download | nfv-access-documentation-f6cfce42ff1ad5f49d76028d7cdf67ab158ed3cb.tar.gz |
Added a note in 4.1.1.5 Running Python Unit-Test Suite (AFTH)
Added the new section 4.1.25 Custom Script full example (AFTH)
Added the new section 3.4 Custom Scripts basic test (Test Spec).
Change-Id: I729768eb72417264b1a286638372a584361a7e33
Signed-off-by: mrpa <miruna.paun@enea.com>
-rw-r--r-- | doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/automation_framework_test_harness.xml | 126 | ||||
-rw-r--r-- | doc/book-enea-nfv-access-system-test-specification/doc/sample_test_cases.xml | 96 |
2 files changed, 218 insertions, 4 deletions
diff --git a/doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/automation_framework_test_harness.xml b/doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/automation_framework_test_harness.xml index 4ab9cd1..fd21087 100644 --- a/doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/automation_framework_test_harness.xml +++ b/doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/automation_framework_test_harness.xml | |||
@@ -343,6 +343,12 @@ NOTSET 0</programlisting></para> | |||
343 | <section id="run_ut_suite"> | 343 | <section id="run_ut_suite"> |
344 | <title>Running Python Unit-Test Suite</title> | 344 | <title>Running Python Unit-Test Suite</title> |
345 | 345 | ||
346 | <note> | ||
347 | <para>Please update all JSON configuration files to use the name of | ||
348 | your vCPE agent device. In the following chapters, intelc3850-2 is | ||
349 | used as an example.</para> | ||
350 | </note> | ||
351 | |||
346 | <para>Below you'll find sample unit-test command line options for | 352 | <para>Below you'll find sample unit-test command line options for |
347 | running the Fortigate <emphasis role="bold">deployment</emphasis> | 353 | running the Fortigate <emphasis role="bold">deployment</emphasis> |
348 | scenario:</para> | 354 | scenario:</para> |
@@ -2407,6 +2413,126 @@ phase always-after-startup from inteld1521-6 | |||
2407 | </section> | 2413 | </section> |
2408 | </section> | 2414 | </section> |
2409 | 2415 | ||
2416 | <section id="custom_script_eg"> | ||
2417 | <title>Custom Script - Full Example</title> | ||
2418 | |||
2419 | <para>All Python API used in this example are described in detail in the following sections.</para> | ||
2420 | |||
2421 | <para>The list of custom scripts can be found in | ||
2422 | <literal><AF-TH-install-dir>/lab_config/customScripts</literal>:</para> | ||
2423 | |||
2424 | <itemizedlist spacing="compact"> | ||
2425 | <listitem> | ||
2426 | <para><filename>test_fail_after_always</filename>. Phase: | ||
2427 | always-after-startup.</para> | ||
2428 | </listitem> | ||
2429 | |||
2430 | <listitem> | ||
2431 | <para><filename>test_fail_after_once</filename>. Phase: | ||
2432 | once-after-startup.</para> | ||
2433 | </listitem> | ||
2434 | |||
2435 | <listitem> | ||
2436 | <para><filename>test_fail_before_always</filename>. Phase: | ||
2437 | always-before-startup.</para> | ||
2438 | </listitem> | ||
2439 | |||
2440 | <listitem> | ||
2441 | <para><filename>test_fail_before_once</filename>. Phase: | ||
2442 | once-before-startup.</para> | ||
2443 | </listitem> | ||
2444 | |||
2445 | <listitem> | ||
2446 | <para><filename>test_success_after_always</filename>. Phase: | ||
2447 | always-after-startup.</para> | ||
2448 | </listitem> | ||
2449 | |||
2450 | <listitem> | ||
2451 | <para><filename>test_success_after_once</filename>. Phase: | ||
2452 | once-after-startup.</para> | ||
2453 | </listitem> | ||
2454 | |||
2455 | <listitem> | ||
2456 | <para><filename>test_success_before_always</filename>. Phase: | ||
2457 | always-before-startup.</para> | ||
2458 | </listitem> | ||
2459 | |||
2460 | <listitem> | ||
2461 | <para><filename>test_success_before_once</filename>. Phase: | ||
2462 | once-before-startup.</para> | ||
2463 | </listitem> | ||
2464 | </itemizedlist> | ||
2465 | |||
2466 | <note> | ||
2467 | <para>The following example uses the | ||
2468 | <filename>test_success_after_always</filename> custom script.</para> | ||
2469 | </note> | ||
2470 | |||
2471 | <section id="upload_customscrp_ucpemg"> | ||
2472 | <title>Uploading a Custom Script to the uCPE Manager</title> | ||
2473 | |||
2474 | <programlisting>$ python automation_framework/customScripts/upload.py \ | ||
2475 | -f lab_config/customScripts/test_success_after_always -e always-after-startup | ||
2476 | 2020-04-14 14:08:02,824 - DEBUG: Started logging | ||
2477 | 2020-04-14 14:08:02,915 - INFO: Upload Custom Script | ||
2478 | 2020-04-14 14:08:02,994 - DEBUG: Login successful on host '172.24.3.109' | ||
2479 | 2020-04-14 14:08:02,995 - DEBUG: Session token is: 97544990-7e48-11ea-835c-02423a1c239f | ||
2480 | 2020-04-14 14:08:02,996 - DEBUG: Upload test_success_after_always to uCPE Manager. \ | ||
2481 | Content: #!/bin/bash | ||
2482 | echo test_success_after_always | ||
2483 | 2020-04-14 14:08:03,138 - INFO: Done | ||
2484 | 2020-04-14 14:08:03,169 - DEBUG: Logging out and exiting...</programlisting> | ||
2485 | </section> | ||
2486 | |||
2487 | <section id="upload_customscrp_device"> | ||
2488 | <title>Uploading a Custom Script from the uCPE Manager to a | ||
2489 | Device</title> | ||
2490 | |||
2491 | <programlisting>$ python automation_framework/customScripts/uploadOnDevice.py -c \ | ||
2492 | test_success_after_always -e always-after-startup -n inteld1521-6 | ||
2493 | 2020-04-14 14:26:26,205 - DEBUG: Started logging | ||
2494 | 2020-04-14 14:26:26,206 - INFO: Upload Custom Script on Device | ||
2495 | 2020-04-14 14:26:26,251 - DEBUG: Login successful on host '172.24.3.109' | ||
2496 | 2020-04-14 14:26:26,252 - DEBUG: Session token is: 28ebcb10-7e4b-11ea-835c-02423a1c239f | ||
2497 | 2020-04-14 14:26:26,286 - DEBUG: Found device with name 'inteld1521-6' | ||
2498 | 2020-04-14 14:26:26,287 - DEBUG: Upload test_success_after_always to inteld1521-6 | ||
2499 | 2020-04-14 14:26:26,314 - INFO: Done | ||
2500 | 2020-04-14 14:26:26,341 - DEBUG: Logging out and exiting...</programlisting> | ||
2501 | </section> | ||
2502 | |||
2503 | <section id="removing_customscrp_device"> | ||
2504 | <title>Removing a Custom Script from a Device</title> | ||
2505 | |||
2506 | <programlisting>$ python automation_framework/customScripts/deleteOnDevice.py -c \ | ||
2507 | test_success_after_always -e always-after-startup -n inteld1521-6 | ||
2508 | 2020-04-14 14:33:52,288 - DEBUG: Started logging | ||
2509 | 2020-04-14 14:33:52,288 - INFO: Delete Custom Script on Device | ||
2510 | 2020-04-14 14:33:52,327 - DEBUG: Login successful on host '172.24.3.109' | ||
2511 | 2020-04-14 14:33:52,327 - DEBUG: Session token is: 32cde4f0-7e4c-11ea-835c-02423a1c239f | ||
2512 | 2020-04-14 14:33:52,349 - DEBUG: Found device with name 'inteld1521-6' | ||
2513 | 2020-04-14 14:33:52,349 - DEBUG: Delete test_success_after_always, \ | ||
2514 | phase always-after-startup from inteld1521-6 | ||
2515 | 2020-04-14 14:33:52,373 - INFO: Done | ||
2516 | 2020-04-14 14:33:52,391 - DEBUG: Logging out and exiting...</programlisting> | ||
2517 | </section> | ||
2518 | |||
2519 | <section id="remove_customscrp_ucpemg"> | ||
2520 | <title>Removing a Custom Script from the uCPE Manager</title> | ||
2521 | |||
2522 | <programlisting>$ python automation_framework/customScripts/delete.py -c \ | ||
2523 | test_success_after_always -e always-after-startup | ||
2524 | 2020-04-14 14:39:22,042 - DEBUG: Started logging | ||
2525 | 2020-04-14 14:39:22,042 - INFO: Delete Custom Script on uCPE Manager | ||
2526 | 2020-04-14 14:39:22,081 - DEBUG: Login successful on host '172.24.3.109' | ||
2527 | 2020-04-14 14:39:22,082 - DEBUG: Session token is: f75a83a0-7e4c-11ea-835c-02423a1c239f | ||
2528 | 2020-04-14 14:39:22,099 - DEBUG: Found custom script: 'test_success_after_always' | ||
2529 | 2020-04-14 14:39:22,099 - DEBUG: Delete script test_success_after_always, \ | ||
2530 | phase always-after-startup from uCPE Manager | ||
2531 | 2020-04-14 14:39:22,118 - INFO: Done | ||
2532 | 2020-04-14 14:39:22,135 - DEBUG: Logging out and exiting...</programlisting> | ||
2533 | </section> | ||
2534 | </section> | ||
2535 | |||
2410 | <section id="add_offline_config_store"> | 2536 | <section id="add_offline_config_store"> |
2411 | <title>Adding an Offline Configuration Store</title> | 2537 | <title>Adding an Offline Configuration Store</title> |
2412 | 2538 | ||
diff --git a/doc/book-enea-nfv-access-system-test-specification/doc/sample_test_cases.xml b/doc/book-enea-nfv-access-system-test-specification/doc/sample_test_cases.xml index f4b2fc7..2fa087b 100644 --- a/doc/book-enea-nfv-access-system-test-specification/doc/sample_test_cases.xml +++ b/doc/book-enea-nfv-access-system-test-specification/doc/sample_test_cases.xml | |||
@@ -1502,8 +1502,8 @@ FortigateFWInstance tested successfully!</programlisting></para> | |||
1502 | targetptr="fortigate_firewall_uc_1">FortiGate VNF as a | 1502 | targetptr="fortigate_firewall_uc_1">FortiGate VNF as a |
1503 | Firewall in the <ns:include | 1503 | Firewall in the <ns:include |
1504 | href="../../s_docbuild/olinkdb/pardoc-names.xml" | 1504 | href="../../s_docbuild/olinkdb/pardoc-names.xml" |
1505 | xpointer="element(book_enea_nfv_access_example_usecases/1)" | 1505 | xmlns:ns="http://www.w3.org/2001/XInclude" |
1506 | xmlns:ns="http://www.w3.org/2001/XInclude" /></olink> | 1506 | xpointer="element(book_enea_nfv_access_example_usecases/1)" /></olink> |
1507 | Manual.</para> | 1507 | Manual.</para> |
1508 | </listitem> | 1508 | </listitem> |
1509 | 1509 | ||
@@ -1512,8 +1512,8 @@ FortigateFWInstance tested successfully!</programlisting></para> | |||
1512 | targetdoc="book_enea_nfv_access_auto_fw_th_user_guide" | 1512 | targetdoc="book_enea_nfv_access_auto_fw_th_user_guide" |
1513 | targetptr="python_testsuite">Python Unit-Test Suite in | 1513 | targetptr="python_testsuite">Python Unit-Test Suite in |
1514 | <ns:include href="../../s_docbuild/olinkdb/pardoc-names.xml" | 1514 | <ns:include href="../../s_docbuild/olinkdb/pardoc-names.xml" |
1515 | xpointer="element(book_enea_nfv_access_auto_fw_th_user_guide/1)" | 1515 | xmlns:ns="http://www.w3.org/2001/XInclude" |
1516 | xmlns:ns="http://www.w3.org/2001/XInclude" /></olink>.</para> | 1516 | xpointer="element(book_enea_nfv_access_auto_fw_th_user_guide/1)" /></olink>.</para> |
1517 | </listitem> | 1517 | </listitem> |
1518 | </itemizedlist> | 1518 | </itemizedlist> |
1519 | </listitem> | 1519 | </listitem> |
@@ -1714,4 +1714,92 @@ LAN-to-LAN connectivity (through VPN tunnel)tested successfully!</programlisting | |||
1714 | -e "site1=inteld1521-1 site2=inteld1521-2 arch=XeonD"</programlisting></para> | 1714 | -e "site1=inteld1521-1 site2=inteld1521-2 arch=XeonD"</programlisting></para> |
1715 | </section> | 1715 | </section> |
1716 | </section> | 1716 | </section> |
1717 | |||
1718 | <section id="custom_scripts_bt"> | ||
1719 | <title>Custom Scripts - Basic Test</title> | ||
1720 | |||
1721 | <para>The basic test script can be found in | ||
1722 | <literal><AF-TH-install-dir>/playbooks/customScripts/basicTest.yml</literal>.</para> | ||
1723 | |||
1724 | <para>The <filename>basicTest.yml</filename> script requires the following | ||
1725 | steps:</para> | ||
1726 | |||
1727 | <orderedlist spacing="compact"> | ||
1728 | <listitem> | ||
1729 | <para>Upload a Custom Script onto the uCPE Manager.</para> | ||
1730 | </listitem> | ||
1731 | |||
1732 | <listitem> | ||
1733 | <para>Upload the Custom Script onto a Device.</para> | ||
1734 | </listitem> | ||
1735 | |||
1736 | <listitem> | ||
1737 | <para>Reboot the Device.</para> | ||
1738 | </listitem> | ||
1739 | |||
1740 | <listitem> | ||
1741 | <para>Wait for the Device to be up and running.</para> | ||
1742 | </listitem> | ||
1743 | |||
1744 | <listitem> | ||
1745 | <para>Remove the Custom Script from the Device.</para> | ||
1746 | </listitem> | ||
1747 | |||
1748 | <listitem> | ||
1749 | <para>Remove the Custom Script from the uCPE Manager.</para> | ||
1750 | </listitem> | ||
1751 | </orderedlist> | ||
1752 | |||
1753 | <para><emphasis role="bold">Preconditions:</emphasis></para> | ||
1754 | |||
1755 | <itemizedlist> | ||
1756 | <listitem> | ||
1757 | <para>A device must have been previously added and connected to the | ||
1758 | uCPE Manager.</para> | ||
1759 | </listitem> | ||
1760 | |||
1761 | <listitem> | ||
1762 | <para>The device JSON configuration file must have been created: | ||
1763 | <filename><AF-TH-install-dir>/lab_config/<Device-name>/<Device-name>.json</filename>.</para> | ||
1764 | </listitem> | ||
1765 | |||
1766 | <listitem> | ||
1767 | <para>The custom script should have been previously saved in | ||
1768 | <literal><AF-TH-install-dir>/lab_config/customScripts</literal>.</para> | ||
1769 | </listitem> | ||
1770 | |||
1771 | <listitem> | ||
1772 | <para>Add device settings in the <literal>hosts</literal> Ansible inventory file under | ||
1773 | <literal>[customScriptDevice]</literal> and remove the <literal>inteld1521-1</literal> | ||
1774 | example.</para> | ||
1775 | </listitem> | ||
1776 | </itemizedlist> | ||
1777 | |||
1778 | <para><emphasis role="bold">Example:</emphasis></para> | ||
1779 | |||
1780 | <programlisting>[customScriptDevice] | ||
1781 | inteld1521-1 ansible_host=172.24.12.73 ansible_port=22 ansible_user=root \ | ||
1782 | ansible_pass=root</programlisting> | ||
1783 | |||
1784 | <para><emphasis role="bold">Action:</emphasis> Run | ||
1785 | <filename>basicTest.yml</filename> (example data for | ||
1786 | <filename>test_success_after_always</filename>):</para> | ||
1787 | |||
1788 | <programlisting>ansible-playbook playbooks/customScripts/basicTest.yml -e "device=<Device-name>" \ | ||
1789 | -e "scriptName=test_success_after_always" -e "phase=always-after-startup" \ | ||
1790 | -e "expectedStatus=success"</programlisting> | ||
1791 | |||
1792 | <para><emphasis role="bold">Result:</emphasis> Output of | ||
1793 | <filename>basicTest.yml</filename>:</para> | ||
1794 | |||
1795 | <programlisting>test_success_after_always was uploaded to uCPE Manager! | ||
1796 | test_success_after_always was uploaded to <Device-name>! | ||
1797 | |||
1798 | <Device-name> device is connected! | ||
1799 | test_success_after_always from phase always-after-startup was removed \ | ||
1800 | from <Device-name>! | ||
1801 | |||
1802 | test_success_after_always from phase always-after-startup was removed \ | ||
1803 | from uCPE Manager!</programlisting> | ||
1804 | </section> | ||
1717 | </chapter> \ No newline at end of file | 1805 | </chapter> \ No newline at end of file |