test suite reviews and discussions
 help / color / mirror / Atom feed
* [dts] [PATCH 1/2] doc: add explanation of new parameters
@ 2017-07-28  5:04 Marvin Liu
  2017-07-28  5:04 ` [dts] [PATCH 2/2] doc: add explanation of new modules Marvin Liu
  0 siblings, 1 reply; 2+ messages in thread
From: Marvin Liu @ 2017-07-28  5:04 UTC (permalink / raw)
  To: dts; +Cc: Marvin Liu

Signed-off-by: Marvin Liu <yong.liu@intel.com>

diff --git a/doc/dts_gsg/config.rst b/doc/dts_gsg/config.rst
index abd8da7..9c8ef00 100644
--- a/doc/dts_gsg/config.rst
+++ b/doc/dts_gsg/config.rst
@@ -12,7 +12,8 @@ For Example, please see specific usage, you can get these information via DPDK T
    usage: main.py [-h] [--config-file CONFIG_FILE] [--git GIT] [--patch PATCH]
                   [--snapshot SNAPSHOT] [--output OUTPUT] [-s] [-r] [-p PROJECT]
                   [--suite-dir SUITE_DIR] [-t TEST_CASES] [-d DIR] [-v]
-                  [--virttype VIRTTYPE] [--debug] [--debugcase]
+                  [--virttype VIRTTYPE] [--debug] [--debugcase] [--re_run RE_RUN]
+                  [--commands COMMANDS]
 
 
 DPDK Test Suite supports the following parameters:
@@ -68,6 +69,13 @@ DPDK Test Suite supports the following parameters:
     | --debugcase               | Enter into debug mode before running every test   |                  |
     |                           | case.                                             |                  |
     +---------------------------+---------------------------------------------------+------------------+
+    | --re_run TIMES            | Rerun failed test cases for stable result         | 0                |
+    +---------------------------+---------------------------------------------------+------------------+
+    | --commands COMMANDS       | Run self assigned commands at different stages of |                  |
+    |                           | exection. Format is [commands]:dut|tester:pre-\   |                  |
+    |                           | init|post-init:check|ignore                       |                  |
+    |                           | E.g. [/root/setup.sh]:dut:pre-init:check          |                  |
+    +---------------------------+---------------------------------------------------+------------------+
 
 Please see more information about some critical parameters as the following:
 
@@ -135,6 +143,14 @@ Debug interact support commands as below:
 
 Another approach to run into debug mode. With this option on, DTS will hang and wait for user command before execution of each test case.
 
+**--re_run**
+
+Some cases may failed due to miscellaneous packets, rerun those test cases can generate the stable result.
+
+**--commands**
+
+Allow user specify some commands which can be executed on DUT or Tester in the process of DPDK Test Suite preparation.
+
 DPDK Release Preparation
 ------------------------
 
@@ -143,7 +159,7 @@ Firstly, you need to download the latest code from dpdk.org, then archive and co
 .. code-block:: console
 
     [root@tester dts]#  ls
-    [root@tester dts]#  conf dep doc dts executions framework output test_plans tests tools
+    [root@tester dts]#  conf dep doc dts executions framework nics output test_plans tests tools
 
 
 If enables patch option, DPDK Test Suite will also make patch the unzipped folder and compile it.
@@ -176,6 +192,7 @@ First of all, you must create a file named execution.cfg as below.
 *   scenario: Senario of DPDK virtualization environment for this execution.
 
     – nic_type : is the type of the NIC to use. The types are defined in the file settings.py.
+                 There's one special type named as **cfg**, which mean network information will be loaded from file.
 
     – func=true run only functional test
 
@@ -221,6 +238,28 @@ Then please add the detail information about your CRB in **conf/crbs.conf** as f
     | bypass_core0    | skip the first core when initialize DPDK           |
     +-----------------+----------------------------------------------------+
 
+If you need to configure network topology, please add it in **conf/ports.cfg**, e.g.:
+
+.. code-block:: console
+
+   [192.168.1.1]
+   ports =
+       pci=0000:06:00.0,peer=0000:81:00.0;
+       pci=0000:06:00.1,peer=0000:81:00.1;
+       pci=0000:08:00.0,peer=IXIA:1.1;
+       pci=0000:08:00.1,peer=IXIA:1.2;
+
+.. table::
+
+    +-----------------+----------------------------------------------------+
+    | Item            | description                                        |
+    +-----------------+----------------------------------------------------+
+    | pci             | Device pci address of DUT                          |
+    +-----------------+----------------------------------------------------+
+    | peer            | Device pci address of Tester port which connected  |
+    |                 | to the DUT device                                  |
+    +-----------------+----------------------------------------------------+
+
 Launch DPDK Test Suite
 ----------------------
 
@@ -265,7 +304,7 @@ Build dpdk source code and then setup the running environment.
    DTS_DUT_CMD: rmmod -f igb_uio
    DTS_DUT_CMD: insmod ./x86_64-native-linuxapp-gcc/kmod/igb_uio.ko
    DTS_DUT_CMD: lsmod | grep igb_uio
-   DTS_DUT_CMD: tools/dpdk_nic_bind.py --bind=igb_uio 08:00.0 08:00.1 0a:00.0 0a:00.1
+   DTS_DUT_CMD: usertools/dpdk_nic_bind.py --bind=igb_uio 08:00.0 08:00.1 0a:00.0 0a:00.1
 
 Begin the validation process of test suite.
 
-- 
1.9.3

^ permalink raw reply	[flat|nested] 2+ messages in thread

* [dts] [PATCH 2/2] doc: add explanation of new modules
  2017-07-28  5:04 [dts] [PATCH 1/2] doc: add explanation of new parameters Marvin Liu
@ 2017-07-28  5:04 ` Marvin Liu
  0 siblings, 0 replies; 2+ messages in thread
