If you've written the Lock statement (which does something similar the the System.Threading.Lock statement) then I can see why you'd want to test it.
In this scenario you'd need to have a _list class that you've implemented the .Add method for this class, this will be a lot easier if you're using Dependency Injection to inject an IList to set _list. You would need to use a dummy instance of the IList which implements the .Add() method.
If you have the dummy .Add() call sleep for a set period of time (say 5 seconds), you could test by, starting a thread to call the .AddItem() method, this thread will lock the .Add() call via the .AddItem() method, the main thread could then wait 3 seconds before calling the .AddItem method.
If the lock works, the second thread will be delayed 2 seconds before executing the .Add, if the lock doesn't work, it will call straight-away.
It's messy and non-deterministic so if you run enough times (millions) you'll get a false result.