Как повторно использовать шаги SpecFlow из другого решения - PullRequest
0 голосов
/ 25 апреля 2018

Я новичок в SpecFlow и хочу повторно использовать шаги / тесты (по существу, файлы .feature) между решениями.Я знаю, что есть способ повторно использовать шаги между проектами в одном и том же решении, добавив ссылку на проект, но я точно не знаю, как сделать то же самое для другого решения.Спасибо за любую помощь в этом.

Ответы [ 3 ]

0 голосов
/ 26 апреля 2018

Вы не можете повторно использовать файлы .feature, но вы можете повторно использовать определения шагов и зацепки.

Вам нужно будет добавить ссылку на проект.

Вот ссылка для ссылки на проект в Visual studio: Ссылка

0 голосов
/ 02 мая 2018

Это немного анти-паттерн.Причина наличия файлов функций заключается в том, чтобы говорить о том, ЧТО делает приложение и ПОЧЕМУ это важно.Таким образом, файлы компонентов должны содержать вещи, которые являются уникальными для вашей прикладной области, и между проектами не будет большого дублирования

Когда вы пишете функции таким способом, даже общие функциональные возможности не стоят того, чтобы делиться, потому что сложность перевешиваетпростота повторения.

Например, вход в систему созрел для совместного использования между приложениями, но все, что вам нужно в функции, это

Given I am registered
When I login
Then I should be logged in

Это так просто, что проще просто написатьеще один для вашего второго приложения.

Большинство шагов, которыми люди поделились за все эти годы, связаны с тем, КАК что-то делается, например, щелкая мышью, заполняя поля и т.д.перевешивает преимущества.

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

0 голосов
/ 26 апреля 2018

Я не думаю, что можно использовать шаги из другого решения.Вам нужно будет включить их в ваше рабочее решение, чтобы использовать их.Я не думаю, что Visual Studio имеет возможность позволить вам использовать код решения, если вы не скомпилировали его и не ссылаетесь на него в своем рабочем решении.

...