Github url


by sinonjs

sinonjs /sinon

Test spies, stubs and mocks for JavaScript.

8.0K Stars 753 Forks Last release: over 2 years ago (v4.2.2) Other 3.2K Commits 168 Releases

Available items

No Items, yet!

The developer of this repository has not created any items for sale yet. Need a bug fixed? Help with integration? A different license? Create a request here:



Standalone and test framework agnostic JavaScript test spies, stubs and mocks (pronounced "sigh-non", named after Sinon, the warrior).

npm versionJoin the chat at statusSauce Test StatusCodecov statusOpenCollectiveOpenCollectivenpm downloads per monthCDNJS versionContributor Covenant

Sauce Test Status

Better docs?

Do you wish that Sinon had better documentation?

So do we!

With your support, we can improve the documentation for everyone.

  1. Donate to the campaign for better documentation
  2. Spread the word of the campaign in your companies and on social media

Thank you!


For details on compatibility and browser support, please see [



via npm

$ npm install sinon

or via sinon's browser builds available for download on the homepage. There are also npm based CDNs one can use.


See the sinon project homepage for documentation on usage.

If you have questions that are not covered by the documentation, you can [check out the


tag on Stack Overflow]( or drop by #sinon.js on

You can also search through the Sinon.JS mailing list archives.


  • No global pollution
  • Easy to use
  • Require minimal “integration”
  • Easy to embed seamlessly with any testing framework
  • Easily fake any interface
  • Ship with ready-to-use fakes for XMLHttpRequest, timers and more


See for details on how you can contribute to Sinon.JS


Support us with a monthly donation and help us continue our activities. [Become a backer]


Become a sponsor and get your logo on our README on GitHub with a link to your site. [Become a sponsor]


Sinon.js was released under BSD-3

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.