Как flipkart получает доступ к элементам dom для интеграционного тестирования? - PullRequest
0 голосов
/ 05 ноября 2018

Я только что заметил, у Flipkart есть в основном классы со случайными именами (не уверен, что они статичны или изменяются при каждой сборке) в их элементах dom, как мы получаем с помощью библиотеки styled-components.

Я просто хочу знать, как они получают доступ к элементу dom для интеграционного тестирования?

ОБНОВЛЕНО: Для доступа к элементам с использованием инфраструктуры тестирования, такой как селен, какой локатор (id, классы, xpath) они используют? enter image description here

1 Ответ

0 голосов
/ 05 ноября 2018

Случайные имена классов и другие идентификаторы элементов могут быть полезны для предотвращения неправильного использования приложения, в частности, сканирования и блокировки рекламы. Это также препятствует эффективной отладке и тестированию приложения.

Хорошей практикой является предоставление режима отладки, который приведет к определению идентификаторов. Например, идентификаторы могут быть псевдослучайными и хэшироваться с указанной солью в режиме отладки, randomize('foo') приведет к такой же строке в тестовой среде, консоли и самом приложении:

function randomize(identifier) {
  return hash(DEBUG_MODE ? getSpecifiedSalt() : getRandomSalt() + identifier);
}
...