Использование переменных в качестве селекторов с Selenium 2 Webdriver by.cssselector - PullRequest
1 голос
/ 11 апреля 2011

Я использую Visual Studio 2010 для написания автоматических тестов Selenium 2 Webdriver на C #.Я искал высокие и низкие примеры использования переменных в качестве селекторов и не нашел ничего, что, кажется, работает.Один пример, который я нашел для переменной, используемой в качестве селектора, имел переменную с префиксом $ и заключен в {}.Пример того, что я пытаюсь сделать, приведен ниже:

string surveyName = "Selenium test survey";
Driver.FindElement(By.CssSelector("tr[svd='${surveyName}']"))

Я получаю сообщение об ошибке:

OpenQA.Selenium.WebDriverException : Unexpected error. Unable to find element using     css: tr[svd='${surveyName}']

Если я «жёстко кодирую» селектор вот так:

Driver.FindElement(By.CssSelector("tr[svd='Selenium test survey']"))

находит элемент.

svd является атрибутом элемента tr.Я пытаюсь выбрать строку в таблице по значению этого атрибута.Текст будет отличаться для каждого теста и поэтому должен быть переменной.

Я пытался выразить переменную множеством разных способов, но мне не повезло, что я сделал эту работуЛюбая помощь будет высоко ценится.

Спасибо.

1 Ответ

4 голосов
/ 11 апреля 2011
string surveyName = "Selenium test survey";
Driver.FindElement(By.CssSelector(String.Format("tr[svd='{0}']", surveyName))

будет делать то, что вы хотите.Это c #, поэтому, когда требуется строка, вы можете сделать все, чтобы получить эту строку

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...