На вопрос, как удалить текст в UITextField, во время XCUITest уже был дан ответ здесь . Если я использую простое расширение clearAndEnterText для одного из моих UITextfields, оно отлично работает на моих симуляторах и устройствах.
Теперь я пытаюсь использовать облачное тестирование с BrowserStack . Это расширение терпит неудачу там. Элемент управления возвращается из самой первой части расширения, где он пытается получить строковое значение из XCUIElement.
guard let stringValue = self.value as? String else {
print(self) # "someIdentifier" Textfield
print(self.value) # nil
return
}
print (self) возвращает текстовое поле someIdentifier, поэтому ясно, что оно фактически текстовое поле. Если это так, то почему я получаю nil в свойстве value значения XCUIElement?
У меня точно есть фокус текстового поля, потому что я могу ввести его в самом следующем предложении, но он не может очистить старый текст.