Я компилирую свой код С# webdriver в Visual Studio Professional 2013
Я установил Specflow
Я получаю следующую ошибку
не удалось найти информацию схемы для элемента "specflow"
Мой файл AppConfig имеет следующие настройки:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<configSections>
<section name="specFlow" type="TechTalk.SpecFlow.Configuration.ConfigurationSectionHandler, TechTalk.SpecFlow" />
</configSections>
<specFlow>
<!-- For additional details on SpecFlow configuration options see http://go.specflow.org/doc- config -->
</specFlow>
<appSettings>
...
</appSettings>
</configuration>
Почему он жалуется, что не смог найти информацию о схеме для потока?
В моем файле определения шага, который я включил в начало класса
using NUnit.Framework;
using OpenQA.Selenium;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using TechTalk.SpecFlow;
using G.Selenium;
namespace WebdriverBdd
{
[Binding]
public class SearchSteps : SeleniumWebDriver
{
[Given(@"user is on g search page")]
public void UserIsOnGSearchPage()
{
SeleniumWebDriver selenium_driver = new SeleniumWebDriver();
}
}
Ответ 1
Примечание. Поскольку ваш раздел конфигурации specFlow пуст, вы можете просто удалить его. SpecFlow будет использовать значения по умолчанию для всех в любом случае.
Не удалось найти информацию о схеме для элемента specFlow.
Сообщение (сообщения) являются информационными. У многих конфигураций нет схем, потому что они очень простые, очень сложные или имеют параметры плагина, которые не поддерживаются.
Вы всегда можете создать XML-схему из документации или использовать XML файл в качестве примера. Чтобы создать один из примера (который, конечно же, может быть описан на примере), откройте файл XML (app.config) и выберите команду меню XML "Создать схему.
В случае App.config схема будет для всей конфигурации. Просто переустановите его до раздела конфигурации потока. Я сделал это с моим, который направляет генерацию кода для MS Test вместо NUnit. Затем я немного его раздул, создав перечисление имени unitTestProvider.
<?xml version="1.0" encoding="utf-8"?>
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="specFlow">
<xs:annotation>
<xs:documentation>
Customizes SpecFlow code generation. This unofficial schema is hand-crafted based on actual use.
For additional details on SpecFlow configuration options see http://go.specflow.org/doc-config.
Should occur zero or one times in an app.config.
</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:choice minOccurs="0" maxOccurs="1">
<xs:element name="unitTestProvider">
<xs:complexType>
<xs:attribute name="name" type="SpecFlowUnitTestProvider" use="required" />
</xs:complexType>
</xs:element>
</xs:choice>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:simpleType name="SpecFlowUnitTestProvider">
<xs:restriction base="xs:string">
<xs:enumeration value="MsTest" />
<xs:enumeration value="NUnit" />
</xs:restriction>
</xs:simpleType>
</xs:schema>