Редактировать записанный элемент в Xcode UI Testing

После записи теста пользовательского интерфейса Xcode создает тестовый код с записанными значениями. В Xcode 9 некоторые из них выделены синим цветом и недоступны для редактирования:

Тестовые строки пользовательского интерфейса Xcode

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


person Chris Garrett    schedule 18.02.2018    source источник


Ответы (1)


Я нашел разумный обходной путь для этого, но если кто-нибудь знает ответ на их редактирование в Xcode, это все равно будет предпочтительнее.

В Xcode щелкните тестовый файл, удерживая нажатой клавишу CTRL, и выберите «Просмотр в Finder».

Откройте файл в своем любимом текстовом редакторе, отличном от Xcode.

UIRecording использует встроенные комментарии Swift для создания нередактируемых элементов. Они выглядят так:

let userButton = app/*@START_MENU_TOKEN@*/.buttons["User"]/*[[".otherElements[\"PasscodeScreen\"].buttons[\"User\"]",".buttons[\"User\"]"],[[[-1,1],[-1,0]]],[0]]@END_MENU_TOKEN@*/

Вы можете вручную удалить эти комментарии, и тогда они станут редактируемыми. Или, если вам нужно просто исправить текст, вы можете сделать это и здесь.

Вы также можете создать регулярное выражение в своем текстовом редакторе, которое может пройти и удалить их все, если хотите. Однако в моем случае я на самом деле предпочитаю заблокированные, потому что они дают возможность переключаться на разные элементы. Поэтому я хотел только изменить и модифицировать некоторые из них.

person Chris Garrett    schedule 19.02.2018