CodeTogether 4.2—Write/Run Tests for TDD and Extreme Free Usage

Brian Fernandes

September 23, 2021

Testing, One, Two, Three . . . we hope this mic is live, because this is a CodeTogether release announcement you don’t want to miss! Testing . . . is what you’re now going to be able to do, even as a guest in a session. That’s not all, you can also run remote launches, and we’ve made a number of fixes to improve your everyday coding experience. For our on-premises customers,  we’ve added an all new dashboard with enhanced metrics, and if you’re a free tier user, we’ve made a change you’re sure to appreciate – read on for the details.

Running Remote Tests

As a guest in a CodeTogether session, you can now easily run and analyze tests that exist in the shared workspace, from whichever client you’ve connected with – even the browser! If your team engages in TDD, this is a capability you’ll find invaluable.

We’ve made it intuitive to run remote tests by making these actions available where you’d normally find them in your IDE. Test runs can be initiated from the editor ruler area, context menus, dedicated views, and yes, even using your IDE’s native shortcuts.

No matter who launches a test – host or guest, the results will be displayed in your client’s test results view and in the editor ruler area. In IntelliJ hosted sessions, CodeTogether will even pick up tests that are run by Maven or Gradle build processes and ensure those are relayed to guests. Guests can see which tests have passed, failure output, and even the difference between expected and actual results, if the host IDE supports it.

In this initial release, we support JUnit and TestNG on Eclipse, and JUnit, TestNG, PHPUnit and pytest/unittest on IntelliJ and VS Code. While other frameworks may well work for IntelliJ and VS Code, these have not been extensively tested. We will continue to add support for additional frameworks – let us know which ones you’d like us to prioritize.

Remote Launches

It’s not just tests, we’ve added the ability to execute run configurations that exist on the host IDE as well. Any output from these processes will be shared with the clients, of course. You will find these in your client wherever you normally find local configurations to execute.

For more information on running tests or launches, please read our documentation.

On-Premises Stats

If you’re running CodeTogether on-premises, we now have a brand new dashboard presenting a comprehensive overview of CodeTogether use in your organization. The dashboard displays current information like the number of active sessions and users online, as well as historical graphs like the number of sessions per day, and peak concurrent sessions. It also has a menu from where different logs can easily be downloaded.

Navigate over to https://SERVERFQDN/dashboard to access the dashboard – it’s password protected to prevent unauthorized access.


So that you keep your stats between CodeTogether version updates, we recommend mounting your logs area on a stable volume that would be persisted across restarts. For more details, please read our dashboard documentation.

That’s not all – if you’d like to monitor your CodeTogether server with Prometheus, Graphite, or any other monitoring tool, we now expose everything you see in the Dashboard using StatsD.

For details on the configuration updates required for these new capabilities, please read our on-premises installation guide.

Free Tier Update

As many of you have asked, free sessions can now be upto 60 minutes long, up from the earlier 45 minute limit. This new limit, along with the ability to have 3 guests in your session, is available only to registered users, so make sure you register and log in when using CodeTogether. Registration is free, and payment details are not required. For anonymous users, sessions are limited to 45 minutes, and can have only a single guest.

Key Fixes

We’ve made dozens of fixes in this release, many specific to IntelliJ based IDEs as hosts or clients, and several general fixes as well. Please take a look at the categorized list of fixes below.

IntelliJ Client issues

  • Markers were sometimes not removed after the reported issue was fixed.
  • When connected to a session from WebStorm, if the host created a new folder, the client would go into a non responding state indefinitely.
  • Elixir syntax coloring has now been added. (fixed in 4.1.3)
  • In 2021.x, terminals opened by the host would not open on the client side. (fixed in 4.1.3)

IntelliJ Host issues

  • For sessions hosted in PHPStorm, the PHP outline would fail to load.
  • In content assist suggestions for PHP, the wrong icons would be used for methods and properties.
  • When connected using a browser, Go to Definition would jump to the last edit location instead of the intended entity.
  • On applying a change method return type quick fix, an error would be logged.

Eclipse Client issues

  • A number of ABAP objects like programs, includes, etc. were missing syntax highlighting. They will now be correctly colored.
  • With an Eclipse client, content assist logic would not bring up proposals corresponding to partial or camel case matches of text against which it was invoked. In some cases, this text was incorrectly replaced when a proposal was selected. These bugs are now fixed.

General fixes

  • When a port is shared, in some circumstances, the shared application would be accessible to guests only the first time it was accessed.
  • When connected via a browser, scrolling with the mouse wheel will now scroll the file at a much faster rate. It was frustratingly slow earlier.
  • When editing Java in Safari, you now get a complete list of content assist proposals on pressing . – previously you would see only generic proposals.
  • With a VS Code client, using an HTML5 snippet in a brand new file could result in your editor getting de-synchronized.

On-Premises

  • Logs will now be created using your server’s local timezone.
  • CodeTogether will only work over HTTPS, if you specify an insecure HTTP URL as your backend URL, the server will now fail to start and will log a corresponding message.

What’s Next?

In some situations, we realize there really is no alternative to being able to share your screen, and a few users have asked for integrated audio conferencing support. We hear your need to be heard! These features are going to be major focus areas for our upcoming releases. In line with everything we do here – exciting stuff!

To learn more about CodeTogether, read our documentation or check out our videos on YouTube. You can always chat with us live on Gitter or drop us a note on Twitter. Until next time, happy coding!

Work with a team? Start your 30 day trial of CodeTogether Teams*
*Includes up to 32 participants and unlimited session durations.

You may also like . . .

CodeTogether 5.0.1—FIXES, Fixes, fixes

CodeTogether 5.0.1—FIXES, Fixes, fixes

CodeTogether 5.0.1 is a massive maintenance release centered on the most common activity in sessions—actively coding together. As promised, we’ve made dozens of fixes and improvements to core areas like simultaneous typing and content assist to give you a more robust...

CodeTogether 5 with Audio & Video

CodeTogether 5 with Audio & Video

In CodeTogether 5, you get audio, video and screen sharing capabilities at the mere flick of a switch—a seamless extension of your ongoing session. We’ve also made several fixes to core coding functionality, in areas like code synchronization, indentation and quick...

CodeTogether 5 with Audio & Video—Sneak Peek

CodeTogether 5 with Audio & Video—Sneak Peek

Audio and video calling, text chat and screen sharing—these ultra cool features are coming to your IDE in CodeTogether 5. The release is just a couple of weeks away, but we couldn't wait any longer to tell you about the extensive communication features coming your...