Agreed that it should be split into a helper method. In terms of selector abstractions (extracting selector names into variables), I actually have given this a lot of thought: I think that selectors should, in general, _not_ be extracted into variable names, based on the following logic:

- Adding a mapping of selectors to variables adds an extra (potentially leaky) layer of abstraction, making it harder to see exactly what the test is doing when it manipulates elements. The Clock's previous integration tests had this mapping; many of those mappings went unused, and figuring out how tests work involved going back and forth to see what selector any given variable was actually referencing.

- Selectors used in tests should be simple, generally class-or-id only; if they aren't, that's likely less stable. If they're simple, it's trivial to find-and-replace if you change a selector in the document.

- Perhaps most importantly: Changing a selector in the app is an operation that, by definition, requires searching through all files in the app's repo -- CSS, JS, and HTML files all might reference selector names, so you have to be diligent about replacing them everywhere. Similarly, if you aren't able to quickly find-and-replace references to "#myelement" in your whole project, that's a much bigger problem.