It would be nice to have a rule that requires all test methods to have Asserts.
I don't agree...sometimes I have tests that just "assert" that no exception is thrown.
These tests do not have any explicit assert statements.
How do you check for exceptions? Assert.Throws<>(), similar to a regular assertion Assert.IsTrue(). Or you can use Assert.IsTrue(true); to ensure lack of exceptions. The rule can simply check for "Assert." in the test method implementation and cover both cases. Junior developers at my job have written tests that do Debug.WriteLine() and don't make any assertions, and I would like to prevent that in the future.
You can also ignore this rule in your particular case, like any other rules, I don't understand why someone would oppose this...
I check for absence of exceptions. For example to check if a constructor can handle null values without throwing.
Assert.DoesNotThrow was removed from v2 (was in v1) because it is pointless, the idiomatic way to "assert" for absence of exceptions is just let the test run.
Adding a pointless Assert.True or similar is quite useless IMO.