From: Marvin Liu @ 2017-07-28  5:04 UTC (permalink / raw)
  To: dts; +Cc: Marvin Liu

Signed-off-by: Marvin Liu <yong.liu@intel.com>

diff --git a/doc/dts_gsg/intro.rst b/doc/dts_gsg/intro.rst
index cacdd8b..f29e651 100644
--- a/doc/dts_gsg/intro.rst
+++ b/doc/dts_gsg/intro.rst
@@ -2,8 +2,8 @@ Introduction
 ============
 
 This document describes how to install and configure the Data Plane Development Kit Test Suite (DPDK Test Suite) in a Linux environment. Users can refer this document to enable this test infrastructure in their environment and don’t need go deeply with too much details about this framework.
-DPDK Test Suite is an automation test tool for DPDK software, a python-base library.  It can run on remote tester machine, and communicate/manage DUT by SSH connection. DTF supports different kind of traffic generators, including DPDK-based PacketGen, third-party professional tester equipment (IXIA®).
-Data Plane Development Kit Test Suite (DPDK Test Suite)  includes one set of test cases and DPDK generic test framework . DPDK Test Suite provides test example, references and framework for open source community. Based on DPDK Test Suite, everyone can develop their test plan, automation script and configuration for own features and platform. In addition, DPDK Test Suite provides a solution to allow that DPDK developers contribute their function test to certify their patch integration. It only requires limitation effort to maintain test cases once merged into DPDK Test Suite.  Everyone can utilize DPDK Test Suite to measure performance and functionality for features.
+DPDK Test Suite is an automation test tool for DPDK software, a python-base library.  It can run on the tester machine, and communicate/manage DUT by SSH connection. DTF supports different kind of traffic generators, including DPDK-based PacketGen, third-party professional tester equipment (IXIA®).
+Data Plane Development Kit Test Suite (DPDK Test Suite) includes one set of test cases and DPDK generic test framework. DPDK Test Suite provides test example, references and framework for open source community. Based on DPDK Test Suite, everyone can develop their test plan, automation script and configuration for own features and platform. In addition, DPDK Test Suite provides a solution to allow that DPDK developers contribute their function test to certify their patch integration. It only requires limitation effort to maintain test cases once merged into DPDK Test Suite.  Everyone can utilize DPDK Test Suite to measure performance and functionality for features.
 
 Please see DPDK Test Suite architecture in the following figures: 
 
@@ -11,15 +11,16 @@ Please see DPDK Test Suite architecture in the following figures:
 
 As generic test framework, DPDK Test Suite provides the following functions:
 
-*   Able to work with DUT (Device Under Test), which installed Fedora, Ubuntu, WindRiver, FreeBSD, RedHat and SUSE
+*   Able to work with DUT (Device Under Test), which installed Fedora, Ubuntu, WindRiver, FreeBSD, RedHat and SUSE.
+*   Support virtualization hypervisors like Xen and Qemu.
 *   Support both software and hardware traffic generators, including Scapy, DPDK-based PacketGen and IXIA traffic generator, even third party packet generator via TCL or Python library.
 *   Provide configure files to customize test suite and test cases to run under DUT.
+*   Provide debug and log functionalities for tracking test cases execution process.
 *   Support to output test result by excel, log text file, etc.
-*   In addition, Test Framework will manage communication with DUT by SSH, provides library to manage SSH connections.
 *   DPDK Test Suite provides one set of basic library to manage tester, DUT, test case, exception, generate report, and configure test plan by user configure files. It’s easy to develop user-defined test suite and test plan by self, and these test cases are able to integrate into DPDK Test Suite.
 *   With this test framework, user can automatically identify network topology, and easy to configure/deploy environment for DUT and tester, and provides flexibility to scale test capability by configuration.
 
