Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Testing Integration in Che #5978

Closed
slemeur opened this issue Aug 11, 2017 · 1 comment
Closed

Testing Integration in Che #5978

slemeur opened this issue Aug 11, 2017 · 1 comment
Labels
kind/epic A long-lived, PM-driven feature request. Must include a checklist of items that must be completed. lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale.

Comments

@slemeur
Copy link
Contributor

slemeur commented Aug 11, 2017

Goal

The current Eclipse Che version is providing a nice set of testing features. We have integrated JUnit, TestNG and PHPUnit. A lot of work has been done in order to provide better testing capabilities but the UX needs to be revisited to provide simpler user interactions, to make the information more readable, easier to process and better user flows. Similarly, the UI needs to be cleaned in accordance with the Che 6 overall direction.

The goal of this epic is to extend the Testing experience in order to simplify the developer experience and allow to provide more integrated testing features (in the editor and in the explorer) as well as extending the testing capabilities (with code coverage).

Linked issues and discussions

Current State

Tests Panel
screen shot 2017-08-11 at 16 04 19

The tests panel is listing all the results of the executed tests.

  • The results tree is not easy to process for the user and does not include any summary information to quickly understand the results. (example: user needs to expand a group of tests to know if there is an failure in that group)
  • There are no action in order to help the user to quick re-run the tests.
  • There is no double click or right-click action to navigate to a particular test.

Run Tests
There are two UX issues when the user wants to execute the tests.
screen shot 2017-08-11 at 16 38 12

  • Forcing the user to select which test runner to use is not convenient - the IDE should be smart enough to understand which test runner must be used to trigger for each tests. (as we are able to do when the test is open in the editor.)
  • It is tricky for the user to expect to find "Debug Test" behind a "Run Test" menu item.

Details

Test Panel

A new Tests panel will be provided.

ide 6 - test panel - iteration2 - no comment

The panel will:

  • provide a new way to format the tests results
  • display tests execution time
  • a summary view of test results
  • quick actions area
  • ability to filter the test results

Commented screen:
ide 6 - test panel - iteration2

Interactions:

  • simple click on a test will open the trace in the right-part
  • double click on a test, it will open it in the editor
  • right-click on a test will allow to get a contextual menu with "Go to test" and could be extend with "Run test" and "Debug test"
  • it will be able to not display the summary view, from the panel settings

Code Coverage

Integration with Code Coverage, when the test frameworks are supporting it.

ide 6 - test panel - code coverage

Project Explorer Integration

Simpler actions to be proposed to the user.
ide 6 - test - integration project explorer

Editor Integration

Execute from editor integration
We will provide quick actions in order to trigger the test. By hovering the different elements from the test class, it will display quick actions.
ide 6 - test - integration editor code

Display result in editor's gutter
Integrating the tests result in the editor will allow the developer to see which test are failing in his classes and make the navigation to the failure trace simple.
ide 6 - test - integration editor gutter

Phases

Initial Phase
At initial phase, we need to revamp the current test panel. We would not include the summary part and code coverage.
screen shot 2017-08-11 at 17 21 57

@slemeur slemeur added the kind/epic A long-lived, PM-driven feature request. Must include a checklist of items that must be completed. label Aug 11, 2017
@vzhukovs vzhukovs added the ide6 label Mar 21, 2019
@slemeur slemeur added target/che6 and removed ide6 labels Jul 1, 2019
@che-bot
Copy link
Contributor

che-bot commented Dec 30, 2019

Issues go stale after 180 days of inactivity. lifecycle/stale issues rot after an additional 7 days of inactivity and eventually close.

Mark the issue as fresh with /remove-lifecycle stale in a new comment.

If this issue is safe to close now please do so.

Moderators: Add lifecycle/frozen label to avoid stale mode.

@che-bot che-bot added the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Dec 30, 2019
@che-bot che-bot closed this as completed Jan 15, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/epic A long-lived, PM-driven feature request. Must include a checklist of items that must be completed. lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale.
Projects
None yet
Development

No branches or pull requests

3 participants