-
Notifications
You must be signed in to change notification settings - Fork 298
Tests
They should run as part of a PR and as part of the insiders build.
Launch the debug configuration Functional Tests (without VS Code, *.functional.test.ts)
Ensure you update the following environment variables accordingly:
-
VSC_PYTHON_ROLLING
(Remove theX
prefix) -
CI_PYTHON_PATH
(Remove theX
prefix, & set to fully qualified path to python interpreter -
CI_PYTHON_PATH2
(Remove theX
prefix, & set to fully qualified path to python interpreter)- This is used for 1-2 tests that require two interpreters. Both of which must have Jupyter dependencies installed.
You might end up with something like so:
That image is showing a single failure in functional test group 4 (right now tests are run in groups, each group on a separate machine)
To see what tests actually failed, go down to the 'Functional Test Group 4' output:
That shows that there was a failure in one of the Variable Explorer tests.
If the failure isn't apparent just from the stack shown, you might have to look at the log data. Log data is a little confusing though because tests are running in parallel.
There's a way to split it up by test though. Here's the steps:
- Download the raw log from the failed job
-
Use the 'logParser.py' file to list test output
python pythonFiles\vscode_datascience_helpers\tests\logParser.py <downloaded file path> --testoutput
-
In the output of the logParser, there should be an indicator of the test failure (it will be in red):
-
The test failure should have a process id next to it. In the example above this is 3703.
-
Run the logParser again, but with the
--split
argument instead of the--testoutput
argument. It will split the output into separate files based on the process id. -
Open the appropriate process id file (in this case the one ending with 3703), and use the console logs to debug the failure.
- Contribution
- Source Code Organization
- Coding Standards
- Profiling
- Coding Guidelines
- Component Governance
- Writing tests
- Kernels
- Intellisense
- Debugging
- IPyWidgets
- Extensibility
- Module Dependencies
- Errors thrown
- Jupyter API
- Variable fetching
- Import / Export
- React Webviews: Variable Viewer, Data Viewer, and Plot Viewer
- FAQ
- Kernel Crashes
- Jupyter issues in the Python Interactive Window or Notebook Editor
- Finding the code that is causing high CPU load in production
- How to install extensions from VSIX when using Remote VS Code
- How to connect to a jupyter server for running code in vscode.dev
- Jupyter Kernels and the Jupyter Extension