test suite reviews and discussions
 help / color / mirror / Atom feed
From: Ke Xu <ke1.xu@intel.com>
To: dts@dpdk.org
Cc: ke1.xu@intel.com, tarcadia@qq.com
Subject: [DTS][Patch V2 0/6] Rewrite test suite for checksum_offload, tso and vf_offload
Date: Tue, 18 Jul 2023 01:26:23 +0000	[thread overview]
Message-ID: <20230718012629.2471811-1-ke1.xu@intel.com> (raw)
In-Reply-To: <20230712203334.2032445-3-ke1.xu@intel.com>

Checksum offload cases were in bad situation. Cases are not well organized
 in structure. Cases were added one by one along with the development of
 features.

The very beginning cases are designed to verifying RX Checksum Offload
 enabling / disabling. The followed cases are to verify the TX Offload, and
 found a gap when TX introduces differences to IP and L4. Then IP and L4 RX
 cases are added again. There were also a gap found on the flag verifying
 and a seperate ol_flag case was added.

To better organizing the checksum offload cases. I introduced the scenario
 based common cases and specific cases named with sufix to cover specific
 scenarios of special requirements. And we placed all available test scopes
 introduced in any existing cases to each of our common test execution to
 ensure no leakage to our test scopes.

For scenarios, we introduce the very commonly used configurations for
 checksum as our test scenarios. These scenarios cover combined usage of HW
 checksum Offload, SW checksum and differently configured tunneling scenario,
 w/wo VLAN. These cases formed a organized web for future cases that if a new
 configuration is introduced, cases of new configuration combinations are to
 be added but existing configurations for different scopes are not to be added.

For test scopes, we introduce verifying ol_flag, fwd stats, other verbose lines,
 and forwarded packet capturing and analyzing. All these scopes are recorder for
 verifying in each common checksum offload execution. This ensures no scope would
 be missed in this rewrite and in future case updating.

The newly organized cases also helps better covering our existing test
 requirements. A common packet sending and recording helps cut down the repeating
 time cost of different executions for scope based redundant cases.

This rewrite also helps formating a data-process-seperated suite structure. The
 test parameters and required packets are listed in front and cases are referring
 to the configured parameters. This helps better reading the suite code.

In the test plan, new cases are added and old ones are merged with the new cases.
 Packets, ol_flags, stats and related test scopes are listed in table to show where
 the expected result is from.

Similar modifications are also made to TSO cases. Common TSO executions are introduced
 and scenarios are designed based on configurations with test scopes covering all
 cases. Common packets are introduced.

In vf_offload, checksum_offload and tso cases are synced with those in checksum_offload
 and tso suites. During the release DPDK 22.11 and 23.03, several main features are
 synced from PF to VF. This means the cases and scopes in checksum_offload and tso are
 available in vf_offload now. This patch also helped introducing these common test execution
 and scopes to vf_offload suite.

Generally speaking, this case rewrite helps formating the cases structure and helps
 better maintaining the cases in future.

Ke Xu (6):
  test_plans/checksum_offload: Refactor checksum_offload case.
  tests/checksum_offload: Refactor checksum_offload case.
  test_plans/tso: Refactor TSO case.
  tests/tso: Refactor TSO cases.
  test_plans/vf_offload: Refactor checksum_offload case.
  tests/vf_offload: Refactor vf_offload cases.

 test_plans/checksum_offload_test_plan.rst | 1478 ++++------
 test_plans/tso_test_plan.rst              |  489 +++-
 test_plans/vf_offload_test_plan.rst       | 1356 +++++----
 tests/TestSuite_checksum_offload.py       | 1788 ++++++------
 tests/TestSuite_tso.py                    | 1100 +++++---
 tests/TestSuite_vf_offload.py             | 3053 +++++++++++++--------
 6 files changed, 5369 insertions(+), 3895 deletions(-)

-- 
2.34.1


  reply	other threads:[~2023-07-18  1:26 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-07-12 20:33 [DTS][Patch V1 0/2] Rewrite test suite for checksum_offload Ke Xu
2023-07-12 20:33 ` [DTS][Patch V1 1/2] test_plans/checksum_offload: Refactor checksum_offload case Ke Xu
2023-07-12 20:33 ` [DTS][Patch V1 2/2] tests/checksum_offload: " Ke Xu
2023-07-18  1:26   ` Ke Xu [this message]
2023-07-18  1:26     ` [DTS][Patch V2 1/6] test_plans/checksum_offload: " Ke Xu
2023-07-18  1:26     ` [DTS][Patch V2 2/6] tests/checksum_offload: " Ke Xu
2023-07-18  1:26     ` [DTS][Patch V2 3/6] test_plans/tso: Refactor TSO case Ke Xu
2023-07-18  1:26     ` [DTS][Patch V2 4/6] tests/tso: Refactor TSO cases Ke Xu
2023-07-18  1:26     ` [DTS][Patch V2 5/6] test_plans/vf_offload: Refactor checksum_offload case Ke Xu
2023-07-18  1:26     ` [DTS][Patch V2 6/6] tests/vf_offload: Refactor vf_offload cases Ke Xu
2023-07-18  2:33       ` [DTS][Patch V3 0/6] Rewrite test suite for checksum_offload, tso and vf_offload Ke Xu
2023-07-18  2:33         ` [DTS][Patch V3 1/6] test_plans/checksum_offload: Refactor checksum_offload case Ke Xu
2023-07-18  2:33         ` [DTS][Patch V3 2/6] tests/checksum_offload: " Ke Xu
2023-07-18  2:33         ` [DTS][Patch V3 3/6] test_plans/tso: Refactor TSO case Ke Xu
2023-07-18  2:33         ` [DTS][Patch V3 4/6] tests/tso: Refactor TSO cases Ke Xu
2023-07-18  2:33         ` [DTS][Patch V3 5/6] test_plans/vf_offload: Refactor checksum_offload case Ke Xu
2023-07-18  2:33         ` [DTS][Patch V3 6/6] tests/vf_offload: Refactor vf_offload cases Ke Xu

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20230718012629.2471811-1-ke1.xu@intel.com \
    --to=ke1.xu@intel.com \
    --cc=dts@dpdk.org \
    --cc=tarcadia@qq.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).