хочу различные значки с различными сборками в C#

Требуемый элемент выглядит как динамический элемент, поэтому вам нужно вызвать WebDriverWait для требуемого ElementToBeClickable , и вы можете использовать любую из следующих стратегий локатора . в качестве решений:

  • CssSelector:

    new WebDriverWait(driver, TimeSpan.FromSeconds(20)).Until(ExpectedConditions.ElementToBeClickable(By.CssSelector("button.o365button[aria-label='Activate Search Textbox'] span:nth-child(2)"))).Click();
    
  • XPath:

    new WebDriverWait(driver, TimeSpan.FromSeconds(20)).Until(ExpectedConditions.ElementToBeClickable(By.XPath("//button[contains(@class, 'o365button') and @aria-label='Activate Search Textbox']//span[text()='Search Mail and People']"))).Click();
    

5
задан 21 October 2008 в 21:20
поделиться

3 ответа

Вы обращаетесь к значку приложения? Можно отредактировать файл проекта вручную и вставить код, подобный следующему:

<PropertyGroup>
  <ApplicationIcon Condition=" '$(Configuration)' == 'Version1' ">Icon1.ico</ApplicationIcon>
  <ApplicationIcon Condition=" '$(Configuration)' == 'Version2' ">Icon2.ico</ApplicationIcon>
</PropertyGroup>
<ItemGroup Condition=" '$(Configuration)' == 'Version1' ">
  <Content Include="Icon1.ico" />
</ItemGroup>
<ItemGroup Condition=" '$(Configuration)' == 'Version2' ">
  <Content Include="Icon2.ico" />
</ItemGroup>
4
ответ дан 14 December 2019 в 09:04
поделиться

Установите значок в нормальном коде, и необходимо смочь использовать те же методы, как Вы имеете в другом месте. Вам будут нужны оба значка в файле ресурсов (по крайней мере, таким образом, я буду подозревать), но он должен работать.

С другой стороны, установите шаг перед сборкой для копирования соответствующего значка в общее имя файла - например, копирование debug.ico или release.ico в app.ico. Немного hacky, но я думаю, что он работал бы. Тем путем Вы только заканчиваете с одним значком в законченных двоичных файлах.

Еще одна опция: изучите файл типа "build" и посмотрите, как значок встроен, затем conditionalise он. Marc Gravell сделал это для ссылок в MiscUtil - проект может быть разработан, предназначаясь или для.NET 2.0 или 3.5, в зависимости от конфигурации. Я подозреваю, что ресурсы могли быть conditionalised очень похожим способом.

1
ответ дан 14 December 2019 в 09:04
поделиться

Создайте файлы значков, названные в честь Вашей конфигурации. (Например, DebugOld.app.ico DebugBranded.app.ico, ReleaseBranded.app.ico)

Создайте шаг перед сборкой:

copy "$(ProjectDir)$(ConfigurationName).app.ico" "$(ProjectDir)app.ico"
2
ответ дан 14 December 2019 в 09:04
поделиться
Другие вопросы по тегам:

Похожие вопросы: