|
17.09.2010, 15:34 | #1 |
Moderator
|
Проблема юнит-тестов (независимо от механизма доступа к данным), состоит в том что они, условно говоря, тестируют преобразование сферического коня в вакуууме в кубического кота в аргоне. И если сценарии тестирования и тестовые данные постановщиками не были корректно составлены, то никакие юнит-тесты тут не помогут...
А комплексное тестирование - его вообще непонятно как проводить, с условием того что система может быть настроена миллионом способов и все комбинации сценариев не протестировать даже при наличии 3-5 тысяч тестировщиков. Так что системы подобной сложности заведомо не могут быть полностью оттестированы вендорами. В случае, скажем, Excel/IE можно просто миллионам людей в мире выдать бета-версию и надеятся на то что они там потихоньку все баги найдут и зарепортят. Тестировать подобным образом Аксапту не получиться, поскольку во первых мало кто рискнет ставить бету приложения критического для бизнеса, во вторых - затраты организации на тестирование будут мягко говоря побольше чем на тестирование беты excel. Так что фактически Микрософт под видом версии x.0 без сервис-паков выпускает бету и смотрит что получится. В принципе, решение для того о чем ты пишешь было бы не в тестировании, а в организации нормальной поддержки (чтобы баги оперативно регистрировались и правились). И главное чтобы по каждому багу фидбек бы был (на какой стадии он исправления он находится и исправляется ли вообще). |
|
17.09.2010, 15:37 | #2 |
Участник
|
Цитата:
Я чувствую что мы не переспорим друг друга. Твое мнение - понял. Но останусь при своем. |
|
17.09.2010, 15:53 | #3 |
Administrator
|
Цитата:
А если МС хотя бы изнутри протестировал - он бы много багов нашел, о которых и не подозревал
__________________
Возможно сделать все. Вопрос времени |
|
17.09.2010, 15:57 | #4 |
Moderator
|
По моему это беда любых ERP. Они заведомо имеют качество ниже чем офисные пакеты, потому что бета-тестеров мало, а силами вендора не оттестировать. Хотя конечно в случае Аксапты все еще осложняется "особенностями" организации разработки, поддержки и планирования фич.
|
|
17.09.2010, 16:02 | #5 |
Administrator
|
А ничто не мешает их использовать в собственной работе. Например, для сдачи собственной же отчетности в нашу (РФ) налоговую .
Пусть у локального офиса будет своя компания, а у штаб-квартиры - своя - посмотрим как там трансляция работает . Другое дело - что у МСа АХ не единственная система (GP, SL, NAV еще есть). Но при желании - придумать как протестировать ту же АХ вполне возможно.
__________________
Возможно сделать все. Вопрос времени |
|
17.09.2010, 16:05 | #6 |
Moderator
|
Цитата:
Сообщение от sukhanchik
А ничто не мешает их использовать в собственной работе. Например, для сдачи особственной же отчетности в налоговую .
Пусть у локального офиса будет своя компания, а у штаб-квартиры - своя - посмотрим как там трансляция работает . Другое дело - что у МСа АХ не единственная система (GP, SL, NAV еще есть). Но при желании - придумать как протестировать ту же АХ вполне возможно. |
|
17.09.2010, 16:06 | #7 |
Участник
|
Цитата:
В полном соответствии со своими же рекомендациями по выбору систем. |
|
17.09.2010, 15:57 | #8 |
Ищущий знания...
|
Скажу честно, для меня новость, что Microsoft Dynamics Ax тестируется не из аксапты, а внешними какими то программами
Все равно что тестировать ладу Калину, катаясь на БМВ
__________________
"Страх перед возможностью ошибки не должен отвращать нас от поисков истины." (с) С Уважением, Елизаров Артем |
|
17.09.2010, 16:07 | #9 |
Moderator
|
Цитата:
Так что это все было достаточно очевидно, даже без той довольно скромной информации по организации тестирования, которую можно получить работая в сейловых подразделениях Microsoft.. Последний раз редактировалось fed; 17.09.2010 в 16:11. |
|
17.09.2010, 16:13 | #10 |
Участник
|
Цитата:
снова хочу обратить на первоисточник. В первоисточнике не говорилось об аспекте внутренний/внешний. В первоисточнике говорилось о разных механизмах доступа к данным. будет ли это внутренней программой (ключевое слово select, класс query на том же самом AOS, запись логов из AOS в отдельную базу как в TraceParser) или внешней программой - не важно. Важен механизм доступа (select/query - один механизм, прямой запрос/connection - другой механизм). мы говорим о механизмах доступа к тестируемым данным (как на чтение, так и на запись) механизмы доступа должны использоваться те же самые, что и у клиентов. возможно, разработчики выдерут из ядра Аксапты кусок работы с aod и данными - ради бога, пусть. возможно, разработчики даже оформят это отдельной программой с какими-то дополнительными опциями по связи с их системой тестирования - ради бога, пусть. но чего ни в коем случае не должны делать разработчики - придумывать совсем другой механизм доступа к данным! |
|
19.09.2010, 17:31 | #11 |
Участник
|
К слову - в Майкрософт работает несколько проектов, которые устанавливают АХ для внутреннего использования. Не уверен, публичная ли информация - конкретные подразделения, ее использующие, - поэтому больше ничего не скажу.
|
|
|
За это сообщение автора поблагодарили: sukhanchik (2). |
17.09.2010, 15:39 | #12 |
NavAx
|
Подпишусь под каждым словом Mazzy.
От себя добавлю: MS, конечно, тоже можно понять - разработчики не под Ax стоят заметно дешевле, и, в общем-то, разработка модуля тестирования который никому не продашь, сложно обосновывается в свете необходимости. (разве что в кач-ве доп. маркетингового аргумента, но те, кто принимает решения, обычно в разработке ПО особо не разбираются). Так что приходится забивать гвозди микроскопом и брать обыкновенных Шарперов среднего звена. Про застрявшую в середине 200х IDE и нехватку инструментальных средств я тоже промолчу. Недавно видел среду, используемую нашим Web-разработчиком - только позавидовал (Comodo кажется, что ли). Именно нехватка этих средств и приводит к тому, что решения тестируются по-старинке, вручную. К слову, при использовании внешнего консалтинга, мало кто хочет платить лишние деньги за какое-то ни было автоматизированное тестирование, подготовку и поддержание актуальности тестовых наборов. Вот и получается, что внешнего спроса нет, внутренняя потребность MS удовлетворяется другими путями, результат - налицо.
__________________
Жизнь прекрасна! Если, конечно, правильно подобрать антидепрессанты... |
|
17.09.2010, 15:48 | #13 |
Участник
|
еще раз проапдейтил свое сообщение: Выборка данных через AOS vs SQL Server
в общем, на мой взгляд, нельзя использовать прямой доступ для задачи "для валидации корректной работы приложения после выполнения заданного сценария". "такой хоккей нам не нужен". |
|
17.09.2010, 15:51 | #14 |
Модератор
|
Коллеги, расслабьтесь. Даже есть все будет протестированно, после накатывания _сами понимаете чего_ все надо будет тестировать заного
А так - тестируйте в той же системе, что и разрабатываете. И предоставлете скрипты и тулзы в открытом виде. Если нечего бояться - пусть патрнеры / клиенты тоже потестируют. Оборудование подберут. И сил меньше потратят, панируюя, настраивая и выполняя тестирование и бенчмаркинг. Да, спасибо, что подняли тему. Надеюсь, наши аргументы будут услышаны. С Уважением, Георгий |
|
17.09.2010, 15:58 | #15 |
Administrator
|
Цитата:
Кстати - если что - то исправление _сами понимаем чего_ может быть более оперативно реализовано, нежели фундаментального кода.
__________________
Возможно сделать все. Вопрос времени |
|
17.09.2010, 16:05 | #16 |
Участник
|
Не зна-а-а-аю... За DirParty* и PrintMgmtSetup* просто убить готов... Руки кодерам/постановщикам оторвать...
|
|
21.09.2010, 09:50 | #17 |
MCT
|
Положу свои пять копеек в это обсуждение. Если бы сделали нормальную денормализацию, то все было бы ничего. В принципе надо об этом донести и может быть со следующим ролапом или сп это дело могут поправить.
__________________
Axapta book for developer |
|
17.09.2010, 16:19 | #18 |
NavAx
|
Кстати, о доступе из Axapta к SQL - как я мог забыть!!!.
Мы столкнулись, что при использовании определенного запроса из Ax, ничем особым не выделяющимся, на SQL сервере 2005 "течёт" tempdb, по 8Кб на запись, причем только если SQL версии >SP1. В результате, отгрузки более, чем на 500 строк начинали жутко тормозить, т.к. размер tempdb вырастал до 2+ Гб и появлялись многочисленные PAGE_LOCKS. Отловили только после ручного прохождения всего кода, что использовался и одновременном мониторинге SQL сервера. Вылечили, слегка видоизменив запрос (скорее, даже выкинув этот кусок - он был некритичен для нас, это был автоподбор отгрузок по клиенту/и пр. признакам).
__________________
Жизнь прекрасна! Если, конечно, правильно подобрать антидепрессанты... Последний раз редактировалось Maximin; 17.09.2010 в 16:21. |
|
19.09.2010, 17:53 | #19 |
Участник
|
Много, конечно, не по теме, но все же всем спасибо за ответы.
Для тех, кому интересен этот вопрос, советую подчитать литератуки по тестированию приложений. На мой взгляд (я не претендую на эксперта в данной области), ближе всех к истине fed. Из кода Аксапту никто не использует. Ее используют либо пользователи (через интерфейс пользователя), либо сторонние системы/приложения (через BC.NET, AIF, COM, т.д.) А соответственно, нет разницы, на каком языке и платформе написан код тестов (хочу заметить, что речь идет о более сложных функциональных тестах, а не о юнит-тестах). И уж тем более не нужно смешивать в одну кучу тестирование разных аспектов системы, как то производительность выборки данных, редактор Х++ кода, функций ядра и функциональности логистических модулей. А про то, что тестируют и разрабатывают приложение люди без знания АХ - я считаю, что это проблема. Но, к сожалению, практически всех кандидатов с опытом АХ и Х++, о которых я знаю, не взяли на работу за недостаточные technical skills. То бишь, простите, программисты АХ недостаточно квалифицированы для того, чтобы писать качественный код. И, напоследок, небольше уточнение моего первого поста: Выбор был между Linq to BC.NET to AOS и Linq to SQL. То есть речь НЕ идет о Х++ юнит-тестах. |
|
19.09.2010, 20:33 | #20 |
Moderator
|
А раскажи, в общих чертах, как вы более сложную функциональность тестируете ? Как юнит-тест для Аксапты написать - я примерно понимаю. А вот как написать и запустить тест, который не custVendVoucher тестирует, а иммитирует, ну скажем сессию сводного планирования, я пока не особенно понимаю...
|
|
|
|