У меня есть следующий CSS (обратите внимание на элемент, который говорит мне, что это активный элемент.):
<div class=Tabs>
<div class="Tab-module" style="max-width: 400px;"><div class="Tabs-module__tab Tab-module__active">
</div>
<div class="Tab-module" style="max-width: 400px;"><div class="Tabs-module__tab" >
</div>
</div>
[FindsBy(How = How.CssSelector, Using = "[class^='main-header'] [class^='Tabs'] [class='Tab-module']")]
private IList<IWebElement> Workspaces { set; get; }
Это дает мне 2x «Tab-module».Теперь, когда я вызываю следующий код:
Workspaces.Select(thisWorkspace=>new Workspace(thisWorkspace)).ToList()
Где конструктор выглядит следующим образом:
public Workspace(ISearchContext searchContext)
{
protected By isActive = By.CssSelector("[class*='Tab-module__active']
PageFactory.InitElements(searchContext, this);
try
{
var parent = searchContext.FindElement(isActive);
}
catch
{
IsActive = false;
}
}
Я хочу быть в состоянии выяснить, если thisWorkspace *У 1012 * объекта, который я передаю, есть родственный класс - Tab-module__active .Я не могу перейти к родителю, так как это всегда будет находить родственный класс - независимо от того, какой элемент я передаю в Workspace.
Может ли кто-нибудь помочь мне в том, какой наилучший подход будет для этой ситуациикак я действительно застрял на этом.
Спасибо.