Как обработать модульное тестирование внутренних компонентов, когда сборка не подписана локально, но задержка подписана сервером сборки - PullRequest
0 голосов
/ 06 сентября 2018

У меня есть сборка, которая не подписана локально.Разработчики могут легко его построить и запустить на нем тесты, некоторые тесты выполняются для внутренних классов / методов, поэтому мы используем атрибут [assembly: InternalsVisibleTo ('my-tests-namespace')]], чтобы представить их тестам.

Все работает с использованием gitflow CI, поэтому по запросу pull сборка строится на узле jenkins.После этого сборка может быть протестирована в среде заказчика, поэтому нам необходимо строго подписать ее во время процесса.Сборка получает параметр подписи с задержкой, сертификат и т. Д., Затем сборка, тестирование, подпись и публикация.

Чтобы протестировать строго подписанную сборку, мне нужно определить свойство PublicKey в атрибуте InternalsVisibleTo.Я могу сделать это довольно легко, используя ключ sn -t и обновляя attibute.Это хорошо работает для одной сборки, но это общий конвейер, используемый несколькими сборками, некоторые имеют внутренние тесты, другие нет.Атрибут может быть в любом файле .cs, который включен в проект.

Не уверен, как решить эту проблему в общем, что не потребует никаких хлопот со стороны других разработчиков

...