Heat olive oil in a large soup pot or Dutch oven over medium heat. Add the sausage and cook undisturbed for one minute. Break it apart with a wooden spoon, then continue cooking until browned, about 3-5 minutes. Drain any excess fat.
Push the cooked sausage to one side of the pot. Add diced onion and minced garlic to the empty side, cooking for 1-2 minutes until the onion becomes soft and fragrant.
Incorporate the carrots, celery, and diced tomatoes. Stir well and cook until the vegetables soften, approximately 4-5 minutes.
Mix in the basil, Italian seasoning, thyme, rosemary, tomato sauce, chicken broth, and both types of drained beans. Add ½ teaspoon each of salt and pepper, adjusting to taste.
Bring the mixture to a boil, then lower the heat to a simmer. Cover and let cook for 10-15 minutes until the vegetables are tender. If the soup thickens too much, add water in increments of one cup to reach your desired consistency.
In a separate pot, boil water and season with salt. Cook the pasta following package instructions. Drain well, toss with a small amount of olive oil, and set aside.
Once the vegetables in the soup are tender, fold in the cooked pasta and heat through.
Serve the soup hot, garnished with fresh parsley and a sprinkle of grated Parmesan cheese if desired.