Xpath, чтобы найти webelement внутри тега div - PullRequest
0 голосов
/ 04 мая 2020

Я хочу указать имя клиента, которое присутствует в тегах div.

Ниже приведен код HTML.

 <div class="row">
            <div class="col-md-2 dl-no-margin-bottom">
            </div>
            <div class="col-md-5 dl-no-margin-bottom">
                <label class="dl-padding-top-5">Client Name:</label>
                <br>
                <label class="dl-font-robotolight dl-font-14" id="clientName1eb0d7867">MOLOANTOA MOTAUNG</label>
            </div>
            <div class="col-md-5 dl-no-margin-bottom">
                <label class="dl-padding-top-5">Client Name at Bureau:</label>
                <br>
                <label class="dl-font-robotolight dl-font-14" id="clientName2eb0d7867">MOLOANTOA MOTAUNG</label>
            </div>
        </div>
    </div>

Я хочу подтвердить имена идентификаторов: clientName1eb0d7867 & clientName2eb0d7867. Но я не могу найти элемент с кодом ниже, где я Я не могу найти ошибку элемента.

String actual_clientname = driver.FindElement(By.Id("clientName1cb737f0d")).Text;
            String expected_clientname = "MOLOANTOA MOTAUNG";
            Assert.AreEqual(actual_clientname, expected_clientname);
            Console.WriteLine("Client Name validated successfully");
            String actual_Bureauname = driver.FindElement(By.Id("clientName2cb737f0d")).Text;
            String expected_Bureauname = "MOLOANTOA MOTAUNG";
            Assert.AreEqual(actual_Bureauname, expected_Bureauname);
            Console.WriteLine("Client Name validated successfully");

Также пробовал,

//*[@class='dl-font-robotolight dl-font-14'][@id='clientName1cb737f0d']"));

Но получаю ту же ошибку.

Как правильно это сделать? любезно предлагаю.

1 Ответ

0 голосов
/ 05 мая 2020

Когда я вижу значение типа "clientName1cb737f0d", оно обычно каждый раз запускается динамически со значением alphanumeri c "1cb737f0d"?

Если так, можете ли вы попробовать что-то подобное?

var name = driver.FindElement(By.Xpath("//label[text()='Client Name:']/following-sibling::label")).Text;

var bureau = var bureau = driver.FindElement(By.XPath("//label[text()='Client Name at Bureau:']/following-sibling::label")).Text;
...