linux-kselftest.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Randy Dunlap <rdunlap@infradead.org>
To: Brendan Higgins <brendanhiggins@google.com>
Cc: Frank Rowand <frowand.list@gmail.com>,
	Greg KH <gregkh@linuxfoundation.org>,
	Josh Poimboeuf <jpoimboe@redhat.com>,
	Kees Cook <keescook@google.com>,
	Kieran Bingham <kieran.bingham@ideasonboard.com>,
	Luis Chamberlain <mcgrof@kernel.org>,
	Peter Zijlstra <peterz@infradead.org>,
	Rob Herring <robh@kernel.org>, Stephen Boyd <sboyd@kernel.org>,
	shuah <shuah@kernel.org>, Theodore Ts'o <tytso@mit.edu>,
	Masahiro Yamada <yamada.masahiro@socionext.com>,
	devicetree <devicetree@vger.kernel.org>,
	dri-devel <dri-devel@lists.freedesktop.org>,
	kunit-dev@googlegroups.com,
	"open list:DOCUMENTATION" <linux-doc@vger.kernel.org>,
	linux-fsdevel@vger.kernel.org,
	linux-kbuild <linux-kbuild@vger.kernel.org>,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
	"open list:KERNEL SELFTEST FRAMEWORK" 
	<linux-kselftest@vger.kernel.org>,
	linux-nvdimm <linux-nvdimm@lists.01.org>,
	linux-um@lists.infradead.org,
	Sasha Levin <Alexander.Levin@microsoft.com>,
	"Bird, Timothy" <Tim.Bird@sony.com>,
	Amir Goldstein <amir73il@gmail.com>,
	Dan Carpenter <dan.carpenter@oracle.com>,
	Daniel Vetter <daniel@ffwll.ch>, Jeff Dike <jdike@addtoit.com>,
	Joel Stanley <joel@jms.id.au>,
	Julia Lawall <julia.lawall@lip6.fr>,
	Kevin Hilman <khilman@baylibre.com>,
	Knut Omang <knut.omang@oracle.com>,
	Logan Gunthorpe <logang@deltatee.com>,
	Michael Ellerman <mpe@ellerman.id.au>,
	Petr Mladek <pmladek@suse.com>,
	Richard Weinberger <richard@nod.at>,
	David Rientjes <rientjes@google.com>,
	Steven Rostedt <rostedt@goodmis.org>,
	wfg@linux.intel.com,
	Linus Torvalds <torvalds@linux-foundation.org>,
	Felix Guo <felixguoxiuping@gmail.com>,
	Jonathan Corbet <corbet@lwn.net>
Subject: Re: [PATCH v18 15/19] Documentation: kunit: add documentation for KUnit
Date: Mon, 23 Sep 2019 12:49:54 -0700	[thread overview]
Message-ID: <d7a61045-8fe6-a104-ece9-67b69c379425@infradead.org> (raw)
In-Reply-To: <CAFd5g45y-NWzbn8E8hUg=n4U5E+N6_4D8eCXhQ74Y0N4zqVW=w@mail.gmail.com>

