Я пытаюсь выбрать случайные целые числа из значения, например: 1: 32 будет входом, я разделю на : и затем выберу случайное ценность. Затем Selenium выберет выпадающий список в зависимости от того, какое значение возвращается.
Мой код:
# SELECT
if register_parts[3] == "SELECT":
if register_parts[0] + '="' + register_parts[1] + '"' in self.driver.page_source:
_select_value = ""
if ":" in register_parts[2]:
_select_value = self.get_random_value_between(register_parts[2])
_select = Select(selenium_action)
_select.select_by_visible_text(_select_value)
self.write_to_debug_file("self.select_by_visible_text(" + _select_value + ") --> SELECT --> [ " + _select_value + " ]")
else:
_select_value = register_parts[2]
_select = Select(selenium_action)
_select.select_by_visible_text(_select_value)
self.write_to_debug_file("self.select_by_visible_text(" + _select_value + ") --> SELECT --> [ " + _select_value + " ]")
Дополнительная функция:
def get_random_value_between(self, input_values):
''' this function will return a random value between: x:x or 1:31 for example ... '''
parts = input_values.split(':')
return random.randrange(int(parts[0]), int(parts[1]))
Проблема в этой строке:
_select.select_by_visible_text(_select_value)
Я получаю сообщение об ошибке:
argument of type 'int' is not iterable
После прочтения я думаю проблема заключается в том, что я делаю:
if ":" in
Я могу ошибаться. Я не уверен, как это исправить. Любая помощь по этому вопросу будет принята с благодарностью. Насколько я вижу, код должен работать, но я должен что-то упустить. Я прочитал несколько веток здесь об ошибке, но она все еще не полностью исчезла.