11:00:56 #startmeeting Mer QA meeting 19/4/2012 11:00:56 Meeting started Thu Apr 19 11:00:56 2012 UTC. The chair is E-P. Information about MeetBot at http://wiki.merproject.org/wiki/Meetings. 11:00:56 Useful Commands: #action #agreed #help #info #idea #link #topic. 11:01:11 #topic Follow up and current status 11:01:35 The last meeting minutes are available at http://mer.bfst.de/meetings/mer-meeting/2012/mer-meeting.2012-04-12-12.01.html 11:02:09 We had two actions from the last meeting, both for me 11:03:01 I wrote up some basic stuff how the QA was done in Maemo 11:03:37 #info Maemo QA process described in http://wiki.merproject.org/wiki/Quality/Test_processes 11:04:34 #info timoph submitted first QA tools to Mer:Tools:Testing 11:04:52 no git repositories created yet 11:05:15 I can help with them if Stskeeps is busy 11:05:53 lbt: nice, we would need repositories for testrunner-lite and test-definition 11:06:03 under the mer-tools I assume? 11:06:11 makes sense 11:07:13 should we have an action about that? 11:08:26 no, doing it 11:08:48 thanks 11:08:58 http://gitweb.merproject.org/gitweb?p=mer-tools/testrunner-lite.git;a=summary 11:09:33 lbt: how we should move packages from the Mer:Tools:Testing to Mer:Tools? 11:09:42 good question 11:09:56 ideally we follow some kind of process 11:10:09 in practice we copypac them when we feel it's sensible 11:10:25 or SR 11:11:04 the SDK/Tools space is not as far forward as Core in terms of release process 11:11:27 or even patch/review 11:11:43 dcthang: http://mer.bfst.de/meetings/mer-meeting/2012/mer-meeting.2012-04-19-11.00.log.txt 11:11:44 nod, so me or timoph can create SR for those 11:11:48 yes 11:12:04 ok 11:12:16 lbt: thanks 11:12:33 and we should work as part of a Tools group to get ourselves (ie me) organised 11:13:05 #info Git repositories created for testrunner-lite and test-definition under mer-tools 11:13:26 I agree 11:14:13 is Stskeeps or timoph here? 11:14:24 they could say something about the eat-package 11:14:45 Stskeeps is having limited connectivity to internet today, not sure if he can participate to meeting 11:14:53 as far as I know, it is done and submitted to Mer:Tools:Testing 11:16:24 https://bugs.merproject.org/show_bug.cgi?id=308 11:16:59 #info Initial eat package has been submitted to Mer:Tools:Testing 11:17:24 Anything else? 11:19:20 if not then moving on 11:20:05 #topic Test package mapping 11:20:14 #info http://wiki.merproject.org/wiki/Quality/Test_processes#Test_mapping 11:20:44 we had little chat about this one yesterday 11:21:07 and I tried to add all the stuff to the wiki 11:22:00 Do we agree that we should do the mapping to a file and store the file in the git? 11:22:12 at least for now 11:22:17 This mapping is needed to create a testplan? 11:22:24 mdfe_: yes 11:22:29 :) 11:22:54 looks good to me 11:24:10 testplan is good thing 11:24:13 seems like a sensible start 11:24:15 * Stskeeps is sortof here now 11:24:43 it is a adaption from a allready working test mapping? 11:25:20 no, as far as I know 11:25:38 so we have write all from scratch? 11:25:54 the idea is that test 'planner' will then walk the dependency tree and then give a test plan? 11:26:02 so far example if glibc changes, everything will test 11:26:40 mdfe_: there's already some test cases, but proper linux tests are in demand 11:26:41 like the OBS works to calculate the rebuild tree? 11:26:48 do we want to write the package dependencies to the mapping file or can we get them ex. from OBS? 11:27:08 on the mapping side - it's important to be able to easily access the metadata about a test. Considering some of them have lots of test data I'd like some way to externalise that 11:27:34 err, sorry, was going to wait to post that , hit return by mistake 11:28:37 so what we are trying to do with this test mapping, is how to decide what to test when X,Y,Z packages change? 11:28:43 just to fit it in context 11:28:48 E-P: I think dependencies should be specified in the test, not the package 11:29:27 OBS can act as a tool to report that 11:29:35 so can any other .spec analyser 11:29:51 Stskeeps: yes 11:30:14 lbt: I meant that, if glibc changes, will the test planner get only glibc package name or list of package where the glibc is effecting? 11:30:37 Stskeeps: and we need both dependency (ie it's a useful test) and constraint (ie only runnable on device or takes 3hrs to run) 11:31:24 E-P: I'd say all packages that got rebuilt 11:32:01 lbt: ok, I would like to have it like that too 11:32:37 then the mapping file describes what tests to run, in what order and constraints? 11:33:03 or should the constrains be in the test package, in the tests.xml? 11:33:23 s/constrains/constraints 11:33:45 * Sage agrees with lbt that all package that got rebuilt 11:34:03 the tests.xml has the basic information about the test case, like domain, timeout etc 11:34:05 however, that isn't always enough, because some packages have runtime (install time) dependencies that are not causing rebuilds. 11:34:08 * Stskeeps makes a casual remark that sometimes behaviour in a lib can change while the user does not.. 11:34:17 Sage: yes, exactly 11:34:47 we need API dependency too 11:35:10 hmmp... install all packages that got rebuild and run tests to all installed packages? 11:35:21 we can define them in the mapping file? 11:35:22 well, this is perfection 11:35:55 E-P: I *think* constraints go in the XML - I could be wrong 11:35:55 i guess one of the downsides we have atm is that we don't have a sane featurezila 11:35:57 I would prefer some automatic way or otherwise there is more maintenance in test mappings. 11:35:59 if the package x changes, and it has runtime dependencies to package y, then having in the mapping file that when x package changes, run tests for y 11:36:14 zilla, as to understand what we need to test 11:36:38 E-P: not sure that's in the mapping file 11:37:33 from an entirely architectual pov, we might be going into too much specifics if we're doing something on a package level just - mapping would be an optimization? 11:37:49 to tests based on how architecture looks, let's say, 'test connectivity domain' 11:38:08 Stskeeps: I wondered if tests should be pkgconfig based 11:38:38 http://wiki.merproject.org/wiki/Architecture as a reference 11:39:25 the tests have domain and feature areas attribute, those can be used for 11:39:27 also, our first priority should be to test run-time architecture, not build-time 11:39:34 which narrows our scope a lot 11:40:02 yes 11:40:18 build-time is (only?) used to indicate which tests need running 11:40:43 I would see it like that for now 11:40:46 ie package in donnectivity domain changed - run those tests 11:41:05 right, just saying that i couldn't care less from a test pov if LaTeX fails to produce correct documentation ;) 11:41:08 just as an example 11:41:59 so at the mer level we'd do capability tests 11:42:17 at the vendor level they'd do feature/functional stuff 11:42:19 +1 for to test run-time architecture 11:43:25 also, i'm welcome to input on what i need to specify in architectual documentation in order to help QA along 11:44:04 well, to change the focus somewhat 11:44:11 what tests and specs do we have? 11:44:36 (and what do we want) 11:45:10 we have http://wiki.meego.com/Quality/TestSuite/MCTS for example 11:45:35 and http://wiki.meego.com/Quality/TestSuite/MWTS_Asset_Descriptions 11:45:54 those are good to start from 11:46:14 we also have free hands to do things right :P 11:46:19 do anyone knows the meego hudson 'fft' aka 'fast-feedback-testing' plugin? 11:46:35 I think timoph knows something about that 11:46:57 I also worked with it for some time 11:47:03 so trying wrap up some kind of conclusion 11:47:17 on top of that, we have a lot of build-time test cases for components 11:47:19 for me it was nice usefull tool 11:47:29 and sometimes test cases for runtime 11:48:13 the mapping file defines what tests to run (test packages) when package changes? 11:48:23 or when making a release 11:48:54 a release can also be seen as a delta of package changes, so it's up to us to delimit it based on it being integration instead 11:50:14 that is pretty much the same as the 'feature set' what I wrote to the wiki 11:50:20 :nod: 11:50:23 E-P: correct - the release being a collection of packages 11:51:13 realistically the main trigger for a test is a package change - possibly at the rpm level, not source level 11:51:27 right 11:51:42 the decision about what tests to run must be made by the person writing the tests 11:51:47 the next step is to define a first version of the mapping file 11:51:52 and hence that gets put in the mapping 11:52:14 but that should be a first-order thing 11:52:35 ie they should not worry about testing indirect dependencies 11:53:02 lbt: like you said, the test packages might have hundreds of tests, so in the mapping file we can specify which one to execute 11:53:30 example, using tr-lite filtering 11:53:30 OK - so mapping is done at the low level (like pkgconfig again - makes sense) 11:53:44 when we have a moment, i'd like to quickly talk about EAT as i came a bit late to meeting 11:53:48 and at some level we know which pkg provides a test 11:54:00 as a seperate matter, the decision to run the test is based on constraints 11:54:16 if tests were instant and free we'd run them all 11:54:31 Stskeeps: I will wrap this up, then we can go back to EAT 11:54:37 so that's not part of the mapping 11:54:37 ok 11:54:54 but it is used, with the mapping, to make a decision 11:55:16 what I'm not sure about is whether the constraint is written into the test 11:55:20 #info Test mapping defines what tests to run and in what order 11:55:32 not sure about order? 11:55:40 I'd say not actually 11:55:42 order can matter, we might want to sanity-check first 11:55:48 before running longer tests 11:55:54 I'd say that constraints would ... 11:55:56 lbt: mainly like top-to-down order 11:55:59 yes, +1 stsks 11:56:28 yeah - so order comes from constraint, not mapping 11:56:51 ok, feel free to info 11:57:05 #info order comes from constraint, not mapping 11:57:09 doorbell 11:57:46 #info changed package list is delivered to the 'test planner' 11:58:16 or is it better to call rebuild list 11:58:54 change is what we care about I think 11:59:06 I can take an action to define a draft from the mapping file 12:00:56 #action E-P create a mapping file draft 12:01:40 if something missing, feel free to #info 12:02:48 #info Tests need to provide constraints which are used to decide when to run them (eg need certain time, network connectivity, run on a real device etc) 12:04:23 thanks, anything else 12:04:33 quick EAT summary? 12:04:39 Stskeeps: go ahead 12:05:28 #info re-architected EAT -- to add test enablement to a device, add Mer:Tools:Devel, add eat-device in %packages and su -c 'eat-add-device-key' - root and for each of the users needing test login 12:06:01 #info logging in with EAT key, if a X session, will give you environment as inside the X session, Xauth + dbus sesssion etc 12:06:21 X session user, that is 12:06:43 sounds good 12:06:55 #info on host (sdk) you need to install eat-host and /usr/bin/eat-install-host-key to install the private EAT key 12:07:16 #info tested with testrunner-lite, testrunner-ui needs a UI part for selecting SSH private key 12:07:54 could you file a bug about that? 12:08:10 ok 12:08:32 it's a good start for starting to play with tests on our devices 12:08:48 as it's really easy to test enable a device 12:08:56 no matter the UI 12:08:57 sounds good 12:09:16 is the eat-device in the Mer:Tools:Testing?, you wrote Mer:Tools:Devel 12:09:31 yes, that's what i meant 12:09:44 nod 12:10:16 last thing 12:10:37 is it ok that we will have regular QA meeting at this time every week? 12:10:45 i'm ok with that 12:10:54 +1 12:11:10 +1 12:11:11 +1 12:11:20 could be an hour later? 12:11:25 * timoph just joined 12:11:42 * lbt is OK with that too 12:12:04 fine with me. 12:12:09 ok with me too 12:12:13 +1 12:12:16 fine for me too 12:12:24 +1 12:12:34 ok, I will add the time to wiki and post the timing to ml, so 12 UTC it will be 12:12:50 are we done? 12:12:53 #info bug 315 (testrunner-ui ssh key) 12:12:53 so E-P, you're doing mappings... is anyone doing anything on constraints? 12:12:54 cool. thanks for being flexible 12:13:41 I'd like to find some way to say which tests are run at build time in just a chroot, and which on a VM and which need a device 12:14:37 if not I'll just dig in when I get around to it :) 12:15:09 are we collectiong requirements somewhere? wiki, etc. 12:15:16 that sounded like one :) 12:15:35 close to http://wiki.merproject.org/wiki/Quality/Test_processes#Test_mapping ? 12:15:53 we could have those as task bugs 12:16:10 E-P: true. easier to track 12:16:41 lbt: could you please create a task bug? 12:16:45 ok 12:17:03 we can continue the discussion and see what could be good way of doing that 12:17:19 +later 12:17:37 *nod* 12:18:21 ok 12:18:28 I think we are done for now 12:18:40 :) 12:18:48 thanks for everyone 12:19:18 ty 12:19:28 E-P, you will send the meeting minutes? 12:19:39 should the new time be #info ? 12:19:49 oh, true 12:20:25 #info The weekly QA meeting will be on Thursdays at 12 UTC 12:20:30 now good? :) 12:20:54 I will send minutes too and notifying about the time 12:21:42 #endmeeting