/vscode-extension-tester

ExTester: Your Essential UI Testing Companion for Visual Studio Code Extensions! Seamlessly execute UI tests with Selenium WebDriver, ensuring robustness and reliability in your extension development journey. Simplify UI testing for your VS Code extensions and elevate the quality of your user interface effortlessly.

Primary LanguageTypeScriptApache License 2.0Apache-2.0

ExTester for Visual Studio Code

ExTester ExTester Locators ExTester Page Objects License
Maximal supported version of VS Code Code styled by Prettier Main CI Insider CI


UI Testing Framework for Visual Studio Code.

FeaturesRequirementsUsageExampleDocumentationKnown Issues

ExTester: Your Essential UI Testing Companion for Visual Studio Code Extensions!
Seamlessly execute UI tests with Selenium WebDriver, ensuring robustness and reliability in your extension development journey. Simplify UI testing for your VS Code extensions and elevate the quality of your user interface effortlessly. Dive into efficient testing with ExTester today!


Features

  • ⬇️ Download a test instance of Visual Studio Code.
  • ⬇️ Download the appropriate version of ChromeDriver.
  • 📦 Pack and Install your extension into downloaded VS Code instance.
  • 🚀 Launch the VS Code instance using Selenium WebDriver.
  • 🔥 Run your tests.

Requirements

NodeJS Visual Studio Code Operating System
20.x.xLTSLatest
✅❓✅❓
❓ Best-effort
min-max
1.93.x1.94.x1.95.x
LinuxWindowsmacOS
⚠️
⚠️ Known Issues

NodeJS Support Policy

ExTester is aiming same support for NodeJS releases as Visual Studio Code and Selenium WebDriver have.

Usage

Simply install our package into your extension devDependencies to get started:

npm install --save-dev vscode-extension-tester

Make sure to check out the 🔗 Documentation for detailed instructions.

Example

For an example project, check out the Hello World Example repository, where you can find detailed setup and usage instructions.

Documentation

Our full documentation is located in 🔗 GitHub Wiki. Included are details about Page Objects API and how to setup Mocha tests information.

Issues

Something is not working properly? In that case, feel free to 🔗 open feature requests, report bugs, etc.

Get Involved

Contribution Welcomed

If you'd like to help us get better, we appreciate it! Check out our 🔗 Contribution Guide on how to do that.

Known Issues

We have prepared few answers for most common problems community reported. See 🔗 Known Issues