#nunit #specflow #specrun
#nunit #specflow #specrun
Вопрос:
Я установил следующие NuGets: Specflow.Nunit, specflow ,Specrun.Nunit вместе с NUnit 2.6.3. Я пытаюсь выполнить runtests.cmd (автоматически сгенерированный specrun.nunit), но я получаю следующую ошибку:
TechTalk.SpecRun.Framework.SpecRunException: по крайней мере, один тестовый поток прерван. —> System.Отражение.TargetInvocationException: исключение было вызвано целью вызова. —> System.MissingMethodException: метод не найден: ‘Аннулировать TechTalk.SpecRun.SpecRunner.Инициализировать ()’. Мой файл default.srprofile содержит:
<?xml version="1.0" encoding="utf-8"?>
<TestProfile xmlns="http://www.specrun.com/schemas/2011/09/TestProfile">
<Settings projectName="<PROJECTNAME>" projectId="{------}" />
<Execution stopAfterFailures="3" testThreadCount="2" testSchedulingMode="Sequential" />
<!-- For collecting by a SpecRun server update and enable the following element. For using the
collected statistics, set testSchedulingMode="Adaptive" attribute on the <Execution> element.
<Server serverUrl="http://specrunserver:6365" publishResults="true" />
-->
<TestAssemblyPaths>
<TestAssemblyPath>projectname.dll</TestAssemblyPath>
</TestAssemblyPaths>
<DeploymentTransformation>
<Steps>`enter code here`
<!-- sample config transform to change the connection string-->
<!--<ConfigFileTransformation configFile="App.config">
<Transformation>
<![CDATA[<?xml version="1.0" encoding="utf-8"?>
<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
<connectionStrings>
<add name="MyDatabase" connectionString="Data Source=.;Initial Catalog=MyDatabaseForTesting;Integrated Security=True"
xdt:Locator="Match(name)" xdt:Transform="SetAttributes(connectionString)" />
</connectionStrings>
</configuration>
]]>
</Transformation>
</ConfigFileTransformation>-->
</Steps>
</DeploymentTransformation>
</TestProfile>
Также в окне вывода VS я получаю эту ошибку :
Не удалось загрузить файл или сборку ‘TechTalk.SpecRun, Version = 1.3.0.76, Culture = neutral, PublicKeyToken = d0fc5cc18b3b389b’ или одну из его зависимостей. Система не может найти указанный файл.
Может кто-нибудь, пожалуйста, помочь мне с этим?
Комментарии:
1. Я думаю, что теги selenium и bdd здесь не нужны, никакие эксперты selenium или bdd, вероятно, не смогут помочь с этой конкретной проблемой specrun
2. Не могли бы вы опубликовать точные версии ваших пакетов NuGet и некоторые из вашего тестового кода?
3. @AndreasWillich Я смог это решить, были некоторые конфликты в версиях. Теперь я могу запускать сценарии параллельно. Можем ли мы запускать файлы компонентов параллельно? На данный момент у меня есть много файлов функций, и потоки подбирают сценарии случайным образом. Но я хочу, чтобы потоки выполняли функции параллельно. Также я использую ознакомительную версию SpecRun. Есть ли какие-либо ограничения по дням или это просто задержка, которая вводится?
4. @NRT: Почему вы хотите выполнять функции параллельно? Функция — это набор сценариев. В чем разница между параллельным запуском функции или параллельным запуском всех сценариев в ней? Ознакомительная версия полностью функциональна. Это только добавляет задержку в начале выполнения. Но лучше всего мы обсудим это на доске SpecFlow : groups.google.com/forum /#!форум/specrun
Ответ №1:
Вы бы изменили эти строки:
<RelocateConfigurationFile target="CustomConfig.{TestThreadId}.config" />
<ConfigFileTransformation configFile="App.config">
Полный ответ:
https://github.com/techtalk/SpecFlow/issues/954