tag:blogger.com,1999:blog-2877410536371661916.post4480307472125771091..comments2023-10-23T17:22:38.832+02:00Comments on Про Тестинг: Тестирование на OpensourceАлексей Булатhttp://www.blogger.com/profile/03409061843239194158noreply@blogger.comBlogger14125tag:blogger.com,1999:blog-2877410536371661916.post-77063667283391896832011-01-18T15:43:33.843+01:002011-01-18T15:43:33.843+01:00Ответ достойный уважения. Но хочу заметить, что со...Ответ достойный уважения. Но хочу заметить, что создатели получают взамен благодарных пользователей, которые в свою очередь могут превратиться в постоянных "клиентов", способных в будущем помогать в разработке... Как говорится: "мы в ответе за тех кого приручили." Поэтому если уж начал писать инструмент, выложил его в опенсорс, то будь добр следи за ним и правь его. Иначе пусть пишут большими словами: "Делайте с ним все что хотите, мы больше не при делах"А.Б.https://www.blogger.com/profile/15946082367048034861noreply@blogger.comtag:blogger.com,1999:blog-2877410536371661916.post-78314029600316767842011-01-18T11:51:21.121+01:002011-01-18T11:51:21.121+01:00Вообще ждать от бесплатного продукта того, что для...Вообще ждать от бесплатного продукта того, что для вас реализуют то, что вам нужно -- некорректно. Что взамен то?<br /><i>Мы видим кучку незаконченных методов, хотя в API они заявлены. Я понимаю, что это делается до того, что если тебе надоест эта недоделка, ты сам заимплементируешь ее и зальешь создателем инструмента <br />Но будете ли вы этим заниматься, когда ваша работа писать автотесты и тестировать, а не фиксить баги в инструментах?</i><br />А <b>чья</b> это работа? Создатели инструмента, если они не получают за это деньги (продукт бесплатный) -- тоже не заинтересованы в том, чтобы реализовывать то, что нужно именно вам. А если есть поддержка на коммерческой основе -- тем более, у них есть свои платные пользователи, которые для них приоритетнее.<br />Это как если бы вы раздавали на улице кашу для голодных, а они вам говорят, "А че это ты варенья не положил?"Direviushttps://www.blogger.com/profile/04867262100674110103noreply@blogger.comtag:blogger.com,1999:blog-2877410536371661916.post-85670036131900826392010-09-28T20:01:43.708+02:002010-09-28T20:01:43.708+02:00Алексей, в Watir таких проблем не наблюдал. Там ко...Алексей, в Watir таких проблем не наблюдал. Там коммьюнити продумывало поведение в таких случаях, возвращать null или выкидывать _соответствующий_ ексепшн. <br /><br />Насчет того, что вы используете разные инструменты для решениях конкретных задач - здорово, универсальный средств вообще не бывает. но не вижу противоречия с обсуждаемым в статье и комментариях :)Anonymoushttps://www.blogger.com/profile/18414858388744083768noreply@blogger.comtag:blogger.com,1999:blog-2877410536371661916.post-20312634235465206522009-05-20T10:51:41.959+02:002009-05-20T10:51:41.959+02:00В продолжении обсуждения Watij хочу привести еще о...В продолжении обсуждения Watij хочу привести еще одни пример:<br />package watij;<br />class: BaseHtmlFinder<br />например, method:<br />public Button button(Finder... finder) throws Exception {<br />return buttons(finder).get(0);<br />}<br /><br />Примечание: подобную имплементацию имеют почти все методы этого класса...<br /><br />Допустим, что на странице не нашлось вообще ни одного button, тогда в результате метод выкинет нам NullPointerException. Ну что за лажа, как так можно писать? Я просто в шоке, я плачу... Почему нельзя было сделать хотя бы так:<br /><br />public Button button(Finder... finder) throws Exception {<br />Buttons buttons = buttons(finder);<br />return (buttons != null) ? buttons(finder).get(0) : null;<br />}<br /><br />В этом случае я в тесте сам контролировал бы кнопки, а не получать исключения от инструмента.А.Б.https://www.blogger.com/profile/15946082367048034861noreply@blogger.comtag:blogger.com,1999:blog-2877410536371661916.post-84862085523161025442009-04-06T10:13:00.000+02:002009-04-06T10:13:00.000+02:00И еще, Селениум не многим лучше Watij-a, может нем...И еще, Селениум не многим лучше Watij-a, может немного дальше ушел, но в основном таже свалка кода...А.Б.https://www.blogger.com/profile/15946082367048034861noreply@blogger.comtag:blogger.com,1999:blog-2877410536371661916.post-17510906482620776392009-04-06T10:12:00.000+02:002009-04-06T10:12:00.000+02:00Спасибо, Alex на селениум смотрел, не могу насмотр...Спасибо, Alex на селениум смотрел, не могу насмотреться... :) Вы очень хорошо объяснили про Watij спасибо, теперь у меня многое прояснилось...<BR/><BR/>Раскрою тайну<BR/>я не сторонник использования одного универсального инструмента во всех случаях жизни. Стараюсь делать все проще, т.е. под конкретную задачу задачу подбирать инструмент. Бывает, что можно и на чистой джаве написать тест, без использования каких-либо тулов.А.Б.https://www.blogger.com/profile/15946082367048034861noreply@blogger.comtag:blogger.com,1999:blog-2877410536371661916.post-63405819588388146332009-04-05T17:22:00.000+02:002009-04-05T17:22:00.000+02:00Алексей, привет. Спасибо за статью. Согласен с пре...Алексей, привет. Спасибо за статью. Согласен с предыдущими ораторами, особенно с резюмирующим комментом от "rkononov@gmail.com". Поэтому на тему "за" и "против" писать не буду :) <BR/><BR/>Хочу сделать только два комментария:<BR/>1) К счастью есть более менее удачные и развивающиеся open-source средства, где документация, поддержка, постоянное совершенствование и комьюнити пользователей - достаточные для эффективного использования. Но в любом случае требования к квалификации пользователей высокие. это понятно :).<BR/><BR/>Например, родоначальник идеи - Watir развивается лучше, чем его "соседи". Я так понимаю, ты специализируешься в java. Смотрел в сторону Selenium?<BR/><BR/>2) Предполагаю, что в основе API Watij просто лежит немного другая парадигма. Наследованная от Watir, где coding conventions другие (не причина, согласен), в ruby сознательно размывается грань между методом/полем/обьектом, все есть объект. Так вот эта парадигма смотрит на написание автотестов с точки зрения автотестера. Элемент на странице ищется в иерархии DOM: ie.form(how,what).checkbox(how,what). Где пользователю проще считать что form() это объект, а не метод getForm(). Например, в том же QTP такой же подход. Дело привычки. Поэтому еще раз рекомендую взглянуть на Selenium :)Anonymoushttps://www.blogger.com/profile/18414858388744083768noreply@blogger.comtag:blogger.com,1999:blog-2877410536371661916.post-47774571631952569002009-03-12T08:18:00.000+01:002009-03-12T08:18:00.000+01:00В принципе опыт работы с опенсоурцом довольно боль...В принципе опыт работы с опенсоурцом довольно большой и обычно мне проще дописать свою имплементацию(что и приходилось делать) в софтине с открытым кодом, чем сабмитить баг репорт коммерческой компании. Но как выше уже было сказано это не панацея (кто не обладает квалификацией а кому и время свое дороже). С коммерческими тоже проблем хватает, но там как то все постабильней и заплатки фиксы довольно часто выходят. Поэтому имхо вопрос об экономии тут двояк, экономии на лицензии и потом сами штопаем заплатки или покупаем софтину и платим за поддержку.Unknownhttps://www.blogger.com/profile/15904344012102201700noreply@blogger.comtag:blogger.com,1999:blog-2877410536371661916.post-26857199788552543662009-03-10T14:32:00.000+01:002009-03-10T14:32:00.000+01:00от QTP у меня шок уже давно... По всей видимости з...от QTP у меня шок уже давно... По всей видимости зажрались они...<BR/>Знали бы вы, как я был доволен WinRunner-ом и как был расстроен, что его выкинули на свалку.<BR/><BR/>По поводу опенсорса, он всем хорош (кроме того, что я ниписал в основном посте), пока есть те кто его сапортят и не ленятся помогать фиксить баги. Дальше это превращается в грабли, которые нужно дотачивать самим. И проблема тут получается та же, что и с платными тулзами без саппорта.<BR/><BR/>Вот.А.Б.https://www.blogger.com/profile/15946082367048034861noreply@blogger.comtag:blogger.com,1999:blog-2877410536371661916.post-41630445936496472442009-03-10T11:31:00.000+01:002009-03-10T11:31:00.000+01:00У меня от использования некоторых коммерческих инс...У меня от использования некоторых коммерческих инструментов ТАКОЙ аффект -- ни одному опенсорсу не приснится. Я, например, в полнейшем шоке от того, что в QTP в режиме DesignView не работает undo -- удалил что-нибудь и привет. Как такое можно допустить, а?Anonymoushttps://www.blogger.com/profile/02705904835531710648noreply@blogger.comtag:blogger.com,1999:blog-2877410536371661916.post-32531383214258464642009-03-08T20:57:00.000+01:002009-03-08T20:57:00.000+01:00Алексей, мне так кажется, что тут уже работает дру...Алексей, мне так кажется, что тут уже работает другая формула. Покупая продукт, без последующей поддержки - это еще хуже чем пользоваться инструментами с открытым кодом. Однако если поддержка есть, то тут уже другой разговор, зависящий от многих как материальных, так и не материальных факторов.<BR/>В любом случае признаюсь, что статья написана в состоянии аффекта :) от использования некоторых опенсорс инструментов...А.Б.https://www.blogger.com/profile/15946082367048034861noreply@blogger.comtag:blogger.com,1999:blog-2877410536371661916.post-83624103069695075102009-03-08T12:40:00.000+01:002009-03-08T12:40:00.000+01:00С моей точки зрения коммерческие инструменты не в ...С моей точки зрения коммерческие инструменты не в меньшей степени страдают от перечисленных четырёх проблем, чем открытые. И даже пофиксить невозможно, в отличие от опенсорса...Anonymoushttps://www.blogger.com/profile/02705904835531710648noreply@blogger.comtag:blogger.com,1999:blog-2877410536371661916.post-83693667814569052772009-03-06T20:27:00.000+01:002009-03-06T20:27:00.000+01:00Начну с конца :)1. Никто мне ничего не навязывал, ...Начну с конца :)<BR/>1. Никто мне ничего не навязывал, просто стало интересно решить кое какие реально рабочие задачи с помощью опенсорс инструментов. В итоге остановился на htmlunit. В нем конечно есть и свои минусы, но по моему он "зэ бэст". Конечно не работает он в реальном браузере, ну не любит он майкросовтовские веб апликухи, но под него приятнее писать. По крайней мере мне :)<BR/>2. Статья написана под впечатлением от исследований некоторых опенсорс инструментов, т.к. моему руководству не важно чем автоматизируется приложение (компания большая, есть лицензии на инструменты от IBM, HP, т.е. я свободен в выборе инструмента).<BR/><BR/>3. На счет того, что я когда-то не выложил свой патч, то скажу, что во-первых это не моя работа писать опенсорс приложения, а во-вторых - проект httpunit тогда был дохленький... :) Конечно это звучит эгоистично, но сорри, если авторы взялись что-то сделать для всех и бесплатно, нечего бросать работу на пол пути и без присмотра. <BR/>Если мы покупаем тул, то мы в нагрузку получаем еще и саппорт. Что не всегда есть в бесплатных инструментах. В них саппорт - это желание автора или кого-то со стороны, желающему помочь решению вашей проблемы.<BR/><BR/>Вот. Спасибо, что читаете нас :)А.Б.https://www.blogger.com/profile/15946082367048034861noreply@blogger.comtag:blogger.com,1999:blog-2877410536371661916.post-37847354617961655432009-03-06T16:37:00.000+01:002009-03-06T16:37:00.000+01:00Я не за и не против опенсоурса - использую и в быт...Я не за и не против опенсоурса - использую и в быту, и в работе софт из обеих областей.<BR/><BR/>И хочу просто подметить, что <I>Я понимаю, что это делается до того, что если тебе надоест эта недоделка, ты сам заимплементируешь ее и зальешь создателем инструмента (конечно если у самого на это есть подходящая квалификация)</I> как раз описывает суть разработки в стиле опен-соурс: если тебе что-то нужно в моем софте - возьми и сделай это себе сам. Потом, если хочешь, соединим изменения и сделаем новый релиз.<BR/><BR/>То есть, это софт для программистов, а не для пользователей. Как раз тот случай - <I>Написал им багу, сделал свою заплатку и забыл</I>.<BR/><BR/>Поэтому там были и всегда-всегда будут NotImplementedYetException() :)<BR/><BR/>Решение "будем переходить на опен-сjehc, ибо оно бесплатно" - прерогатива незнающих, или тех, кому знания уже не помогут.<BR/><BR/>Что послужило источником для написания заметки? Автора кто-то заставляет использовать в работе только опен-соурс, а ответить мудаку в лицо не получается по копроративным обстоятельствам?Алексей Лупанhttps://www.blogger.com/profile/04889853122442215863noreply@blogger.com