9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
* Re: [9fans] Regression testing
@ 2014-03-26 10:55 Pauric Ward
  2014-03-26 11:10 ` Riddler
  0 siblings, 1 reply; 4+ messages in thread
From: Pauric Ward @ 2014-03-26 10:55 UTC (permalink / raw)
  To: 9fans

[-- Attachment #1: Type: text/plain, Size: 426 bytes --]

Hi all,

If there was a push to write a regression testing suite, or at least some
rudimentary tests, I'd be interested in lending a hand.

Been working in fairly low level QA/Automation for a few years.
Seems like writing a fairly thorough for plan9 would be no trivial task,
but certainly could be interesting and valuable to get coverage of some of
the basics at least.
(sorry if this is a double post)

Pauric

[-- Attachment #2: Type: text/html, Size: 685 bytes --]

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [9fans]  Regression testing
  2014-03-26 10:55 [9fans] Regression testing Pauric Ward
@ 2014-03-26 11:10 ` Riddler
  2014-03-26 16:25   ` erik quanstrom
  0 siblings, 1 reply; 4+ messages in thread
From: Riddler @ 2014-03-26 11:10 UTC (permalink / raw)
  To: Fans of the OS Plan 9 from Bell Labs

[-- Attachment #1: Type: text/plain, Size: 883 bytes --]

Hello,

I would also be quite interested in helping if people are embarking on such
a project.

I'm a Computer Science student and I've been using a raspberry pi trying to
learn more about plan 9. Creating regression tests could be a good way for
me to poke around the system learning how it works while still contributing
something useful to the community.
On 26 Mar 2014 10:58, "Pauric Ward" <paurics@gmail.com> wrote:

> Hi all,
>
> If there was a push to write a regression testing suite, or at least some
> rudimentary tests, I'd be interested in lending a hand.
>
> Been working in fairly low level QA/Automation for a few years.
> Seems like writing a fairly thorough for plan9 would be no trivial task,
> but certainly could be interesting and valuable to get coverage of some of
> the basics at least.
> (sorry if this is a double post)
>
> Pauric
>

[-- Attachment #2: Type: text/html, Size: 1310 bytes --]

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [9fans] Regression testing
  2014-03-26 11:10 ` Riddler
@ 2014-03-26 16:25   ` erik quanstrom
  2014-03-29 13:57     ` Riddler
  0 siblings, 1 reply; 4+ messages in thread
From: erik quanstrom @ 2014-03-26 16:25 UTC (permalink / raw)
  To: 9fans

On Wed Mar 26 07:11:38 EDT 2014, riddler876@gmail.com wrote:

> Hello,
> 
> I would also be quite interested in helping if people are embarking on such
> a project.
> 
> I'm a Computer Science student and I've been using a raspberry pi trying to
> learn more about plan 9. Creating regression tests could be a good way for
> me to poke around the system learning how it works while still contributing
> something useful to the community.

i think this could be quite valuable.  at a minimum, you will learn alot.

i assume that you mean automated tests.  many things like usb behavior
on unplugging is hard to automate without some special equipment.

imo, the easiest thing to automate would be the system calls.  there
are very few of them.  i would first start by checking that they do reasonable
things with arguments in the text, heap, stack, and various forms of
invalid addresses, especially just above or just below valid addresses.

it is also pretty straightforward to test a the kernel devices to make sure
they all handle invalid file names/directory names well, deal with bad
input to control files well, etc.

(an idea that occurs to me while typing this is to have a special syscallmal
for allocating things with system call lifetime.  it allows one to add the rule
that everything syscallmal'd must be free'd on kernel exit.)

another area that might not be as easy (as you'll have to dive into some
obtuse stuff) would be floating point.  but this would be very helpful, because
it has been a long time since serious effort was put into this.
floating point should well behaved with the usual operations,
and with standard library functions (and ape, too), with respect to the usual problem
areas such as overflow, underflow,  -0., ±∞, and denormals, with all
fcr (see getfcr(2)) settings, and with all architectures.  or at least amd64,
rpi and something with emulated fp such as the rb.

run-on sentences 'ᴙ' us.

i'd be willing to give you some pointers on how to continue.  i have some
scripts that i used to iron some of the worst bugs out of fp so that python
could pass some regression tests.

- erik



^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [9fans] Regression testing
  2014-03-26 16:25   ` erik quanstrom
@ 2014-03-29 13:57     ` Riddler
  0 siblings, 0 replies; 4+ messages in thread
From: Riddler @ 2014-03-29 13:57 UTC (permalink / raw)
  To: Fans of the OS Plan 9 from Bell Labs

[-- Attachment #1: Type: text/plain, Size: 2790 bytes --]

Hello,

Yes, I am envisioning automated tests.
I've built a limited set of tests for personal projects and for a company I
worked in for a while, so I have a rough idea of where to go.
I'll certainly look into system calls, seems a sensible place to start. Any
advice or pointers you (or anyone else) has would be greatly appreciated.
Also, I would quite like to see those fp tests if you would be so kind.

On Wed, Mar 26, 2014 at 4:25 PM, erik quanstrom <quanstro@quanstro.net>wrote:

> On Wed Mar 26 07:11:38 EDT 2014, riddler876@gmail.com wrote:
>
> > Hello,
> >
> > I would also be quite interested in helping if people are embarking on
> such
> > a project.
> >
> > I'm a Computer Science student and I've been using a raspberry pi trying
> to
> > learn more about plan 9. Creating regression tests could be a good way
> for
> > me to poke around the system learning how it works while still
> contributing
> > something useful to the community.
>
> i think this could be quite valuable.  at a minimum, you will learn alot.
>
> i assume that you mean automated tests.  many things like usb behavior
> on unplugging is hard to automate without some special equipment.
>
> imo, the easiest thing to automate would be the system calls.  there
> are very few of them.  i would first start by checking that they do
> reasonable
> things with arguments in the text, heap, stack, and various forms of
> invalid addresses, especially just above or just below valid addresses.
>
> it is also pretty straightforward to test a the kernel devices to make sure
> they all handle invalid file names/directory names well, deal with bad
> input to control files well, etc.
>
> (an idea that occurs to me while typing this is to have a special
> syscallmal
> for allocating things with system call lifetime.  it allows one to add the
> rule
> that everything syscallmal'd must be free'd on kernel exit.)
>
> another area that might not be as easy (as you'll have to dive into some
> obtuse stuff) would be floating point.  but this would be very helpful,
> because
> it has been a long time since serious effort was put into this.
> floating point should well behaved with the usual operations,
> and with standard library functions (and ape, too), with respect to the
> usual problem
> areas such as overflow, underflow,  -0., ±∞, and denormals, with all
> fcr (see getfcr(2)) settings, and with all architectures.  or at least
> amd64,
> rpi and something with emulated fp such as the rb.
>
> run-on sentences 'ᴙ' us.
>
> i'd be willing to give you some pointers on how to continue.  i have some
> scripts that i used to iron some of the worst bugs out of fp so that python
> could pass some regression tests.
>
> - erik
>
>

[-- Attachment #2: Type: text/html, Size: 3449 bytes --]

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2014-03-29 13:57 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-03-26 10:55 [9fans] Regression testing Pauric Ward
2014-03-26 11:10 ` Riddler
2014-03-26 16:25   ` erik quanstrom
2014-03-29 13:57     ` Riddler

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).