It actually depends on how much does the tester know about what's under the hood?
If the tester is involved in the development and has knowledge of how to fix the issues, then why not? It would in fact save a lot of time with all the back and forth over email or whatever system there is in place to raise issues to developers and re-testing and all. This way the developers too get more time to focus on new developments and enhancements. Plus, testers have a good hands on knowledge of what's under the hood so they have also better understanding of designing tests.
Regardless of whether a tester fixes the issue themselves they need to convey information of all the changes they made to the developers and product owners so they are aware and also can help ensure the fix doesn't break something else.
On the other hand, if the testers are doing UI, UX and interface testing, they may not necessarily know what the back-end looks like, then they simply cannot fix it.
Even if testers have the knowledge of coding and can debug the issue, all they should do is find the root cause and provide all the information to the developers. The developers and then do impact analysis of a possible fix throughout the entire system which the tester may not necessarily be able to for any reason (may be lack on knowledge of the whole code base or access to it or whatever else).