Heat the oil in a medium-sized frying pan, and add the onion, garlic, pepper and mushroom. Cook over a medium heat for 5 minutes, until the vegetables are nearly soft. Season with salt and pepper.
Meanwhile, lightly beat the eggs with the milk.
When the vegetables are fairly soft, make sure they are evenly distributed across the pan, turn the heat down fairly low, and pour over the egg mixture.
Cook over a low heat for a few minutes, then move the pan under a medium grill (broiler) for a few more minutes. Continue to alternate between the two until the eggs are cooked through.
Turn the grill down fairly low.
Spoon the tomato sauce onto the frittata, and spread it out with the back of a spoon. Add the grated mozzarella and sliced olives, and return to the grill for a couple of minutes, until the cheese has melted.
Serve topped with fresh basil.