LS | 6 Aug 2012 00:34
Picon

django + selenium testing with several browsers

I have a series of test cases defined using the LiveServerTestCase class provided by Django. I derive a number of classes from it, and run the tests using manage.py test as per the docs at https://docs.djangoproject.com/en/1.4/topics/testing/

This is all working fine, it starts firefox (or chrome if I change the code), but since I'm using a lot of html5 stuff in javascript (that has already broken in one browser or the other before), I'd like my tests to run on a series of browsers (at a minimum firefox and chrome, possibly several versions of each).

I'm looking for a solution that allows me to create tests as simply as now (i.e: just add methods to a class) and reuse them in each browser.

I thought about overloading DjangoTestSuiteRunner to start each browser in turn and run each test there, but there has to be a simpler way to do this, since I feel this would be a fairly common use case.

Any ideas?

--
You received this message because you are subscribed to the Google Groups "Django users" group.
To view this discussion on the web visit https://groups.google.com/d/msg/django-users/-/09kzUgfrqloJ.
To post to this group, send email to django-users <at> googlegroups.com.
To unsubscribe from this group, send email to django-users+unsubscribe <at> googlegroups.com.
For more options, visit this group at http://groups.google.com/group/django-users?hl=en.
Rafael Durán Castañeda | 7 Aug 2012 12:54
Picon

Re: django + selenium testing with several browsers

On 08/06/2012 12:34 AM, LS wrote:
> I have a series of test cases defined using the LiveServerTestCase 
> class provided by Django. I derive a number of classes from it, and 
> run the tests using manage.py test as per the docs at 
> https://docs.djangoproject.com/en/1.4/topics/testing/
>
> This is all working fine, it starts firefox (or chrome if I change the 
> code), but since I'm using a lot of html5 stuff in javascript (that 
> has already broken in one browser or the other before), I'd like my 
> tests to run on a series of browsers (at a minimum firefox and chrome, 
> possibly several versions of each).
>
> I'm looking for a solution that allows me to create tests as simply as 
> now (i.e: just add methods to a class) and reuse them in each browser.
>
> I thought about overloading DjangoTestSuiteRunner to start each 
> browser in turn and run each test there, but there has to be a simpler 
> way to do this, since I feel this would be a fairly common use case.
>
> Any ideas?
> -- 
> You received this message because you are subscribed to the Google 
> Groups "Django users" group.
> To view this discussion on the web visit 
> https://groups.google.com/d/msg/django-users/-/09kzUgfrqloJ.
> To post to this group, send email to django-users <at> googlegroups.com.
> To unsubscribe from this group, send email to 
> django-users+unsubscribe <at> googlegroups.com.
> For more options, visit this group at 
> http://groups.google.com/group/django-users?hl=en.
Hi,

I think you  just define a base class that implements all tests and 
different test suites that overrides/implements just the browser details.

Bye

--

-- 
You received this message because you are subscribed to the Google Groups "Django users" group.
To post to this group, send email to django-users <at> googlegroups.com.
To unsubscribe from this group, send email to django-users+unsubscribe <at> googlegroups.com.
For more options, visit this group at http://groups.google.com/group/django-users?hl=en.


Gmane