How do I know an index is used for any queries? I've found a likely abandoned index in the production database. It's not included into .sqlproj from which this database it usually deployed. Most likely it was created for some experiments and then left there but I'm not sure. It's not mentioned in any WITH INDEX hints. It's not used for a PK or unique constraint. 

I want to make sure that deleting this index will not cause performance degradation. How can I do that?
Be careful - if you have usage statistics recently reset or you have an index which is so rarely used its usage statistics was cleared long ago - this solution is useless for your scenario and can cause problems.

Make use of sys.dm_db_index_usage_stats

SELECT
   OBJECT_NAME(object_id) TableName,
   (SELECT name FROM sys.indexes Indices WHERE Indices.object_id =
       IndexStats.object_id and Indices.index_id = IndexStats.index_id) IndexName,
   *
FROM sys.dm_db_index_usage_stats IndexStats;


This outputs all indices that recently done any actions to - scans, lookups, seeks and updates. This won't list indices for some idle tables which are not accessed for weeks.

With this output you can look at each index recent usage. If you see that it only has updates then it wasn't used for anything else recently. This likely indicates it can be deleted.