Priority as the name suggests, is about prioritizing a bug according to its severity. Priority signifies the importance or urgency of fixing a defect. It is associated with scheduling, to resolve a bug. Priority status of a defect is initially set by a tester to a developer to indicate the importance of fixing that defect. If the priority status is high then that bug will be fixed first followed by lower prior ones.
I have written down an example to make it more clear: Consider that your Drupal website functionality is to upload films after payment and publish it for selling. Users who visit the site has the facility to view trailer and if interested can buy it. During the testing phase I came across the following issues
Issue 1: website failed to accept credit cards.
Issue 2: Order confirmation emails were not getting delivered to the consumer.
Issue 3: Submit button was observed as misaligned in one of the browsers.
Check the following classifications to know which priority was assigned to each issue and why.
Different statuses that can be given for priority are: High, Medium and Low.
High Priority defects are business critical and have to be fixed with immediate effect. Here, Issue 1 "website fails to accept credit cards" is a defect which has high impact on the revenue of the organization and so should be fixed immediately. So Issue 1 can be set as a High priority one.
Medium priority defects are those which have a moderate level of impact in business and have to be fixed in the current release itself. With respect to the above eg: Issue 2 "Order confirmation emails are not getting delivered to the consumer" should be reported as Medium priority issue.
Low priority defects are those which do not have any impact on the business and those which are cosmetic in nature. This can be pushed to the next release also. So, Issue 3 "Misalignment of submit button in a particular version of browser" should be reported as a Low priority one.
Hope the above description about the priority of bugs was helpful. Happy testing!