test suite reviews and discussions
 help / color / mirror / Atom feed
From: "Liu, Yong" <yong.liu@intel.com>
To: "Xu, HuilongX" <huilongx.xu@intel.com>, "dts@dpdk.org" <dts@dpdk.org>
Subject: Re: [dts] [PATCH 0/4] compile dpdk different config with different test	suite by dts framework befor run test suite
Date: Sat, 1 Apr 2017 08:54:22 +0000	[thread overview]
Message-ID: <86228AFD5BCD8E4EBFD2B90117B5E81E62DA36B2@SHSMSX103.ccr.corp.intel.com> (raw)
In-Reply-To: <DF2A19295B96364286FEB7F3DDA27A4668D776BB@SHSMSX101.ccr.corp.intel.com>

Huilong, thanks for your comments.

> -----Original Message-----
> From: Xu, HuilongX
> Sent: Saturday, April 01, 2017 4:32 PM
> To: Liu, Yong <yong.liu@intel.com>; dts@dpdk.org
> Subject: RE: [dts] [PATCH 0/4] compile dpdk different config with
> different test suite by dts framework befor run test suite
> 
> 
> See my comments
> 
> > -----Original Message-----
> > From: Liu, Yong
> > Sent: Saturday, April 01, 2017 4:21 PM
> > To: Xu, HuilongX; dts@dpdk.org
> > Cc: Xu, HuilongX
> > Subject: RE: [dts] [PATCH 0/4] compile dpdk different config with
> different
> > test suite by dts framework befor run test suite
> >
> > Thanks huilong. The overall idea look good for me. Just some comments as
> > below:
> >
> > 1. Configuration dependency should be based on test case not suite.
> > Configuration requirements maybe changed even in one suite.
> If config dependency test case, must get all case name, but if case name
> same, maybe have issue.

That can be solved like reformat cases names to make sure name different from each other.
Or compile configuration format changed to "suite+case".

> 
> > 2. No need to compile all compile sessions. If cases not in execution
> list, we
> > can skip it. It will save more time :)
> The config is global, if test suite not in exection.cfg, the compile
> session will skip.

Thanks, we need to skip useless build.

> 
>  3. Assume that suite can remove all dpdk
> > build related code, cause of framework can make case not aware of
> > configuration dependencies.
> Maybe can savel compile switch in target result, but it only for check.
> Because, when we development a case.
> We should know compile switch config and compile.cfg is static and global.
> So not need know dependencies.
> >

Configuration dependencies have been tracked by compile.cfg. Compilation and link action can be handled in framework.
Test case code can ignore or discard DPDK configuration difference.

Logic will be like:

Compile config: tracking all configuration dependencies

DTS init:
	Load compile config
	Load execution config

	Build dpdk with default configuration
	If execution cases need in compile configuration
		Build dpdk with modified configuration file
		Build app with modified configuration file
		Move built target to other folder
		Move built binary to other folder

DTS run test Case: 
	If case need special configuration 
      	Link compile session target for this case to default target
		Link app for this case to default folder
		Run test case
		After case finished, remove that link and restore default target back

	If case not need special configuration
		Just run the case(original dpdk recompile code should also work here)

> > Thanks,
> > Marvin
> >
> > > -----Original Message-----
> > > From: dts [mailto:dts-bounces@dpdk.org] On Behalf Of xu,huilong
> > > Sent: Saturday, April 01, 2017 3:42 PM
> > > To: dts@dpdk.org
> > > Cc: Xu, HuilongX <huilongx.xu@intel.com>
> > > Subject: [dts] [PATCH 0/4] compile dpdk different config with
> > > different test suite by dts framework befor run test suite
> > >
> > > we should compile dpdk many times for different test suite.
> > > if we exec a test suite must update dpdk compile suite or change dpdk
> > > code, we must cpmpile dpdk two times at least.
> > > So this change for read exec test_suite list and compile dpdk befor
> > > run test suite.
> > >
> > > update list:
> > >  1. conf/common_base
> > >     this is dpdk all compile switch from dpdk source code. it for
> > > check compile.cfg switch vaild.
> > >  2. conf/compile.cfg
> > >     compile config template, detaile config please see comments in
> > > file  3. framework/config.py
> > >     parse compile.cfg, detaile info please see comments in commit  4.
> > > framework/project_dpdk.py
> > >     a)define interface for test suit:
> > >       reset_compile_target()
> > >     b) read compile conf and get test suite list, then update compile
> > > switch and compile dpdk  5. framework/dts.py
> > >     set test suite list
> > >  6. tests/TestSuite_coremask.py and
> tests/TestSuite_queue_start_stop.py
> > >     example for use compile config.
> > > Now old interface for compile dpdk is vaild, so other case will also
> > > run pass.
> > >
> > > xu,huilong (4):
> > >   add dpdk all compile switch
> > >   add compile config file template and parse compile config class
> > >   read compile switch config and compile dpdk before test
> > >   add example for test suite
> > >
> > >  conf/common_base                    | 632
> > > ++++++++++++++++++++++++++++++++++++
> > >  conf/compile.cfg                    |  30 ++
> > >  framework/config.py                 |  21 +-
> > >  framework/dts.py                    |   2 +-
> > >  framework/project_dpdk.py           | 103 +++++-
> > >  tests/TestSuite_coremask.py         |  12 +-
> > >  tests/TestSuite_queue_start_stop.py |  28 +-
> > >  7 files changed, 789 insertions(+), 39 deletions(-)  create mode
> > > 100644 conf/common_base  create mode 100644 conf/compile.cfg
> > >
> > > --
> > > 1.9.3

      reply	other threads:[~2017-04-01  8:54 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-04-01  7:42 xu,huilong
2017-04-01  7:42 ` [dts] [PATCH 1/4] add dpdk all compile switch xu,huilong
2017-04-01  8:02   ` Liu, Yong
2017-04-01  7:42 ` [dts] [PATCH 2/4] add compile config file template and parse compile config class xu,huilong
2017-04-01  7:42 ` [dts] [PATCH 3/4] read compile switch config and compile dpdk before test xu,huilong
2017-04-01  7:42 ` [dts] [PATCH 4/4] add example for test suite xu,huilong
2017-04-01  8:20 ` [dts] [PATCH 0/4] compile dpdk different config with different test suite by dts framework befor run " Liu, Yong
2017-04-01  8:31   ` Xu, HuilongX
2017-04-01  8:54     ` Liu, Yong [this message]

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=86228AFD5BCD8E4EBFD2B90117B5E81E62DA36B2@SHSMSX103.ccr.corp.intel.com \
    --to=yong.liu@intel.com \
    --cc=dts@dpdk.org \
    --cc=huilongx.xu@intel.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).