In a non stick skillet with a lid, heat over medium high heat until pan is hot. Add sliced mushrooms and 1/4 teaspoon kosher salt to the skillet and stir once or twice. Put the lid on the pan and let the mushrooms give off their liquid for a minute. Continue to check the mushrooms and stir every 30 seconds or so until all of their liquid has been given up and mushrooms are slightly browned. Transfer the mushrooms to a medium bowl.
If you're using fresh spinach
Add the butter to the pan and saute the fresh spinach until it just wilts. Transfer the spinach to a fine mesh sieve and press on the spinach with the back of a spoon to squeeze out all the excess liquid. Chop the spinach on a cutting board then add it to the mushrooms
If you're using frozen spinach
Place spinach in a clean dish towel and squeeze out all the liquid and add it to the mushrooms.
Toss the sun-dried tomatoes with the spinach and mushrooms, set aside.
In a medium bowl whisk together the eggs, milk, mustard powder, cayenne pepper, garlic salt, black pepper and remaining 1/2 teaspoon kosher salt. Stir in the cheeses.
Spray a 4-5 cup casserole dish with nonstick spray. Add 1/3 of the bread cubes. Sprinkle with half of the vegetable mixture. Pour 1/3 of the egg and cheese mixture over the vegetables. Top with 1/3 of the bread cubes and the remaining half of the vegetables. Top with the remaining bread and pour the rest of the egg/cheese mixture evenly over the bread.
Use your hands to press the bread lightly into the mixture to soak up the egg custard.
Top with a sprinkling of gruyere and parmesan cheese. Cover and refrigerate for 8 hours or overnight.
Take the strata out of the refrigerator half an hour before you're ready to bake. Preheat the oven to 350 degrees. Bake strata for 45-50 minutes until puffed, browned and bubbly. Let it rest for 10 minutes before serving. This recipe can be doubled.