4 ms·
I use a GWT based application regularly which Smartclient appears to be. No thanks. As for testing with selenium it's more the point that the entire thing is s
by setquk 8y ago
I use a GWT based application regularly which Smartclient appears to be. No thanks.
As for testing with selenium it's more the point that the entire thing is stateful so the user journeys are much more difficult to program which leads to horrible test coupling as you scale the suite out.
I suppose you have to ask: Do you have 22,000+ test cases?
- jarym 8y agoThere is a gwt version but I’ve never used it. Yes in some cases we had lots of test cases. But that’s just a result of the sophistication afforded to us. Yes SPAs enable the sophistication but citing that as a weakness is like claiming that a car is worse than a horse and cart because there are more mechanical parts that can go wrong!
- setquk 8y agoWhat sophistication is this I can't do trivially without it?
- jarym 8y agoFor example - take a grid like this one: https://www.smartclient.com/smartclient/showcase/?id=gridHeaderSummary https://www.smartclient.com/smartclient/showcase/?id=gridHea... Now right-click on the grid headers and change the grouping, add a frozen column. How many unit tests is that? Now go here: https://www.smartclient.com/smartclient/showcase/?id=userDefinedHilites https://www.smartclient.com/smartclient/showcase/?id=userDef... and edit some of the hilites - again how many unit tests? Now, 90+% of websites and webapps don't need this type of function. Enterprise use cases (especially for things where users are coming off of Excel sheets and the like) absolutely need this sort of stuff.
- setquk 8y agoThis is not new. ExtJS existed a decade ago. But the performance was so bad that we threw it out of the window at evaluation time and wrote our own very light weight augmented view components which provided exactly this class of functionality. For example, we render a bog standard table, then decorate it with some javascript which can collect a composite part of the table if there's a change of state. Basically a partial page refresh. The code is tiny for this, the first hit is the view that the user wants to see with no RTT, minimal script load time (we use jquery to attach event handlers and that's it). After that we just suck the changed part of the page body down. Fancy a 50ms RTT to a page hit? We do that.
- bestest 8y agowhich jQuery version are you using? are you using ALL of jQuery, or a custom build?
- setquk 8y agojQuery 3.3. We started with 1.2. Custom build. Quite thin.
- jarym 8y agoWe had same issue with Ext. We took a separate route to solve the same problem. Hacking around with the DOM is just not fun - and back then every browser had its own set of quirks. Personally the approach you took probably required as many unit tests as an SPA unless you only had to support one browser for a very limited set of functions.