Re: unit testing for fio?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Resending thread explicitly to Jens (thread may be difficult to read
because we have both top and bottom posting)...

On 7 June 2017 at 21:52, Brantley West <cbwest@xxxxxxxxx> wrote:
> @vincentfu I'm in the same boat, not familiar with the features and
> caveats of the different options to make an informed recommendation at
> present.
>
> @sitsofe I agree, I think a `make unittest` that is incorporated into
> CI would be wonderful.  Even better - if it generates a code/branch
> coverage report.  Other projects I'm involved with require unit
> testing to provide code & branch coverage for any modified code before
> being merged.  I think a similar strategy would be beneficial,
> however, I'm the least likely to be impacted by such a change in a
> process.  At Nutanix different groups use different tools for
> performance testing and validation, and it depends on who you talk to.
> I've been a heavy Vdbench user (great tool), but am at a crossroads
> where I'm reevaluating tools for a future project.  fio's open
> development process is very appealing to me.
>
> If time allows, I'll test drive a few unit testing frameworks and
> respond on thread w/ my branch.
>
> Jens, do you have any thoughts you can share?
>
> -bw
> C. Brantley West, III
> cbwest@xxxxxxxxx
>
>
> On Sat, Jun 3, 2017 at 9:29 AM, Tomohiro Kusumi
> <kusumi.tomohiro@xxxxxxxxx> wrote:
>> Hi
>>
>> 2017-06-03 16:07 GMT+03:00 Sitsofe Wheeler <sitsofe@xxxxxxxxx>:
>>> On 2 June 2017 at 20:30, Brantley West <cbwest@xxxxxxxxx> wrote:
>>>>
>>>> I'm looking to adopt fio for some storage testing in the near future
>>>> and have noticed a few issues (#377, #378) that seem to be
>>>> math-related.  Assuming these issues get fixed, it seems like unit
>>>> testing would help ensure they stay fixed.  Additionally, fio has a
>>>> lot of useful configuration options, and unit tests seem like a good
>>>> way to test for expected operation when multiple configuration
>>>> parameters are present.
>>>>
>>>> Is a unit test framework something that is worth considering for fio?
>>>> If so, are there any preferences?  It seems there are multiple options
>>>> (check, cunit, unity, etc).
>>>
>>> I think it would be useful if there was an explicit make selftest
>>> target for fio which could do more rigorous checks than my "does it
>>> run?" make test. fio has the odd adhoc test (e.g.
>>> https://github.com/axboe/fio/tree/master/unit_tests ) and now I look I
>>> spy the odd test for checking certain job files for regressions too
>>> (see https://github.com/axboe/fio/tree/master/t/jobs ). It would be
>>> nice to run these and more via CI (travis/appveyor) on commit though
>>> (assuming they finish quickly)...
>>>
>>> Some pieces of fio have been broken out into standalone programs (see
>>> some of them in https://github.com/axboe/fio/tree/master/t/ ) which
>>> might make testing for correctness easier. Perhaps Tomohiro Kusumi
>>> (who has made pieces of fio more standalone) will be able to make
>>> suggestions?
>>
>> Yes.
>> Things under os/ arch/ lib/ oslib/ are mostly stand-alone utility
>> functions now (i.e. you can include them or link to them via your
>> main()), so those are probably easy to do unit testing using cunit or
>> variants.
>>
>> Others more or less have dependencies on fio itself (and there isn't
>> anything wrong with that too), so those are not as easy, or maybe
>> depends on what you mean by unit testing.
>>
>>>
>>> Personally I've used cunit (via the libiscsi project) but I've never
>>> compared all C unit test frameworks. Further, the fio build doesn't
>>> seem to add many dependencies on other libraries (other than for I/O
>>> engines)...
>>>
>>> Way back in 2008 there was a proposal to add a "make check" to fio
>>> (http://maillist.kernel.dk/fio-devel/0584.html ) which looked like it
>>> was readily accepted but it's unclear whether something was actually
>>> produced...
>>>
>>> If you've got any pre-existing checks please post/link them!
>>>
>>> PS: Do you find fio useful at Nutanix and are there any other public
>>> I/O exercisers you folks use?

-- 
Sitsofe | http://sucs.org/~sits/
--
To unsubscribe from this list: send the line "unsubscribe fio" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Kernel]     [Linux SCSI]     [Linux IDE]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux SCSI]

  Powered by Linux