Jasmine integration for selenium.
Project description
The gocept.jasmine distribution
Jasmine integration for selenium.
Usage
You need two things to run jasmine tests with selenium:
A test app which requires your resources and jasmine test files:
class MyTestApp(gocept.jasmine.jasmine.TestApp): def need_resources(self): # Require your resources here my.package.resource.need() my.package.tests.jasmine_tests.need() @property def body(self): # HTML setup for your tests goes here return '<div id="my_container"></div>'
A TestCase with the jasmine layer:
class MyJasmineTestCase(gocept.jasmine.jasmine.TestCase): layer = gocept.jasmine.jasmine.get_layer(MyTestApp()) def test_integration(self): self.run_jasmine()
The important things here are, that the get_layer function is given your jasmine app and that the returned Layer is used on your TestCase.
In your Test, simple run run_jasmine, which will open the TestApp in your Browser. The TestApp renders your body and includes all needed resources and then runs the jasmine tests. run_jasmine will wait for these tests to finish and the report success or failure. Jasmine tracebacks and error details are visible through the selenium error handling.
Debugging
You can set the debug flag on your test case to get a pdb debugger right after the start of the jasmine tests. This lets you debug your jasmine tests within your browser:
class MyJasmineTestCase(gocept.jasmine.jasmine.TestCase): layer = gocept.jasmine.jasmine.get_layer(MyTestApp()) debug = True def test_integration(self): self.run_jasmine()
Developing gocept.jasmine
- Author:
- PyPI page:
- Issues:
- Source code:
- Current change log:
https://bitbucket.org/gocept/gocept.jasmine/raw-file/tip/CHANGES.txt
Change log for gocept.jasmine
0.4 (2014-06-06)
Make it possible to run multiple TestApps.
0.3 (2013-08-27)
Fixed a problem where the testrunner finished sucessfully before all jasmine tests finished in browser.
0.2 (2013-08-17)
Added helper function to ease test layer setup.
Made it easier to debug jasmine tests in the browser.
0.1 (2013-08-16)
initial release
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.