-DPDK Test Suite environment includes DUT (Device under Test), Tester and packet generator. DPDK software will deployed and run on DUT.  DPDK Test Suite test Framework and test code will be stored into tester. 
+DPDK Test Suite environment includes DUT (Device under Test), Tester and packet generator. DPDK software will deployed and run on DUT. DPDK Test Suite should run on the Tester.
 
 Please see architecture in the following figures:
 
@@ -38,20 +39,24 @@ In the DPDK Test Suite Test Framework, it provides the following modules to help
     +-----------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+
     | main.py               | Test script to parse input parameter                                                                                                                         |
     +-----------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+
-    | dut.py                | Setup device under test including  tool chain, IP address                                                                                                    |
+    | dut.py                | Setup device under test including tool chain, IP address                                                                                                     |
     +-----------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+
     | tester.py             | Provide API to setup tester environment including IP, port, etc.                                                                                             |
     +-----------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+
-    | Exception.py          | Manage User-defined exceptions used across the framework.                                                                                                    |
+    | project_dpdk.py       | Provide running environment for DPDK.                                                                                                                        |
     +-----------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+
-    | Test_cases.py         | Provides a base class for creating DPDK Test Suite test cases.                                                                                               |
+    | exception.py          | Manage User-defined exceptions used across the framework                                                                                                     |
+    +-----------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+
+    | test_cases.py         | Provide a base class for creating DPDK Test Suite test cases                                                                                                 |
     +-----------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+
     | logger.py             | Deal with different log files to record event or message                                                                                                     |
     +-----------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+
-    | serializer.py         | Provide wrapper class to manage temporary variables during  execution                                                                                        |
+    | serializer.py         | Provide wrapper class to manage temporary variables during execution                                                                                         |
     +-----------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+
     | settings.py           | Setting for default network card and its identifiers supported by the framework                                                                              |
     +-----------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+
+    | utils.py              | Provide shared simple functions like IP address covertion and mask creation                                                                                  |
+    +-----------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+
     | ssh_connection.py     | Create session to host, implement send_expect and copy function                                                                                              |
     +-----------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+
     | ssh_pexpect.py        | Handle ssh sessions between tester and DUT, Implement send_expect function to send command and get output data, Aslo support transfer files to tester or DUT |
@@ -74,8 +79,6 @@ In the DPDK Test Suite Test Framework, it provides the following modules to help
     +-----------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+
     | ixia_buffer_parser.py | Helper class that parses a list of files containing IXIA captured frames extracting a sequential number on them                                              |
     +-----------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+
-    | ixiacfg.py            | IXIA Configuration file                                                                                                                                      |
-    +-----------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+
     | ixiaDCB.tcl           | Third party Library which provided by IXIA, used to configure IXIA tester                                                                                    |
     +-----------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+
     | ixiaPing6.tcl         | Third party Library which provided by IXIA, used to ping IXIA tester                                                                                         |
@@ -84,8 +87,20 @@ In the DPDK Test Suite Test Framework, it provides the following modules to help
     +-----------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+
     | texttable.py          | Third party Library , create simple ASCII tables                                                                                                             |
     +-----------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+
+    | qemu_kvm.py           | Provide functionality for management and monitoring QEMU hypervisor                                                                                          |
+    +-----------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+
+    | qemu_libvirt.py       | Provide functionality for usage of libvirt library                                                                                                           |
+    +-----------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+
+    | virt_base.py          | Base class for virtual machine, supply basic management functions                                                                                            |
+    +-----------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+
+    | virt_dut.py           | Generate instance for virtual machine, usage model is like DUT                                                                                               |
+    +-----------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+
+    | virt_resource.py      | Provide resource management for virtual machine                                                                                                              |
+    +-----------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+
+    | virt_scene.py         | Generate virtualization scenario based on configuration file                                                                                                 |
+    +-----------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+
 
-Beside Framework tool, DPDK Test Suite also defines one set of test cases. It includes basic test suite to verify basic functionality of DPDK library.  These test script provides example and reference. Everyone can develop their test cases, verify their features functionality, and commit generic test report to maintainer.  However, user-defined test cases, plan and script must follow DPDK Test Suite standard including code standard, naming conventions, configure format, rst test plan, API. 
+Beside Framework tool, DPDK Test Suite also defines one set of test cases. It includes basic test suite to verify basic functionality of DPDK library. These test script provides example and reference. Everyone can develop their test cases, verify their features functionality, and commit generic test report to maintainer. However, user-defined test cases, plan and script must follow DPDK Test Suite standard including code standard, naming conventions, configure format, rst test plan, API. 
 
 Please see test cases, which included in the DPDK compliance test suites:
 
-- 
1.9.3

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2017-07-28  5:06 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-07-28  5:04 [dts] [PATCH 1/2] doc: add explanation of new parameters Marvin Liu
2017-07-28  5:04 ` [dts] [PATCH 2/2] doc: add explanation of new modules Marvin Liu

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).