PMC QA Meeting 20100421

From ADempiere
Jump to: navigation, search
This Wiki is read-only for reference purposes to avoid broken links.

Date: 2010-04-21
Time: 8AM GMT
Venue: irc #adempiere-team
Support Spreadsheet: Adempiere PMC QA
Chat times in GMT-5


(03:10:24) CarlosRuiz: interopen: AYT?
(03:10:43) interopen: yes here, hola Carlos
(03:11:33) CarlosRuiz: Hola
(03:11:35) interopen: we can review somethings about QA
(03:11:43) CarlosRuiz: sure
(03:12:22) Michael_Judd has left the channel (quit: Quit: Ex-Chat).
(03:12:34) interopen: in last meeting we talk with Hengsin about a way we could better identify fields in webui for sahi
(03:14:28) CarlosRuiz: yep
(03:14:29) interopen: but was something to modify in webui, naming field with table+column
(03:15:08) interopen: now is only name base on the base language?
(03:16:30) CarlosRuiz: I cannot answer that  :-(
(03:16:51) CarlosRuiz: my proposal is if we can make specific the names generated by zkwebui
(03:17:11) CarlosRuiz: and I would propose that each field have an id similar to table+column
(03:17:28) CarlosRuiz: but I don't know how to do that in zkwebui or if it's feasible
(03:17:33) interopen: now there is a name text in all fields
(03:18:56) interopen: that is the name of the field base on the language you are using
(03:19:01) CarlosRuiz: hmmm - indeed in grid mode probably we need also the rec# or row#
(03:20:00) interopen: we can test also base on grid mode, but i not find the reason to use it
(03:21:00) CarlosRuiz: I see there is a label and a field
(03:21:08) CarlosRuiz: for example I open freight category window
(03:21:15) CarlosRuiz: and I have the description field
(03:22:38) CarlosRuiz: defined like this:
(03:22:38) CarlosRuiz: first the label

(03:22:38) CarlosRuiz:
<span id="z_6u_d52" class="z-label" title="Optional short description of the record" z.zcls="z-label" z.ctx="z_6u_f22" class="z-label">Description</span>

(03:22:38) CarlosRuiz: and then the textbox

(03:22:38) CarlosRuiz:
<input id="z_6u_g22" z.type="zul.vd.Txbox" class="z-textbox" style="width:100%;" title="Optional short description of the record" z.zcls="z-textbox" z.ctx="z_6u_f22" z.onOK="true" z.onChange="true" z.onFocus="true" z.onBlur="true" size="35" maxlength="255" type="text"/>

(03:23:12) CarlosRuiz: in such example, what do you mean with the name of the field?
(03:23:27) interopen: i mean the label, Description
(03:24:55) CarlosRuiz: ok - my proposal is to change the id generator (don't know if possible)
(03:24:55) CarlosRuiz: so, instead of id="z_6u_g22" (generated randomly) we have a consistent id that doesn't change on different sessions
(03:24:56) interopen: if we find this label
(03:25:25) CarlosRuiz: even better if we can have an id like id="field_m_freightcategory_description" - just an idea
(03:25:52) interopen: there is an Id_generator in ZK created for that
(03:26:26) interopen: the problem is you only can create it for one server, where you need to create test there and run also the tests there
(03:27:27) interopen: what i propose was to use the label as id together with the field order, but we have the problem that tests can only work if the same base language is use
(03:28:14) CarlosRuiz: yes, and if the "field only" is not used
(03:28:27) interopen: so there are this options, any opinion? what can be more acceptable?
(03:29:14) CarlosRuiz: for me the best would be to ensure the id generator - even if it generates strange but consistent ids
(03:29:43) CarlosRuiz: but - if you can find a solution with labels we can advance with that meanwhile the id issue is solved
(03:30:44) interopen: the id solution was here for selenium http://docs.zkoss.org/wiki/How_to_Test_ZK_Application_with_Selenium
(03:31:52) CarlosRuiz: ah, I see
(03:32:42) interopen: but there are the issues i comment before, we need to generate it for only one server and i am not totally clear, but only one user
(03:33:03) CarlosRuiz: seems easy to implement
(03:33:13) interopen: we prioritize sahi over selenium because of that
(03:34:02) interopen: yes, is only use this class DemoIdGenerator
(03:34:48) CarlosRuiz: I can try to test that, and if it works I can commit the solution
(03:34:53) interopen: Two or more people connect to same zul page: Because they have different desktop, so the same component (created in same sequence) will got same id
(03:35:27) interopen: A zul page included by another zul page: The desktop is the same, so the components in the inner page will continue the counting of Id_Num and get new ID
(03:37:25) interopen: ZK provides a hook so you can generate your own IDs. This is a great feature to be sure; however, now you're not testing the application that will be promoted into production. Also, keeping track of "special" test builds of your application increases work and complexity
(03:37:56) interopen: base on the ID_Generator solution we need to keep a special test version of Adempiere
(03:39:09) interopen: we can work on test it, but is this acceptable?
(03:40:37) CarlosRuiz: can this work with a prefix of the component?
(03:40:45) interopen: or maybe with mercurial is easy to manage?
(03:42:09) trifon: can't the id generator be included in the production?
(03:42:11) trifon: what is the isse?
(03:42:16) interopen: Selenium use the ID, and sahi use as ID : id, text label, or the index ( order)
(03:43:07) interopen: trifon:if include in production two users will access the same id screen and seems not acceptable for ZK
(03:43:27) interopen: as Zk manage the user sessions base on that ID's
(03:43:41) CarlosRuiz: sorry - I haven't understood
(03:44:10) CarlosRuiz: do you mean if opening twice the freight category window the user will have problems because the ids conflict?
(03:44:12) trifon: interopen: so this means that we can't test with multiple threads? onle one thread can test?
(03:46:01) interopen: Carlos: yes, that seems to be the problem
(03:46:45) interopen: trifon: if multiple threads maybe is not a problems as it is one by one, but if simultaneous users it can be a problem
(03:47:05) CarlosRuiz: but simultaneous users are in different browsers in different sessions
(03:47:22) trifon: interopen: by multiple threads i mean user loging with different user name and pass. but invoking at the same time the page.
(03:47:25) CarlosRuiz: the problem would be if ids of one single session collides
(03:47:28) interopen: yes, but the id is the same
(03:48:25) interopen: as i understand, with the IDGenerator you force the ids to be always the same no matter what browser you use
(03:48:32) trifon: guys i got confused. if somebody can summaryze the problem would be good.
(03:48:44) red1: shh trifon .. u shuld read first :D
(03:49:17) interopen: i am not a ZK expert, just to try to clarify what i understood when we research this problem
(03:50:04) interopen: seems that in ZK this ids are use to manage the user session, as the browser do
(03:50:23) CarlosRuiz: I would think (but not a zk expert either) that different sessions won't have problems colliding the ids
(03:50:26) interopen: if you force your application to use one single id, is like you only have one user session
(03:51:50) CarlosRuiz: maybe we're understanding different things
(03:51:52) interopen: base on the sentences i added above 16:34-16:37 they do
(03:52:52) interopen: we need to think that ZK are dynamic Ajax pages, not static html, maybe the problem is there...
(03:57:55) CarlosRuiz: ok Ivan - I'll try id generator and will send you tomorrow a comment about my findings
(03:58:25) interopen: ok, we research this option also then more in detail
(03:58:55) interopen: and try to clarify more what is the problem if create this ids with zk
(04:00:27) interopen: other we are still busy with the CI testing server, that is the milestone we want to complete now
(04:00:42) CarlosRuiz: I'm testing now id generator ...
(04:00:44) CarlosRuiz: :-)
(04:01:34) interopen: i see maybe the problem can be with the events: After including the DemoIdGenerator the ids are fine, but the web UI doesn't work anymore (e.g. no events).
(04:02:02) interopen: The core of ZK consists of an Ajax-based event-driven mechanism