What is Intern?
Intern is a comprehensive testing framework designed for JavaScript and TypeScript applications, enabling developers to write tests using any preferred style such as TDD or BDD. It runs tests directly in browsers, Node.js, or across multiple browsers and platforms simultaneously through its test runner, providing full code coverage reporting to identify untested code areas.
The framework integrates seamlessly with cloud testing services like Sauce Labs, BrowserStack, and TestingBot, as well as continuous integration tools including Travis CI, Jenkins, and TeamCity. It supports true browser events for accurate user interaction emulation, native AMD support, and works with any assertion library that throws errors on failure.
Features
- Unit and Functional Testing: Supports testing in JavaScript and TypeScript with TDD, BDD, or any style
- Code Coverage Reporting: Provides full coverage analysis to identify untested code
- Cloud Testing Integration: Works with Sauce Labs, BrowserStack, TestingBot, and Selenium Grid
- Continuous Integration Support: Integrates with Travis CI, Jenkins, and TeamCity out of the box
- Parallel Test Execution: Runs tests in parallel for improved performance
- True Browser Events: Uses accurate event emulation for realistic user interaction testing
- AMD Native Support: Includes built-in support for Asynchronous Module Definition
- Customizable Interfaces: Allows writing custom test interfaces and reporters
Use Cases
- Testing JavaScript web applications across multiple browsers
- Automated testing for TypeScript projects with code coverage analysis
- Continuous integration testing in CI/CD pipelines
- Functional testing of native mobile applications
- Unit testing for Node.js server-side code
- Parallel test execution to reduce testing time in large projects
FAQs
-
What testing styles does Intern support?
Intern supports any testing style including TDD (Test-Driven Development), BDD (Behavior-Driven Development), and other custom approaches. -
Can Intern test both client-side and server-side code?
Yes, Intern can test both client-side JavaScript applications and server-side Node.js code. -
Does Intern work with different assertion libraries?
Intern works with any assertion library that throws an error on failure, providing flexibility in testing approaches. -
What continuous integration services does Intern integrate with?
Intern integrates out of the box with Travis CI, Jenkins, and TeamCity for seamless CI/CD pipeline testing. -
How does Intern handle browser event testing?
Intern uses true browser events rather than synthetic events, providing accurate emulation of real user interactions.
Related Queries
Helpful for people in the following professions
Intern Uptime Monitor
Average Uptime
100%
Average Response Time
140.27 ms