We have been practicing scrum for around 4 years now.
We have 8 scrum teams, each working on separate but related domains of a product.
We make 2 scheduled releases to our product every week(Tuesday & Thursday).
Considering the point that each team should be self-reliant to deliver stories, initially, we had a tester in each of these teams.
But we soon realized that there were some problems with this approach:
1. There was a single point of failure at the tester level. e.g: What if the tester went on an abrupt leave?