Git Product home page Git Product logo

checkers_classic's Introduction

Checkers Python Unit Test Framework

This is not an official Google product.

Checkers is released under the Apache 2.0 license. See the LICENSE file for details.

Checkers is a python unit test framework for defining data-driven tests.

Contributions are not being accepted for this code as there are significant updates with non-backwards-compatible changes in the release pipeline which will bring new features to the framework. Even fundamentals such as the way tests are defined will change. Because of this, if you wish to use this package it is strongly recommended that you fork this repository. For a preview, check out google/checkers on GitHub.

Checkers builds on top of the standard python unittest module. It also includes the assertions from the python Hamcrest library.

The best documentation is the tests themselves, which are located in examples/quickstart/example#_test.py. Example 9 was depricated, however the file remains so that test results are consistent in historical tracking.

Checkers is used most-simply as follows:

  • Create a TestRun object
  • Load one or more test cases (functions with a @checkers.Test decorator and assertion statements in them)
  • Pass the test run as the argument the pyunit wrapper/integration as pyunit.main(TestRun_object)

Test suites in checkers can have overlapping test cases (two suites can contain the same test). The runner ensures that the test is only executed once if both suites are run. A TestRun can contain multiple TestSuites. See example2_test.py

Tests can be automatically discovered to some degree by module, see example3_test.py

There is some support for creating test suites from a protocol buffer, but this support will be dropped in the next version. If this is relied upon it is strongly recommended to fork this repository.

Checkers also allows the specification of startup/setup and shutdown callbacks. See example8_test.py and example11_test.py.

checkers_classic's People

Contributors

bryangl avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.