From mboxrd@z Thu Jan 1 00:00:00 1970 From: erik quanstrom Date: Wed, 26 Mar 2014 12:25:05 -0400 To: 9fans@9fans.net Message-ID: In-Reply-To: References: MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Subject: Re: [9fans] Regression testing Topicbox-Message-UUID: d11b4b0a-ead8-11e9-9d60-3106f5b1d025 On Wed Mar 26 07:11:38 EDT 2014, riddler876@gmail.com wrote: > Hello, >=20 > I would also be quite interested in helping if people are embarking on = such > a project. >=20 > I'm a Computer Science student and I've been using a raspberry pi tryin= g 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 contribu= ting > 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 reaso= nable 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 su= re 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 syscall= mal for allocating things with system call lifetime. it allows one to add th= e 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, b= ecause 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 u= sual problem areas such as overflow, underflow, -0., =C2=B1=E2=88=9E, and denormals, = with all fcr (see getfcr(2)) settings, and with all architectures. or at least am= d64, rpi and something with emulated fp such as the rb. run-on sentences '=E1=B4=99' 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 pyth= on could pass some regression tests. - erik