What does `mix test --cover` do exactly?

I can see it produces a single HTML file for my module and when I open it, I see vertical bars (|) at the start of every line, except for line 13 which starts with 9..| as opposed to only a vertical bar. That line contains a defstruct statement. I have two functions at the bottom of the module which are not covered by my tests, btw. Everything else looks covered to me.

I was reading the official docs but honestly couldn’t understand what are they talking about.

So how do I read this generated file?

Excoveralls (GitHub - parroty/excoveralls: Coverage report tool for Elixir with coveralls.io integration. · GitHub) produces pretty nice reports.