Skip to main content

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:

Sebastian Wehrmann <sw@gocept.com>

PyPI page:

http://pypi.python.org/pypi/gocept.jasmine/

Issues:

report by e-mail

Source code:

https://bitbucket.org/gocept/gocept.jasmine/

Current change log:

https://bitbucket.org/gocept/gocept.jasmine/raw-file/tip/CHANGES.txt

Change log for gocept.jasmine

0.5 (2014-06-10)

  • Add JS library to mock ajax calls during jasmine tests.

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.

Source Distribution

gocept.jasmine-0.5.zip (9.0 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page