Waitrose had the shortest average shelf life of six UK supermarkets with 7.7 days, according to a new Which? investigation, with Tesco coming a close second