[tkssharma/javascript-testing-world
🥼🧬🧪🔬🧫🦠All about javascript Testing using Different Libraries 2021 [Become Smart Developer] 🥼🧬🧪🔬🧫🦠…github.com](https://github.com/tkssharma/javascript-testing-world "github.com/tkssharma/javascript-testing-world")
Javascript Testing is covered by different tools and libraries from a different framework, You might have seen jest and mocha as one the most popular testing framework and chai as an assertion library
In this blog, we will talk about all different libraries and technologies involved in covering all different kind of testing like
- unit-testing
- API testing or e2e testing
- functional testing on headless browser
- manual testing/ black box testing etc tec
All these kind of testing is covered using some of the other library, simple libraries like jasmine, mocha, chai, and Sinon
In this playlist, I have a plan to cover each and every type of testing with different framework starting from unit testing using mocha and chai, further moving to jest for testing anything in javascript
Test Tools Types [LIST]
Test tools can be divided into the following functionalities. Some provide us with only one functionality, and some provide us with a combination.
const tools = [
Karma, Jasmine, Jest, TestCafe, Cypress, webdriverio,
Mocha, Jasmine, Jest, Cucumber, TestCafe, Cypress,
Sinon, Jasmine, enzyme, Jest, testdouble,
Istanbul, Jest, Blanket,
Nightwatch, Nightmare, Phantom, Puppeteer, TestCafe, Cypress
]
- To achieve the most flexible set functionality, it’s common to use a combination of several tools. Test launchers are used to launch your tests in the browser or Node.js with user-config. (
Karma, Jasmine, Jest, TestCafe, Cypress, webdriverio
) - Testing structure providers help you arrange your tests in a readable and scalable way. (
Mocha, Jasmine, Jest, Cucumber, TestCafe, Cypress
) - Assertion functions are used to check if a test returns what you expect it to return and if its’t it throws a clear exception. (
Chai, Jasmine, Jest, Unexpected, TestCafe, Cypress
) Generate and display test progress and summary. (Mocha, Jasmine, Jest, Karma, TestCafe, Cypress) - Mocks, spies, and stubs to simulate tests scenarios, isolate the tested part of the software from other parts, and attach to processes to see they work as expected. (
Sinon, Jasmine, enzyme, Jest, testdouble
) - Generate and compare snapshots to make sure changes to data structures from previous test runs are intended by the user’s code changes. (
Jest, Ava
) Generate code coverage reports of how much of your code is covered by tests. (Istanbul, Jest, Blanket
) - Browser Controllers simulate user actions for Functional Tests. (
Nightwatch, Nightmare, Phantom, Puppeteer, TestCafe, Cypress
) - Visual Regression Tools are used to compare your site to its previous versions visually by using image comparison techniques. (
Applitools, Percy, Wraith, WebdriverCSS
)
Now How can we learn all these
- i am covering playlist to cover all these in one playlist
- unit-testing using mocha, chai, assertion, and spies library
- functional testing using cypress end to end testing of a functional feature on the browser
- E2E testing is an end to end API testing for the application by making actual system calls
We will discuss testing in a different type of frameworks
- Testing with angular using karma runner
- Testing in angular using angular test library
- Testing in simple express application unit/integration using mocha and chai
- Testing in React or Vue JS Application using Jest as runner and test libraries
- Application testing using Cypress for e2e functional feature test which will run application headless browser
Libraries we are going to Use
- https://istanbul.js.org/
- https://karma-runner.github.io/2.0/index.html
- https://github.com/chaijs/chai
- http://sinonjs.org/
- https://facebook.github.io/jest/
- https://github.com/jasmine/jasmine
- https://github.com/mochajs/mocha
- https://www.cypress.io/
- https://github.com/GoogleChrome/puppeteer
Reference
[Javascript Testing 2021 | Tools and Libraries for Testing
JavaScript Unit Testing is a testing method in which JavaScript test code written for a web page or web application…tkssharma.com](https://tkssharma.com/javascript-testing-tools-and-library-2021/ "tkssharma.com/javascript-testing-tools-and-..")
[tkssharma/javascript-testing-world
🥼🧬🧪🔬🧫🦠All about javascript Testing using Different Libraries 2021 [Become Smart Developer] 🥼🧬🧪🔬🧫🦠…github.com](https://github.com/tkssharma/javascript-testing-world/tree/main/unit-testing "github.com/tkssharma/javascript-testing-wor..")
Conclusion:
To learn more check out my YouTube Playlist covering everything about testing in javascript.