Size: a a a

2020 December 25

DZ

Dmitry Zuev in Data Engineers
отвечаю
источник

DZ

Dmitry Zuev in Data Engineers
никак
источник

e

er@essbase.ru in Data Engineers
Andrey Bel
есть много вариантов- спарк джобы тестировать, качество данных , наполнение вообщем есть где разгуляться))
Есть ли дельная статья про это ?
источник

DZ

Dmitry Zuev in Data Engineers
какой конретный кейс?
источник

AB

Andrey Bel in Data Engineers
er@essbase.ru
Есть ли дельная статья про это ?
про тестирование спарка много инфы- например вариант чтобы у тебя датафреймы на выходе были одинаковые и тд
источник

DZ

Dmitry Zuev in Data Engineers
это путь в никуда
источник

DZ

Dmitry Zuev in Data Engineers
обычно есть какая то бизнес логика которая отцепляется от спарка
источник

AB

Andrey Bel in Data Engineers
Dmitry Zuev
это путь в никуда
я узаю кейс похожий на кейсы из веб -  у меня  спарк джоба разбита на вызовы методов и при тестировании я могу увидеть если были изменения и тест свалится
источник

DZ

Dmitry Zuev in Data Engineers
интеграциионные тесты на не смоканых сервисах?
источник

ME

Max Efremov in Data Engineers
Dmitry Zuev
обычно всех волнует как тестировать 500 строк sql
Подать на вход семплы и посмотреть выход? Ну и разбить 500 строк на 20 функций и тестировать отдельно, если spark sql
источник

ME

Max Efremov in Data Engineers
Я сейчас пытаюсь юнит тесты такого типа написать как раз, вроде такие подходы используются
источник

DZ

Dmitry Zuev in Data Engineers
sql плохо декомпозится
источник

DZ

Dmitry Zuev in Data Engineers
если можно побить то да, норм
источник

DZ

Dmitry Zuev in Data Engineers
Но подход на семплах не всегда работает, тк в семпле может не быть корнер кейса
источник

N

Nikita Blagodarnyy in Data Engineers
Dmitry Zuev
интеграциионные тесты на не смоканых сервисах?
можно на тестовых/девовых. но данных туда налить-это геморно.
источник

AB

Andrey Bel in Data Engineers
Max Efremov
Подать на вход семплы и посмотреть выход? Ну и разбить 500 строк на 20 функций и тестировать отдельно, если spark sql
ну условино
val df = run()save("testData")
def run() ={
foo1()
foo2()
foo3()}
.
testDF = run()

testDf assert  spark.read(testData)
источник

ME

Max Efremov in Data Engineers
Dmitry Zuev
Но подход на семплах не всегда работает, тк в семпле может не быть корнер кейса
Это уже качество написанного теста, всегда можно написать плохие тесты, которые учитывают 10% вариантов
источник

DZ

Dmitry Zuev in Data Engineers
Nikita Blagodarnyy
можно на тестовых/девовых. но данных туда налить-это геморно.
но если есть спека на сервис то я бы отвязал. поднимал бы дамб свой
источник

DZ

Dmitry Zuev in Data Engineers
Max Efremov
Это уже качество написанного теста, всегда можно написать плохие тесты, которые учитывают 10% вариантов
тогда что такое семпл. Если мы говорим про рандомную выборку с прода, то это работать не будет
источник

AB

Andrey Bel in Data Engineers
Dmitry Zuev
интеграциионные тесты на не смоканых сервисах?
юнит тесты
источник