Bug 1015

Summary: Нужен комплексный тест для всех компонент
Product: SELTA@Etersoft Reporter: Vitaly Lipatov <lav>
Component: Графическая утилита SeltaAssignee: Станислав Коробейников <stas>
Status: DEFERRED --- QA Contact:
Severity: normal    
Priority: P5 CC: goga, stas
Version: 1.0.3   
Target Milestone: версия 1.1.0   
Hardware: PC   
OS: Linux   
URL: http://wiki.etersoft.ru/SQLTEST
Whiteboard:
Заявки RT: Связано с:
Дата напоминания:
Bug Depends on: 2072, 3056    
Bug Blocks: 2976, 3247    

Description Vitaly Lipatov 2007-12-24 15:27:32 MSK
Нужен комплексный тест для всех компонент:
- транслятора (на основе эталонных ответов)
- функций ODBC-драйвера (на основе тестов Андрея)
- сервера (SQL-запросы) (на основе эталонных ответов сервера)
Тест должен выполняться как в консоли, так и через графику.
Comment 1 Глушков Пётр 2008-04-07 21:27:18 MSD
Виталя, можно немного конкретизировать задачу?
Данный тест должен идти в виде отдельного экзешника, или это должна быть библиотека, или просто отдельный модуль Селты?
В случае последнего, какой интерфейс общения с данным модулем должен получить пользователь?

Вообще вещь достаточно нужная. Особенно если рискнуть добавить туда возможность "повторения" сбоев в работе ODBC драйвера на основе присланных пользователями трассировок работы ODBC-администратора.
Comment 2 Vitaly Lipatov 2008-04-07 22:16:35 MSD
Я думаю, как удобнее. Я бы сделал отдельным файлом, который бы вызывался из основного, и умел бы работать, как с консолью, так и с графическим интерфейсом.
Таким образом он может иметь иную лицензию, чем Selta.exe и его вполне можно открыть, чтобы совершенствовать его всем миром.
Comment 3 Станислав Коробейников 2008-11-06 18:02:55 MSK
Итак я собираюсь сделать: 
1. Написать скрипты для создать тестовых таблиц.
2. Преобразовать имеющиеся тестовые запросы так, чтобы они возвращали данные и могли обращаться к тестовым таблицам
3. Забросить имеющиеся тестовые запросы и ожидаемые ответы на них в XML 
4. Выполнить запросы разными способами, проверить результаты. 


Постараюсь все это сделать поуниверсальней. 

Мне использовать уже какой-нибудь имеющийся парсер? Или чего-нибудь свое написать?

Мне понравился TinyXML++ http://ticpp.googlecode.com/svn/docs/ticpp.html
Лицензия zlib/libpng License
Comment 4 Станислав Коробейников 2008-11-28 13:44:47 MSK
Первый вариант тестилки готов. В sеlta, папочка testxml Пока он только берет команды из фалика xml, Просто их выполняет (sqlexecute), и все это записывает в другой xml фалик. Может заполнять таблицы rnd значениями.

Так можно узнать скорость парсера selta. Выполняя, например, запрос SELECT 1;
А так же насколько, в зависимости от кол-ва записей отличается скорость MS SQL и PG SQL. 

Надо будет сделать, что бы они выполнялись с параметрами, как в 1с. И получать данные, тоже, как в 1с. 
Comment 5 Станислав Коробейников 2008-11-28 15:34:06 MSK
надо еще собрать под linux
Comment 6 Станислав Коробейников 2008-12-16 18:06:12 MSK
Сделал так, что бы можно было получать данные, и сравнивать с эталонными. 

Набиваю для http://bugs.etersoft.ru/show_bug.cgi?id=1767 запросами с проверкой. связанных с нашими функциями. strpos, right и т.д. (те, которые добавляются при инициилизации из install.sql)
Comment 7 Станислав Коробейников 2009-04-03 15:18:56 MSD
Вернулись к задаче. 
Comment 8 Станислав Коробейников 2009-04-08 18:03:10 MSD
Сделал, что бы писала в любом случае, даже если ошибка произошла. 
Comment 9 Калюхович Юрий 2010-01-18 22:25:02 MSK
разобрал половину запросов в test.sql , отсортировал, транслируемые перенес в один каталог, нетранслируемые - в другой. завтра разберу остальные.
нужно посмотреть, в чем ошибки в нетранслируемых
Comment 10 Калюхович Юрий 2010-01-19 14:51:01 MSK
разобрал оставшуюся часть запросов в test.sql. в основном были несовпадения в регистрах имен таблиц и в наличии блокировок где нужно
Comment 11 Vitaly Lipatov 2010-02-15 11:40:57 MSK
Сформулируйте, пожалуйста, какой ожидается результат (что планируется сделать) по этой баге?
Comment 12 Калюхович Юрий 2011-04-02 14:21:13 MSK
(В ответ на comment #11)
> Сформулируйте, пожалуйста, какой ожидается результат (что планируется сделать)
> по этой баге?

баге уже много лет, действительно, что мы ожидаем получить?

тест транслятора существует и работает, ничего сложного нет в том, чтобы повесить его на gui. только зачем gui-шный тест?
тест сервера pgsql есть, но в незаконченном варианте. думаю закончить недолго, но надо написать порядочное количество запросов для него.

что за тест функций odbc? (комментарий #0)
в баге #7067 будет описано, где у нас список всех тестов - парсера, odbc, сервера, gui, тесты документации, тесты работы 1С.

к выпуску 1.1.0 видимо снова не сделаем, а к 2.0 odbc уже тестировать не надо будет