Re: save out a test database?
At the time I asked the question I just had the sense that I wanted to debug an issue by bringing up the web interface midway through my test. I attempted to do things like stop midway through the test via set_trace() and then ctrl-c, then look at the db from a runserver run that was pointing to the test database, but I find that the test database is empty, as if the data has not yet been written out to it by the test. Perhaps if I call dumpdata from the call_command as you suggest, that will get around this. Maybe I don't even need this. It just seemed nice to be able to debug a test from the web interface, but in reality, now that I am off and running writing tests, I guess I haven't ended up needing it after all ... In any case, thanks for your response. Margie On Jun 4, 5:47 am, Karen Traceywrote: > On Thu, Jun 2, 2011 at 10:04 AM, Margie Roginski > wrote: > > > Karen Tracy, if you are reading this, could you comment? > > > As the person that seems to be most knowledgable about django testing > > (your Django 1.1 Testing book is fantastic - I highly recommend it!), > > can you confirm that something like this is the best way to go? It > > seems strange to me that there is no more standard way of dumping the > > database from inside a test so that the state can be replicated for > > use in a runserver environment. > > Well, usually you want to go the other way: ensure your test run replicates > your real running environment. I'm a little unclear on why you want to save > the DB state from during a test? > > Probably easier than using serialize directly, particularly if you want the > whole DB, would be to call the dumpdata command via > call_command:https://docs.djangoproject.com/en/1.3/ref/django-admin/#running-manag... > > Karen > --http://tracey.org/kmt/ -- 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@googlegroups.com. To unsubscribe from this group, send email to django-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/django-users?hl=en.
Re: save out a test database?
On Thu, Jun 2, 2011 at 10:04 AM, Margie Roginskiwrote: > Karen Tracy, if you are reading this, could you comment? > > As the person that seems to be most knowledgable about django testing > (your Django 1.1 Testing book is fantastic - I highly recommend it!), > can you confirm that something like this is the best way to go? It > seems strange to me that there is no more standard way of dumping the > database from inside a test so that the state can be replicated for > use in a runserver environment. > > Well, usually you want to go the other way: ensure your test run replicates your real running environment. I'm a little unclear on why you want to save the DB state from during a test? Probably easier than using serialize directly, particularly if you want the whole DB, would be to call the dumpdata command via call_command: https://docs.djangoproject.com/en/1.3/ref/django-admin/#running-management-commands-from-your-code Karen -- http://tracey.org/kmt/ -- 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@googlegroups.com. To unsubscribe from this group, send email to django-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/django-users?hl=en.
Re: save out a test database?
What I've done to do this is insert a pdb.set_trace() right before the place your test fails, then in pdb do Ctrl+C to break out of the test. This leaves your test database intact at that state. Then you can change your settings to point to the test database instead of your regular one. Then you can runserver or dumpdata etc.. Good luck! - Steve Bywater -- 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@googlegroups.com. To unsubscribe from this group, send email to django-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/django-users?hl=en.
Re: save out a test database?
Karen Tracy, if you are reading this, could you comment? As the person that seems to be most knowledgable about django testing (your Django 1.1 Testing book is fantastic - I highly recommend it!), can you confirm that something like this is the best way to go? It seems strange to me that there is no more standard way of dumping the database from inside a test so that the state can be replicated for use in a runserver environment. Margie On Jun 1, 2:01 pm, Kirill Spitsinwrote: > On Wed, Jun 01, 2011 at 11:59:28AM -0700, Margie Roginski wrote: > > That's a good pointer, thanks. However I'm still confused about how I > > can actually dump out the data from my test run? For example, say I > > have a particular test and I want to dump the data at some certain > > point. I can put in pdb.set_trace() in the code to stop at the > > appropriate point, but what do I call from that point to create the > > mydata.json file that then gets loaded with the command > > > django-admin.py testserver mydata.json > >>> from django.core.serializers import serialize > >>> queryset1 = Model1.objects.filter(...) > >>> queryset2 = Model2.objects.filter(...) > >>> fixture = serialize('json', list(queryset1) + list(queryset2)) > >>> f = open('mydate.json', 'w') > >>> f.write(fixture) > >>> f.close() > > -- > Kirill Spitsin -- 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@googlegroups.com. To unsubscribe from this group, send email to django-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/django-users?hl=en.
Re: save out a test database?
On Wed, Jun 01, 2011 at 11:59:28AM -0700, Margie Roginski wrote: > That's a good pointer, thanks. However I'm still confused about how I > can actually dump out the data from my test run? For example, say I > have a particular test and I want to dump the data at some certain > point. I can put in pdb.set_trace() in the code to stop at the > appropriate point, but what do I call from that point to create the > mydata.json file that then gets loaded with the command > > django-admin.py testserver mydata.json >>> from django.core.serializers import serialize >>> queryset1 = Model1.objects.filter(...) >>> queryset2 = Model2.objects.filter(...) >>> fixture = serialize('json', list(queryset1) + list(queryset2)) >>> f = open('mydate.json', 'w') >>> f.write(fixture) >>> f.close() -- Kirill Spitsin -- 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@googlegroups.com. To unsubscribe from this group, send email to django-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/django-users?hl=en.
Re: save out a test database?
That's a good pointer, thanks. However I'm still confused about how I can actually dump out the data from my test run? For example, say I have a particular test and I want to dump the data at some certain point. I can put in pdb.set_trace() in the code to stop at the appropriate point, but what do I call from that point to create the mydata.json file that then gets loaded with the command django-admin.py testserver mydata.json Thanks! Margie On May 29, 7:28 pm, Jason Culverhouse <ja...@mischievous.org> wrote: > On May 29, 2011, at 7:13 PM, Margie Roginski <margierogin...@yahoo.com> wrote: > > > Anyone know if there is a way to save out a test database that is > > created through the django TestCase module? > > I think this gets you close: > > https://docs.djangoproject.com/en/1.2/ref/django-admin/#testserver-fi... > > django-admin.py testserver > Runs a Django development server (as in runserver) using data from the given > fixture(s). > > > > > > > > > IE, say I have a test that runs part way through. I'd like to save > > it out and then modify my settings.py to refer to the saved out test > > database and take a look at it via my web client (ie, runserver) - is > > that possible? > > > Thanks for any pointers, > > > Margie > > > -- > > 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@googlegroups.com. > > To unsubscribe from this group, send email to > > django-users+unsubscr...@googlegroups.com. > > For more options, visit this group > > athttp://groups.google.com/group/django-users?hl=en. -- 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@googlegroups.com. To unsubscribe from this group, send email to django-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/django-users?hl=en.
Re: save out a test database?
On May 29, 2011, at 7:13 PM, Margie Roginski <margierogin...@yahoo.com> wrote: > Anyone know if there is a way to save out a test database that is > created through the django TestCase module? > I think this gets you close: https://docs.djangoproject.com/en/1.2/ref/django-admin/#testserver-fixture-fixture django-admin.py testserver Runs a Django development server (as in runserver) using data from the given fixture(s). > IE, say I have a test that runs part way through. I'd like to save > it out and then modify my settings.py to refer to the saved out test > database and take a look at it via my web client (ie, runserver) - is > that possible? > > Thanks for any pointers, > > Margie > > -- > 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@googlegroups.com. > To unsubscribe from this group, send email to > django-users+unsubscr...@googlegroups.com. > For more options, visit this group at > http://groups.google.com/group/django-users?hl=en. > -- 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@googlegroups.com. To unsubscribe from this group, send email to django-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/django-users?hl=en.
save out a test database?
Anyone know if there is a way to save out a test database that is created through the django TestCase module? IE, say I have a test that runs part way through. I'd like to save it out and then modify my settings.py to refer to the saved out test database and take a look at it via my web client (ie, runserver) - is that possible? Thanks for any pointers, Margie -- 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@googlegroups.com. To unsubscribe from this group, send email to django-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/django-users?hl=en.