On 9/23/19 11:06 AM, Brendan Higgins wrote:
> On Mon, Sep 23, 2019 at 8:48 AM Randy Dunlap <rdunlap@infradead.org> wrote:
>>
>> On 9/23/19 2:02 AM, Brendan Higgins wrote:
>>> Add documentation for KUnit, the Linux kernel unit testing framework.
>>> - Add intro and usage guide for KUnit
>>> - Add API reference
>>>
>>> Signed-off-by: Felix Guo <felixguoxiuping@gmail.com>
>>> Signed-off-by: Brendan Higgins <brendanhiggins@google.com>
>>> Cc: Jonathan Corbet <corbet@lwn.net>
>>> Reviewed-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
>>> Reviewed-by: Logan Gunthorpe <logang@deltatee.com>
>>> Reviewed-by: Stephen Boyd <sboyd@kernel.org>
>>> ---
>>>  Documentation/dev-tools/index.rst           |   1 +
>>>  Documentation/dev-tools/kunit/api/index.rst |  16 +
>>>  Documentation/dev-tools/kunit/api/test.rst  |  11 +
>>>  Documentation/dev-tools/kunit/faq.rst       |  62 +++
>>>  Documentation/dev-tools/kunit/index.rst     |  79 +++
>>>  Documentation/dev-tools/kunit/start.rst     | 180 ++++++
>>>  Documentation/dev-tools/kunit/usage.rst     | 576 ++++++++++++++++++++
>>>  7 files changed, 925 insertions(+)
>>>  create mode 100644 Documentation/dev-tools/kunit/api/index.rst
>>>  create mode 100644 Documentation/dev-tools/kunit/api/test.rst
>>>  create mode 100644 Documentation/dev-tools/kunit/faq.rst
>>>  create mode 100644 Documentation/dev-tools/kunit/index.rst
>>>  create mode 100644 Documentation/dev-tools/kunit/start.rst
>>>  create mode 100644 Documentation/dev-tools/kunit/usage.rst
>>
>>
>>> diff --git a/Documentation/dev-tools/kunit/start.rst b/Documentation/dev-tools/kunit/start.rst
>>> new file mode 100644
>>> index 000000000000..6dc229e46bb3
>>> --- /dev/null
>>> +++ b/Documentation/dev-tools/kunit/start.rst
>>> @@ -0,0 +1,180 @@
>>> +.. SPDX-License-Identifier: GPL-2.0
>>> +
>>> +===============
>>> +Getting Started
>>> +===============
>>> +
>>> +Installing dependencies
>>> +=======================
>>> +KUnit has the same dependencies as the Linux kernel. As long as you can build
>>> +the kernel, you can run KUnit.
>>> +
>>> +KUnit Wrapper
>>> +=============
>>> +Included with KUnit is a simple Python wrapper that helps format the output to
>>> +easily use and read KUnit output. It handles building and running the kernel, as
>>> +well as formatting the output.
>>> +
>>> +The wrapper can be run with:
>>> +
>>> +.. code-block:: bash
>>> +
>>> +   ./tools/testing/kunit/kunit.py run
>>> +
>>> +Creating a kunitconfig
>>> +======================
>>> +The Python script is a thin wrapper around Kbuild as such, it needs to be
>>
>>                                        around Kbuild. As such,
> 
> Thanks for pointing this out.
> 
>>
>>> +configured with a ``kunitconfig`` file. This file essentially contains the
>>> +regular Kernel config, with the specific test targets as well.
>>> +
>>> +.. code-block:: bash
>>> +
>>> +     git clone -b master https://kunit.googlesource.com/kunitconfig $PATH_TO_KUNITCONFIG_REPO
>>> +     cd $PATH_TO_LINUX_REPO
>>> +     ln -s $PATH_TO_KUNIT_CONFIG_REPO/kunitconfig kunitconfig
>>> +
>>> +You may want to add kunitconfig to your local gitignore.
>>> +
>>> +Verifying KUnit Works
>>> +---------------------
>>> +
>>> +To make sure that everything is set up correctly, simply invoke the Python
>>> +wrapper from your kernel repo:
>>> +
>>> +.. code-block:: bash
>>> +
>>> +     ./tools/testing/kunit/kunit.py
>>> +
>>> +.. note::
>>> +   You may want to run ``make mrproper`` first.
>>
>> I normally use O=builddir when building kernels.
>> Does this support using O=builddir ?
> 
> Yep, it supports specifying a separate build directory.
> 
>>> +
>>> +If everything worked correctly, you should see the following:
>>> +
>>> +.. code-block:: bash
>>> +
>>> +     Generating .config ...
>>> +     Building KUnit Kernel ...
>>> +     Starting KUnit Kernel ...
>>> +
>>> +followed by a list of tests that are run. All of them should be passing.
>>> +
>>> +.. note::
>>> +   Because it is building a lot of sources for the first time, the ``Building
>>> +   kunit kernel`` step may take a while.
>>> +
>>> +Writing your first test
>>> +=======================
>>
>> [snip]
>>
>>> diff --git a/Documentation/dev-tools/kunit/usage.rst b/Documentation/dev-tools/kunit/usage.rst
>>> new file mode 100644
>>> index 000000000000..c6e69634e274
>>> --- /dev/null
>>> +++ b/Documentation/dev-tools/kunit/usage.rst
>>
>> TBD...
> 
> What did you mean by this comment?

I plan to review usage.rst soon... (To Be Done :)

-- 
~Randy

  reply	other threads:[~2019-09-23 19:50 UTC|newest]

