There is no difference. It's like saying what's the difference between a software developer and a software engineer...
I prefer not to use the term Quality Assurance, as it comes from the hardware manufacturing industry and doesn't map well to the software industry - in software, trying to "assure" the quality of something that someone else creates is like me saying I want the person next to me to assure that I I don't make any spelling mistakes today, or assure that I wear a Hawaiian shirt tomorrow... It's impossible, as you can only assure the things you are directly in control of.
I think the terms "tester", or "quality engineer", or "question asker" have become more popular than "quality assurance" due to more people realising how absurd it is to use in software.