For the Sugar Network project we used Selenium UI testing. Basically you can record a standard interaction with a Firefox plugin [1].
This in turn produces scripts that can be used in a server with an embedded firefox browser. At the time, I integrated this with the Jenkins continuous integration system. I recomend Selenium for semi-automated testing, that is, from your browser. It helps to automate testing an entire workflow or use case, for instance. Helps to work in a more agile fashion. The automated bit took a while to set up but did warn us early when something broke. It would run all the tests for every git commit. Hope it helps, Sebastian [1] http://docs.seleniumhq.org/projects/ide/ El 29/03/15 a las 11:58, Adam Holt escibiĆ³: > On Sun, Mar 29, 2015 at 12:45 PM, George Hunt <georgejh...@gmail.com > <mailto:georgejh...@gmail.com>> wrote: > > I woke up thinking that a little time spent on testing automation > might be appropriate. And I'm searching for ideas. > > Tony presents a wrinkle I had not thought of: how to automate > clicking on GUI buttons. > > I can extend Tim's test script, such that it queries the target > for "server mode"(appliance, lan-contoller,gateway) and only tests > the functions that are appropriate. > > Each machine, or at least software install, can be assigned a UUID. > > The test script could output a text file in sqlite format, as well > as to the screen. > > One of the fields in the sqlite database could store the > /etc/xsce/xsce.ini file, or we could parse that file, and populate > individual fields, as appropriate. > > Sqlite is a format that is recognized by couchdb, and I think > couchdb can roll up to the cloud easily. > > Tim's cmdsrv interface seems to lend itself to automated testing > pretty well -- in that a script can send events to the > cmdsrv.socket, just like the GUI does. > > I don't know JavaScript and DOM well enough. Are there ways that > JS can click buttons in the proper sequence to test arbitrary GUI > applications? > > I liked the laptop.org <http://laptop.org> page we had which had a > matrix of services on one axis, and platforms on the other axis. > The matrix started out untested (yellow), and turned green or red > based upon test results. > > > Specifically, > http://wiki.laptop.org/go/XS_Community_Edition/0.4/Testing/Results > > Are there any other ideas? > > > Am cc'ing server-devel in case others can recommend? > > > On Sun, Mar 29, 2015 at 6:59 AM, Tim Moody <t...@timmoody.com > <mailto:t...@timmoody.com>> wrote: > > George, I'm guessing that the 'it' in 'it doesn't work' is the > install, which uses the HaitiOS script and is therefore > dependent on a particular OS and machine. The tests > themselves should work on other XOs and to a lesser extent in > other environments, except for the XO specific tests like > idmgr and ds-backup that run as olpc. > > I have added instructions for manually installing to the README. > > Tony, a number of these tests connect to a particular url on > the server and look for a known string in the result. > Probably your buttons could be tested this way. > > I'm sure there is a great deal more that needs to be added, > but I find that this test runs in about 15 seconds and tells > me if one of the things it knows about didn't get installed or > isn't running. > > Anyone can feel free to add more tests. > > -----Original Message----- > From: unleashk...@googlegroups.com > <mailto:unleashk...@googlegroups.com> > [mailto:unleashk...@googlegroups.com > <mailto:unleashk...@googlegroups.com>] On Behalf Of Tony Anderson > Sent: Saturday, March 28, 2015 11:33 PM > To: unleashk...@googlegroups.com > <mailto:unleashk...@googlegroups.com> > Subject: Re: [UKids] Enthusiasm for a Centos School Server is > wonderful > > Hi, George > > Automating tests for the school server would be wonderful but > is clearly a major project. > > Currently I test manually by clicking all the buttons to see > that I get the right response. Luckily, I don't have to deal > with the many network environments that XSCE is attempting to > support so that should make it simpler. > > However, the current content has 26 major buttons to be > tested. Some of these (e.g. Gutenberg search) would require a > succession of urls to get to the final deliverable. > > I have also added a learning management and library capability > that would require test retrievals of database records > (another 5 major buttons). > > Finally, I would need to have a test of the datastore > backup/restore, collection of results of activities into the db. > > So, the manual tests are easy but it is hard to make sure you > have completely tested a new install. > > Tony > > On 03/29/2015 06:36 AM, George Hunt wrote: > > And testing is going to be a lot rough at first. I started > using Tim's > > suggestion to build up an automated server from > > https://github.com/XSCE/xsce-tests. But when it didn't work, I > > discovered that I was using an XO1.5, and the code had been > written > > for an XO1, but the documentation didn't indicate anything > about the > > hardware platform. > > > > In any case, if you clone > https://github.com/XSCE/xsce-tests, you > > don't need to go through all the process of making a stick, and > > loading it on a XO1 using tiny core linux. The useful > scripts are in > > the /testing folder. You can use git directly on an XO to > fetch them. > > > > And then the scripts themselves will need to be modified I > think, > > based upon which server mode you are testing (appliance, > > lan-controller, or gateway). An appliance exists on an > infrastructure > > which already has gateway, dhcp, dns, etc). A lan-controller is > > sufficient to itself, and gateway is a lan-controller plus. > Obviously > > not all test are appropriate in every mode. > > > > I will be the guinea pig, and start testing my rpi2 > installation, and > > share with you all the trials and tribulations. For that > purpose I > > have created a public spread sheet, (now mostly empty) which > I will > > use to document my testing progress. I invite everyone to > contribute > > and tweak that page, and maybe collectively, we can make it > a snapshot > > of what works and doesn't. > > > > This new publicly writeable sheet (with this link) is at > > > https://docs.google.com/spreadsheets/d/18Y07kuAiHyMGJNQLydgo7GbuHShu_F > > 5BQWA3egt_1PU/edit?usp=sharing > > > > -- > Unsung Heroes of OLPC, interviewed live @ http://unleashkids.org ! > --- > You received this message because you are subscribed to the > Google Groups "Unleash Kids" group. > To unsubscribe from this group and stop receiving emails from > it, send an email to unleashkids+unsubscr...@googlegroups.com > <mailto:unleashkids%2bunsubscr...@googlegroups.com>. > For more options, visit https://groups.google.com/d/optout. > > -- > Unsung Heroes of OLPC, interviewed live @ http://unleashkids.org ! > --- > You received this message because you are subscribed to the > Google Groups "Unleash Kids" group. > To unsubscribe from this group and stop receiving emails from > it, send an email to unleashkids+unsubscr...@googlegroups.com > <mailto:unleashkids%2bunsubscr...@googlegroups.com>. > For more options, visit https://groups.google.com/d/optout. > > > -- > Unsung Heroes of OLPC, interviewed live @ http://unleashkids.org ! > --- > You received this message because you are subscribed to the Google > Groups "Unleash Kids" group. > To unsubscribe from this group and stop receiving emails from it, > send an email to unleashkids+unsubscr...@googlegroups.com > <mailto:unleashkids+unsubscr...@googlegroups.com>. > For more options, visit https://groups.google.com/d/optout. > > -- > Unsung Heroes of OLPC, interviewed live @ http://unleashkids.org ! > > -- > Unsung Heroes of OLPC, interviewed live @ http://unleashkids.org ! > --- > You received this message because you are subscribed to the Google > Groups "Unleash Kids" group. > To unsubscribe from this group and stop receiving emails from it, send > an email to unleashkids+unsubscr...@googlegroups.com > <mailto:unleashkids+unsubscr...@googlegroups.com>. > For more options, visit https://groups.google.com/d/optout.
_______________________________________________ Server-devel mailing list Server-devel@lists.laptop.org http://lists.laptop.org/listinfo/server-devel