Thread overview: 47+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-09-23  9:02 [PATCH v18 00/19] kunit: introduce KUnit, the Linux kernel unit testing framework Brendan Higgins
2019-09-23  9:02 ` [PATCH v18 01/19] kunit: test: add KUnit test runner core Brendan Higgins
2019-09-23  9:02 ` [PATCH v18 02/19] kunit: test: add test resource management API Brendan Higgins
2019-09-23  9:02 ` [PATCH v18 03/19] kunit: test: add string_stream a std::stream like string builder Brendan Higgins
2019-09-23  9:02 ` [PATCH v18 04/19] kunit: test: add assertion printing library Brendan Higgins
2019-09-23  9:02 ` [PATCH v18 05/19] kunit: test: add the concept of expectations Brendan Higgins
2019-09-23  9:02 ` [PATCH v18 06/19] lib: enable building KUnit in lib/ Brendan Higgins
2019-09-23 15:35   ` Stephen Boyd
2019-09-23  9:02 ` [PATCH v18 07/19] kunit: test: add initial tests Brendan Higgins
2019-09-23  9:02 ` [PATCH v18 08/19] objtool: add kunit_try_catch_throw to the noreturn list Brendan Higgins
2019-09-23  9:02 ` [PATCH v18 09/19] kunit: test: add support for test abort Brendan Higgins
2019-09-23  9:02 ` [PATCH v18 10/19] kunit: test: add tests for kunit " Brendan Higgins
2019-09-23  9:02 ` [PATCH v18 11/19] kunit: test: add the concept of assertions Brendan Higgins
2019-09-23  9:02 ` [PATCH v18 12/19] kunit: test: add tests for KUnit managed resources Brendan Higgins
2019-09-23  9:02 ` [PATCH v18 13/19] kunit: tool: add Python wrappers for running KUnit tests Brendan Higgins
2019-09-23  9:02 ` [PATCH v18 14/19] kunit: defconfig: add defconfigs for building " Brendan Higgins
2019-09-23  9:02 ` [PATCH v18 15/19] Documentation: kunit: add documentation for KUnit Brendan Higgins
2019-09-23 15:47   ` Randy Dunlap
2019-09-23 18:06     ` Brendan Higgins
2019-09-23 19:49       ` Randy Dunlap [this message]
2019-09-23 21:18         ` shuah
2019-09-23 21:30           ` Randy Dunlap
2019-09-24  0:51   ` Randy Dunlap
2019-09-23  9:02 ` [PATCH v18 16/19] MAINTAINERS: add entry for KUnit the unit testing framework Brendan Higgins
2019-09-23  9:02 ` [PATCH v18 17/19] kernel/sysctl-test: Add null pointer test for sysctl.c:proc_dointvec() Brendan Higgins
2019-09-23  9:02 ` [PATCH v18 18/19] MAINTAINERS: add proc sysctl KUnit test to PROC SYSCTL section Brendan Higgins
2019-09-23  9:02 ` [PATCH v18 19/19] kunit: fix failure to build without printk Brendan Higgins
2019-10-04 21:38 ` [PATCH v18 00/19] kunit: introduce KUnit, the Linux kernel unit testing framework Theodore Y. Ts'o
2019-10-04 21:42   ` Linus Torvalds
2019-10-04 21:59     ` shuah
2019-10-04 22:27       ` Brendan Higgins
2019-10-04 22:47         ` shuah
2019-10-04 23:10           ` Brendan Higgins
2019-10-04 23:15             ` shuah
2019-10-04 23:29           ` Theodore Y. Ts'o
2019-10-04 23:52             ` Brendan Higgins
2019-10-04 23:57               ` shuah
2019-10-05  0:33                 ` Brendan Higgins
2019-10-05  0:49                   ` shuah
2019-10-05  1:18                     ` Brendan Higgins
2019-10-06 16:54                       ` Theodore Y. Ts'o
2019-10-06 17:18                         ` Linus Torvalds
2019-10-07  8:40                           ` Brendan Higgins
2019-10-07 14:42                             ` shuah
2019-10-07 14:40                           ` Steven Rostedt
2019-10-07 14:57                             ` shuah
2019-10-07  8:20                         ` Brendan Higgins

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=d7a61045-8fe6-a104-ece9-67b69c379425@infradead.org \
    --to=rdunlap@infradead.org \
    --cc=Alexander.Levin@microsoft.com \
    --cc=Tim.Bird@sony.com \
    --cc=amir73il@gmail.com \
    --cc=brendanhiggins@google.com \
    --cc=corbet@lwn.net \
    --cc=dan.carpenter@oracle.com \
    --cc=daniel@ffwll.ch \
    --cc=devicetree@vger.kernel.org \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=felixguoxiuping@gmail.com \
    --cc=frowand.list@gmail.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=jdike@addtoit.com \
    --cc=joel@jms.id.au \
    --cc=jpoimboe@redhat.com \
    --cc=julia.lawall@lip6.fr \
    --cc=keescook@google.com \
    --cc=khilman@baylibre.com \
    --cc=kieran.bingham@ideasonboard.com \
    --cc=knut.omang@oracle.com \
    --cc=kunit-dev@googlegroups.com \
    --cc=linux-doc@vger.kernel.org \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-kbuild@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-kselftest@vger.kernel.org \
    --cc=linux-nvdimm@lists.01.org \
    --cc=linux-um@lists.infradead.org \
    --cc=logang@deltatee.com \
    --cc=mcgrof@kernel.org \
    --cc=mpe@ellerman.id.au \
    --cc=peterz@infradead.org \
    --cc=pmladek@suse.com \
    --cc=richard@nod.at \
    --cc=rientjes@google.com \
    --cc=robh@kernel.org \
    --cc=rostedt@goodmis.org \
    --cc=sboyd@kernel.org \
    --cc=shuah@kernel.org \
    --cc=torvalds@linux-foundation.org \
    --cc=tytso@mit.edu \
    --cc=wfg@linux.intel.com \
    --cc=yamada.masahiro@socionext.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).