b1az

b1az

Would you enable ExUnit's `--trace` option in a CI environment (GitHub)? (poll)

Coworker and I are at an impasse and would appreciate the community’s vote to resolve it. :slight_smile:

Would you enable --trace option in a CI environment (GitHub)?
  • Yes, --trace option in a CI environment has its uses.
  • No, --trace option in a CI environment makes no sense.
0 voters

Elixir’s test-runner has a --trace option which does the following:

  1. it discards all of Elixir’s concurrency abilities and (slowly) runs everything sequentially, one-by-one
  2. it prints the test-names (here, here, etc.), even the passing ones. (The failed tests are, of course, always printed, even without --trace.)
  3. sets the test-timeout to :infinity. It’s tracing, so this is expected/welcome (in dev/local environment). But not desired in a CI env as it can blow up the bill/costs.

Here’re coworker and my positions:

  • Coworker’s argument for tracing is effectively the 2. above. In his words, it “gives a better visual understanding which tests are running”.
  • My position against it are that:
    • Not only are downsides of 1. and 3. not worth it, but one can also
    • just look at the test file to see which tests are running. Moreover, one shouldn’t even care about the names of the passing tests, abiding by the Rule of Silence.

First 4 of 4 Posts! Switch mode

ypconstante

ypconstante

You can use a formatter like junit_formatter to have test information without having to use --trace.

sodapopcan

sodapopcan

Some companies require you use --trace for auditing purposes. I personally think that is stupid but I’ve worked at a place where it was mandated by, I think, the investors? I dunno. Don’t @ me I’m just messenger.

garrison

garrison

Just to be clear, as the docs mention this flag only disables running tests concurrently with each other. Processes are still preempted and so on.

It sounds like the purpose of this is to debug tests which are somehow interfering with each other in a way that they should not be.

lud

lud

Yes trace is more for debugging the tests. If some company requires --trace for some reason, I would run both versions in CI, so the CI still runs with tests in concurrency that can fail and detect if something is messing with shared state.

Where Next?

Trending in Discussions Top

AstonJ
As the title says, please share what you’ve been up to with Elixir. Whether that’s been learning it, looking into it, making stuff with i...
2976 91332 914
New
f0rest8
Hi everyone :waving_hand: Posting here to showcase and announce that Metamorphic is now officially live on a public-facing domain at htt...
New
byu
@chrismccord : I just saw the Extract AGENTS.md from Phoenix.new into phx.new generator commit to the phoenix project. My initial shotgu...
New
arcanemachine
I was working on an Ecto migration and I needed a timestamp. So, for the nth time, I looked up the different data types for timestamps, a...
New
AstonJ
Just a general thread to post chat/news/info relating to AI/ML stuff that may be relevant for Nx now or in the future. Got anything to sh...
New
type1fool
I just stumbled on a newly redesigned elixir-lang.org. :tada: It looks like @Software_Mansion did the work, and I think it is generally a...
New
juhalehtonen
There has been a thread to discuss the Stack Overflow Developer Survey on this forum every year since 2018, so here’s yet another one for...
New

Other Trending Topics Top

JesseHerrick
Hey, I’m Jesse and I’m the main contributor behind Dexter, a full-featured, lightning-fast Elixir LSP optimized for large codebases. It s...
New
jimsynz
Beam Bots (or just BB for short) is a framework for building fault-tolerant robotics applications in Elixir using familiar OTP patterns. ...
New
Damirados
Hello everyone. After busy few months I am happy to announce v0.1.0 of Emerge & Solve. They are GUI (Emerge) and State management (S...
New
ausimian
Emily is an Elixir library that runs Nx computations on Apple’s MLX. Install it as the default Nx backend and Nx, defn, Axon, Nx.Serving,...
New
akoutmos
@hugobarauna and I (Alex Koutmos) have been hard at work on writing a book on Nerves that takes you from simply blinking LEDs to building...
New
zachdaniel
Introducing AshStorage! Attachment and file management that slots directly into your resources :smiling_face_with_sunglasses: I had hope...
New

We're in Beta

About us Mission Statement