(메모) CUBRID python driver test
CUBRID python driver test : https://github.com/swi0110/python_driver_test
개요
cubrid python driver를 이용해 sql 파일을 수행하고 결과가 정상적으로 출력 됐는지를 확인 함
몇가지 문제가 있지만 추후에 보완하기 위해 git hub에 올려둠 (문제는 후술)
참고 : Test 프로그램의 기능 검증(?)을 위해 활용한 *.sql 파일은 cubrid repository에 있는 cubrid-testcases의 test scenario의 일부를 사용했음
(링크 : https://github.com/CUBRID/cubrid-testcases/tree/develop/sql)
Test 수행 방법 및 수행 방식
Test.py에 있는 'tc_path'로 test scenario가 있는 dir의 경로를 설정하고, 'cubrid.connect'에 DB 접속 정보를 입력하면 기본적이 테스트 수행 가능 함
현재 test 수행 방식은 지정된 path에 있는 cases/*.sql 파일을 전부 찾아 test를 수행하며, 수행된 결과는 cases/*.result로 출력되며, answers/*.answer 파일의 내용과 diff로 비교하는 방식으로 수행 됨
환경 설정 및 확인된 문제
지원 환경 : Linux OS
필요 패키지 : Python 3
현재 확인 된 문제
1. 테스트하는 파일이 150~200개 이상이면 python driver에서 core가 발생함
2. null 값을 None으로 출력함
(이는 python의 특성으로 보여짐 타 DBMS driver에서 null을 받을 때 어떻게 처리하는지 확인할 필요가 있음)
3. collection type을 select하면 data에 '[ ](대괄호)'를 씌움
(잘못 됐다기 보단, cubrid-testcases에서 제공되는 답지와 다르게 출력 되기 때문에 fail 처리 됨)