The question each test answers
The HTML test asks: is the document right. The browser test asks: did the interaction work. Pick the cheaper one first, and add the other only when the question needs it.
Why the test runs on the served page
Testing the source template tests the wrong thing. The served page is what the user receives, after the app has rendered it, and it is the only fair target.