Performance Problems with Safari Support in Jasmine Gem

7 views
Skip to first unread message

Chad Woolley

unread,
May 6, 2012, 1:40:08 AM5/6/12
to jasmine...@googlegroups.com
Hi,

Webdriver now has a driver for Safari.  It works fine locally, but there's some issues using it via the jasmine gem.

It uses web sockets, so js eval seems to be much slower when returning a lot of data, which happens if you have even a moderately large jasmine suite.

To be specific, the root of this slowness (as far as I've traced it) happens in Webdriver's overridden Selenium::WebDriver::Safari#raw_execute method.  It's still new, so I'm guessing there's some performance optimization that needs to be done.

In Jasmine, this is problematic in the Jasmine::SpecBuilder#load_suite_info [1] and #load_results [2] methods.

For #load_results, this seems addressable by just reducing the slice size to 5 or so.

However, for #load_suite_info it's unclear how to reduce the response size.

So, the question is, can you Jasmine devs give any guidance on how we could take a multi-request chunked approach to getting the @suites data back in #load_results?

I'm guessing this isn't possible with the current Jasmine Core implementation of suites, but not sure how to go about fixing that.

(Of course, this is just a workaround for the underlying performance issues with the Safari raw_execute performance in WebDriver, but I figure it's the easiest way to fix the problem for now.)

Thanks,
-- Chad



Rajan Agaskar

unread,
May 7, 2012, 10:31:55 AM5/7/12
to jasmine...@googlegroups.com
I think the simplest thing for now is to chunk the suites as well -- the JsApiReporter should be able to manage this task. Long term we should take a closer look at how we're getting data back and forth and reduce it if possible, my guess is that we're pretty verbose right now. 

Thanks!

Rajan

--
You received this message because you are subscribed to the Google Groups "Jasmine Dev" group.
To post to this group, send email to jasmine...@googlegroups.com.
To unsubscribe from this group, send email to jasmine-js-de...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/jasmine-js-dev?hl=en.

Reply all
Reply to author
Forward
0 new messages