Blame test/TODO

Packit Service 646995
#
Packit Service 646995
# Things to do for testing
Packit Service 646995
#
Packit Service 646995
Packit Service 646995
* get current tests running
Packit Service 646995
  * this will mean replacing disktest with something
Packit Service 646995
    (like fio?)
Packit Service 646995
Packit Service 646995
  PASS -- no need to spend time getting disktest working
Packit Service 646995
  when (1) it's hard to find, and (2) it's going to be
Packit Service 646995
  replaced anyway.
Packit Service 646995
Packit Service 646995
* ensure user is root? -- easy to do
Packit Service 646995
Packit Service 646995
* have tests create their own target using targetcli and
Packit Service 646995
  a file? -- this would be much better, but would pull
Packit Service 646995
  in a requirement for targetcli-fb and friends, plus we
Packit Service 646995
  would still need a place for a decent-sized (1G?) file.
Packit Service 646995
Packit Service 646995
* have tests do discovery themselves, instead of requiring
Packit Service 646995
  that to be done already. Either way, we may still need
Packit Service 646995
  to know the IQN of our target and the host where it lives.
Packit Service 646995
Packit Service 646995
  PASS -- we still would have to know two things (IQN and
Packit Service 646995
  IP:Port). See next item.
Packit Service 646995
Packit Service 646995
* Have tests figure out the device path, so it doesn't have
Packit Service 646995
  to be passed in. Passing it in requires the called to
Packit Service 646995
  login to the remote iscsi target and look at the path
Packit Service 646995
  in /dev/disk/by-id (for example). If we created the
Packit Service 646995
  disk, we might have a better chance of guessing its name?
Packit Service 646995
Packit Service 646995
* Augment tests
Packit Service 646995
  Right now, the test is a long-ass regression test. Very
Packit Service 646995
  repetitive and time-consuming. But we also have need of
Packit Service 646995
  regular unit tests, e.g. for functionality, where a new
Packit Service 646995
  test could be added each time we find a bug? New tests
Packit Service 646995
  could include things like:
Packit Service 646995
    - multipathing
Packit Service 646995
    - using interface files or not
Packit Service 646995
    - discovery, with and without authentication
Packit Service 646995
    - session creation, w/ & w/o auth
Packit Service 646995
Packit Service 646995
* Gather actual regression data!
Packit Service 646995
  - Since we are testing all of these combinations, why not
Packit Service 646995
    keep historical data to see if there are any negative
Packit Service 646995
    trends (i.e. regressions)? Need to understand fio and bonnie++
Packit Service 646995
    output better to find a way to gather one or two datapoints
Packit Service 646995
    (max) per test, out of all the info dumped by these
Packit Service 646995
    programs.
Packit Service 646995
Packit Service 646995
* Add in test cases for Discovery and/or Connection validation,
Packit Service 646995
  which would require either a separate target set up for that,
Packit Service 646995
  or control of our own target
Packit Service 646995
Packit Service 646995
* Only allow /dev/disk/by-* paths, as /dev/sd? paths are
Packit Service 646995
  inherently problematic, since they can change names.
Packit Service 646995
Packit Service 646995
* Add back in the "big warning" from regression.sh?
Packit Service 646995
Packit Service 646995
* Add info to the README about how to run the python tests
Packit Service 646995
Packit Service 646995
* Leave the regression test around, for now? It doesn't run,
Packit Service 646995
  so maybe it should just be removed?
Packit Service 646995
Packit Service 646995
* Add in option to specify which subtests (of 16) are run
Packit Service 646995
  for each test case. Would make it much faster for testing
Packit Service 646995
  and go/no-go testing?