this post was submitted on 05 Dec 2023
57 points (100.0% liked)

Programming

17350 readers
339 users here now

Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!

Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.

Hope you enjoy the instance!

Rules

Rules

  • Follow the programming.dev instance rules
  • Keep content related to programming in some way
  • If you're posting long videos try to add in some form of tldr for those who don't want to watch videos

Wormhole

Follow the wormhole through a path of communities [email protected]



founded 1 year ago
MODERATORS
 

We are in a very funny situation where I just spent two weeks fixing FE bugs and there are so many left. I asked to add integration tests but the answer was “no”, cause we can’t test the UI and all of that.

So the proposed solution was to be more careful, except I’m careful but testing whole website parts or the whole website is not feasible. What can I do?

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 16 points 11 months ago

It's very hard to start writing tests for a codebase that was not tested while it was being written.

"Be more careful" is obviously just wishful thinking, but the pain apparently hasn't become bad enough for the need to better quality to have become apparent to everyone.

When people say "we can't test the UI", there's often a reason that they are reluctant. One reason can be that they think you want to test through the UI, and write slow and cumbersome end-to-end tests. Those tend to become unmaintainable at record speeds, and if you've experienced the amount of work and aggravation that can cause, you tend to become reluctant. When you ask for 'integration tests', this might be the thing people are hearing.

That being said, there's plenty of ways to test UI code locally, at the unit and component level. Depending on your tech stack, of course. Those types of tests you can just start creating without a big investment. In a codebase that's not tested, that can be difficult, but try and make the changes you need to make to isolate logic, so it can be tested as a unit test. It'll give you better code, and teach you a lot about structuring code so that you separate responsibilties.