<?xml version="1.0" encoding="UTF-8"?><!-- generator="wordpress.com" -->
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	>

<channel>
	<title>Радости &amp;laquo; WordPress.com Tag Feed</title>
	<link>http://wordpress.com/tag/Радости/</link>
	<description>Feed of posts on WordPress.com tagged "Радости"</description>
	<pubDate>Sat, 11 Oct 2008 00:17:24 +0000</pubDate>

	<generator>http://wordpress.com/tags/</generator>
	<language>en</language>

<item>
<title><![CDATA[Microsoft анонсирует новую систему обеспечения качества ПО]]></title>
<link>http://testitquickly.wordpress.com/?p=450</link>
<pubDate>Mon, 29 Sep 2008 07:03:29 +0000</pubDate>
<dc:creator>Алексей Лупан</dc:creator>
<guid>http://testitquickly.com/2008/09/29/microsoft-qa-system-new/</guid>
<description><![CDATA[
Связь пользователя с разработчиками всё ближе и душев]]></description>
<content:encoded><![CDATA[<p><span style='text-align:center; display: block;'><object width='425' height='350'><param name='movie' value='http://www.youtube.com/v/D28FkfJiauk'></param><param name='wmode' value='transparent'></param><embed src='http://www.youtube.com/v/D28FkfJiauk&rel=0' type='application/x-shockwave-flash' wmode='transparent' width='425' height='350'></embed></object></span></p>
<p style="text-align:left;">Связь пользователя с разработчиками всё ближе и душевнее.</p>
<p style="text-align:left;">Возможности новых технологий, Internet 3.0.34.2, сбыча мечт и полное взаимопонимание между левой и правой рукой.</p>
<p style="text-align:left;">Качество прежде всего.</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[День понимаете имени кого]]></title>
<link>http://testitquickly.com/2008/09/09/%d0%b4%d0%b5%d0%bd%d1%8c-%d0%bf%d0%be%d0%bd%d0%b8%d0%bc%d0%b0%d0%b5%d1%82%d0%b5-%d0%b8%d0%bc%d0%b5%d0%bd%d0%b8-%d0%ba%d0%be%d0%b3%d0%be/</link>
<pubDate>Tue, 09 Sep 2008 10:06:38 +0000</pubDate>
<dc:creator>Алексей Лупан</dc:creator>
<guid>http://testitquickly.com/2008/09/09/%d0%b4%d0%b5%d0%bd%d1%8c-%d0%bf%d0%be%d0%bd%d0%b8%d0%bc%d0%b0%d0%b5%d1%82%d0%b5-%d0%b8%d0%bc%d0%b5%d0%bd%d0%b8-%d0%ba%d0%be%d0%b3%d0%be/</guid>
<description><![CDATA[Официальная версия:
9 сентября 1945 года ученые Гарвардс]]></description>
<content:encoded><![CDATA[<p>Официальная версия:</p>
<blockquote><p><strong>9 сентября 1945</strong> года ученые Гарвардского университета, тестировавшие вычислительную машину Mark II Aiken Relay Calculator, нашли мотылька, застрявшего между контактами электромеханического реле.</p>
<p>Проделанная работа требовала описания, и слово было найдено - «debugging» (дословно: избавление от насекомого) - так и ныне называется процесс выявления и устранения багов - причин неправильной работы компьютера.</p>
<p>Извлеченное насекомое было вклеено в техдневник, с сопроводительной надписью: «Первый обнаруженный баг», и в дальнейшем передано в музей вычислительной техники.</p>
<div><a href="http://en.wikipedia.org/wiki/Image:H96566k.jpg"><img style="max-width:800px;" src="http://upload.wikimedia.org/wikipedia/commons/thumb/8/8a/H96566k.jpg/250px-H96566k.jpg" alt="" /></a></div>
</blockquote>
<p>В реальности было так (перевод с английского):</p>
<blockquote><p>- <em>Ребята, я тут нажал, и вот, что получилось... Кажется, наш "Марк" слегка глючит...</em></p>
<p>На заднем плане - вспышки, треск, отдельные взрывы ламп накаливания.</p>
<p>- <em>Что-то ты нажал? Какого (<span style="color:#008000;">неразборчиво</span>) ты нажал именно эту (<span style="color:#008000;">неразборчиво</span>) клавишу? Ты знаешь, какой процесс ты запустил, ты, (<span style="color:#008000;">очень неразборчиво</span>), Джонни-бой? </em></p>
<p><em>- Какого (<span style="color:#008000;">неимоверно неразборчиво</span>) ты вообще подошел к машине? Кто его сюда пустил? Кто тебя учил работать на "Марках", ты, (<span style="color:#008000;">неразборчиво</span>), (<span style="color:#008000;">неразборчиво</span>), и (<span style="color:#008000;">неразборчиво</span>), (<span style="color:#008000;">неразборчиво</span>)... </em></p>
<p><em>- У тебя в голове </em><em>что -</em><em> тараканы, или диплом инженера, (<span style="color:#008000;">слегка неразборчиво</span>), а? Что мы теперь скажем, неразборчивое ты слово, а?</em></p>
<p>На заднем плане - вспышки, треск, отдельные взрывы ламп накаливания. Кто-то сильно надрывается, вероятно, морду бьют. Главный инженер отрешенно играет на банджо "If only I knew"...</p>
<p>Всеобщим голосованием было решено назначить ответственным... маленького мотылька. Даже слово было найдено - «debugging»...</p></blockquote>
<p>С праздником.</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Деньги в тестировании есть]]></title>
<link>http://testitquickly.com/2008/09/03/%d0%b4%d0%b5%d0%bd%d1%8c%d0%b3%d0%b8-%d0%b2-%d1%82%d0%b5%d1%81%d1%82%d0%b8%d1%80%d0%be%d0%b2%d0%b0%d0%bd%d0%b8%d0%b8-%d0%b5%d1%81%d1%82%d1%8c/</link>
<pubDate>Wed, 03 Sep 2008 14:59:12 +0000</pubDate>
<dc:creator>Алексей Лупан</dc:creator>
<guid>http://testitquickly.com/2008/09/03/%d0%b4%d0%b5%d0%bd%d1%8c%d0%b3%d0%b8-%d0%b2-%d1%82%d0%b5%d1%81%d1%82%d0%b8%d1%80%d0%be%d0%b2%d0%b0%d0%bd%d0%b8%d0%b8-%d0%b5%d1%81%d1%82%d1%8c/</guid>
<description><![CDATA[На съем жилья на два месяца вперед хватает  

]]></description>
<content:encoded><![CDATA[<p>На съем жилья на два месяца вперед хватает :)</p>
<div><a href="http://picasaweb.google.ru/lh/photo/K1TUU2LXzcd75Ly-nkO5VA"><img src="http://lh3.ggpht.com/astenix/SL6l2dYvjHI/AAAAAAAAA3U/LJ8nkXImcQ0/s288/DSC00042.JPG" alt="" /></a></div>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Форматирование текста в Jira]]></title>
<link>http://testitquickly.com/2008/08/29/%d1%84%d0%be%d1%80%d0%bc%d0%b0%d1%82%d0%b8%d1%80%d0%be%d0%b2%d0%b0%d0%bd%d0%b8%d0%b5-%d1%82%d0%b5%d0%ba%d1%81%d1%82%d0%b0-%d0%b2-jira/</link>
<pubDate>Fri, 29 Aug 2008 10:43:08 +0000</pubDate>
<dc:creator>Алексей Лупан</dc:creator>
<guid>http://testitquickly.com/2008/08/29/%d1%84%d0%be%d1%80%d0%bc%d0%b0%d1%82%d0%b8%d1%80%d0%be%d0%b2%d0%b0%d0%bd%d0%b8%d0%b5-%d1%82%d0%b5%d0%ba%d1%81%d1%82%d0%b0-%d0%b2-jira/</guid>
<description><![CDATA[Всем тем, кто должен (или счастлив) работать с Jira, надо в]]></description>
<content:encoded><![CDATA[<p>Всем тем, кто должен (или счастлив) работать с <a href="http://testitquickly.com/2008/06/03/fast-bug-tracker-review/">Jira</a>, надо вызубрить <a href="http://jira.atlassian.com/secure/WikiRendererHelpAction.jspa?section=all">правила форматирования текста</a> в ее полях.</p>
<p>Используются стандартные wiki-принципы. Например, чтобы сделать заголовок второго уровня, следует написать "h2. " в начале строки. Можно ставить пробел после "h2.", а можно писать слитно.</p>
<div>
<table class="grid" border="1" cellspacing="2" cellpadding="2" width="100%" align="left">
<tbody>
<tr>
<th width="250">Notation</th>
<th>Comment</th>
</tr>
<tr class="rowClear">
<td>h1. Огромный заголовок</td>
<td>
<h1>Огромный<br />
заголовок</h1>
</td>
</tr>
<tr class="rowClear">
<td>h2. Большущий заголовок</td>
<td>
<h2>Большущий заголовок</h2>
</td>
</tr>
<tr class="rowClear">
<td>h3. Большой заголовок</td>
<td>
<h3>Большой заголовок</h3>
</td>
</tr>
<tr class="rowClear">
<td>h4. Normal heading</td>
<td>
<h4>Normal heading</h4>
</td>
</tr>
<tr class="rowClear">
<td>h5. Small heading</td>
<td>
<h5>Small heading</h5>
</td>
</tr>
<tr class="rowClear">
<td>h6. Smallest heading</td>
<td>
<h6>Smallest heading</h6>
</td>
</tr>
</tbody>
</table>
</div>
<p><strong>Bold</strong>: *bold*</p>
<p><em>Italic</em>: _italic_</p>
<p>Линк: [Test It Quickly&#124;http://testitquickly.com] = <a href="http://testitquickly.com/">Test It Quickly</a></p>
<p>UPD: рядом с каждым полем, которое допускает wiki-тэги есть желтый значок со ссылкой на полный список правил форматирования (на нем вопросительный знак). Он показывается только если в админке Jira для текстовых полей включено wiki-форматирование. Не все это знают и не все это включают.</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Scrum and XP from the Trenches]]></title>
<link>http://testitquickly.com/2008/08/28/scrum-and-xp-from-the-trenches/</link>
<pubDate>Thu, 28 Aug 2008 09:42:14 +0000</pubDate>
<dc:creator>Алексей Лупан</dc:creator>
<guid>http://testitquickly.com/2008/08/28/scrum-and-xp-from-the-trenches/</guid>
<description><![CDATA[Вчера в нашем офисе нашел на библиополке разрозненные ]]></description>
<content:encoded><![CDATA[<p>Вчера в нашем офисе нашел на библиополке разрозненные листы из книги "<a href="http://www.infoq.com/minibooks/scrum-xp-from-the-trenches">Scrum and XP from the Trenches</a>"  by Henrik Kniberg, вчитался, отыскал все части, и зачитался... Как будто нашел копию "Мастер и Маргарита" в рукодельной версии в стиле восьмидесятых.</p>
<p><img style="max-width:800px;" src="http://www.infoq.com/resource/minibooks/scrum-xp-from-the-trenches/en/cover/coverlandingpage.JPG" alt="" hspace="20" vspace="6" align="right" />The tricky part to agile software development is that there is no manual telling you exactly how to do it. You have to experiment and continuously adapt the process until it suits your specific situation.</p>
<p>This book includes:</p>
<ul>
<li>Practical tips and tricks for most Scrum and XP practices</li>
<li>Typical pitfalls and how they were addressed</li>
<li>Diagrams and photos illustrating day-to-day work</li>
<li>Testing and test-driven development (на высоком уровне)</li>
<li>Scaling and coordinating multiple teams</li>
<li>Dealing with resistance from inside and outside the team</li>
<li>Planning and time estimation techniques</li>
<li>Forwards by Jeff Sutherland and Mike Cohn</li>
</ul>
<p>Есть <a href="http://www.infoq.com/resource/minibooks/scrum-xp-from-the-trenches/en/pdf/ScrumAndXpFromTheTrenchesonline07-31.pdf">Free download version</a> (9.84 MB, pdf) и <a href="http://www.lulu.com/content/899349">Buy the print version</a> for $22.95.</p>
<blockquote><p>Важно: "free download" доступно только зарегистрированным на <a href="http://www.infoq.com">infoq.com</a></p>
<p>Регистрация минутная и ни к чему не обязывающая.</p></blockquote>
<p>Идеальный английский язык (очень простой), идеальный стиль изложения, ответы на вопросы. Не задавание вопросов "дорогому читателю", а последовательное изложение нужных ему ответов.</p>
<p>Вопросы у меня самого есть, мне ответы нужны.</p>
<p>Для тех, кто еще не присоединился к Agile-образу жизни: получите агитационный материал с конференции Agile-2008. На фото - ярые проповедники Agile. Henrik Kniberg, если не врет, второй справа.</p>
<p><img class="aligncenter" src="http://blog.crisp.se/henrikkniberg/images/Crisp-at-agile2008.JPG" alt="" width="500" height="324" /></p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[22 htop'a, 22 прихлопа]]></title>
<link>http://testitquickly.wordpress.com/2008/07/03/22-htopa-22-%d0%bf%d1%80%d0%b8%d1%85%d0%bb%d0%be%d0%bf%d0%b0/</link>
<pubDate>Thu, 03 Jul 2008 14:12:27 +0000</pubDate>
<dc:creator>Алексей Лупан</dc:creator>
<guid>http://testitquickly.com/2008/07/03/htop/</guid>
<description><![CDATA[
Команда htop в перезагрузочном тестировании под Убунто]]></description>
<content:encoded><![CDATA[<p><!-- webmoney attestation label#418D8D54-BA41-4F82-A9DF-93C1DA6AC16F begin --><a href="http://passport.webmoney.ru/asp/certview.asp?wmid=111459544593" target="_blank"><img src="attestated1.gif" border="0"/></a><!-- webmoney attestation label#418D8D54-BA41-4F82-A9DF-93C1DA6AC16F end --></p>
<p>Команда <span style="font-family:Courier New;">htop</span> в перезагрузочном тестировании под Убунтой рулит неимоверно. Иначе и быть не может.</p>
<p>htop - это interactive process viewer.</p>
<p>Для сравнения два экрана прямо из консоли:</p>
<ul>
<li> первый экран - результат работы команды <span style="font-family:Courier New;">top</span>.</li>
<li>второй - результат работы команды <span style="font-family:Courier New;">htop</span>. Обе запущены одновременно и отображают работу одного и того же компьютера.</li>
</ul>
<p><!--more--></p>
<p><a href="http://testitquickly.wordpress.com/files/2008/07/htop.jpg"><img class="aligncenter size-medium wp-image-215" src="http://testitquickly.wordpress.com/files/2008/07/htop.jpg?w=300" alt="" width="300" height="287" /></a></p>
<p>Перед началом тестирования заходим в терминалах через ssh на компутеры, которые атакуем.</p>
<p>Например, приложение крутится на РС1, а база данных на РС2. Если htop там не установлено, пишем sudo apt-get htop (должно подхватиться автоматически, если же нет - надо будет апдейт списку репозиториев сделать - sudo apt-get update).</p>
<p>Затем запускаем htop в терминалах и мониторим все атаки на сервер. Заодно снимаем с него показания - вот когда на него натравился 200-ый эмулированный юзер, сайт "умир, оказался пацталом". Скриншот и циферки.</p>
<p><a href="http://testitquickly.files.wordpress.com/2008/07/entire-screen-grab-long-period-perf-test.png"><img class="aligncenter size-medium wp-image-218" src="http://testitquickly.wordpress.com/files/2008/07/entire-screen-grab-long-period-perf-test.png?w=300" alt="" width="300" height="225" /></a></p>
<p>Есть в htop сортировка отображаемых результатов, автоматическая подсветка PID при поиске, есть живые авторы программы, к которым можно засылать благодарственные письма (зовут автора Hisham  Muhammad).</p>
<p><strong>Из справки</strong>:</p>
<p>Arrows, PgUP, PgDn, Home, End</p>
<blockquote><p>Scroll process list.</p></blockquote>
<p>Space</p>
<blockquote><p>"Tag":  mark a process. Commands that can operate on multiple processes, like "kill", will then apply over the list of tagged  processes, instead of the currently highlighted one.</p></blockquote>
<p>F2, S</p>
<blockquote><p>Setup screen. There you can configure meters displayed on the  top side of the screen, as well as set various display options, choose among color  schemes  and  select  the  layout  of  the  displayed columns.</p></blockquote>
<p>F3, /</p>
<blockquote><p>Incremental process search: type in part of a process command line and the selection highlight will be moved to it. While  in  search mode, pressing this key will cycle through matching occurrences.</p></blockquote>
<p>F4, I</p>
<blockquote><p>Invert sort order: if sort order is increasing, switch to decreasing, and vice-versa.</p></blockquote>
<p>F5, t</p>
<blockquote><p>Tree view: organize processes by parenthood, and layout the  relations between them as a tree. Toggling the key will switch between tree and your previously selected sort view. Selecting a sort view will exit tree view.</p></blockquote>
<p>F6, &#62;</p>
<blockquote><p>Select  field  for sorting. The sort field is indicated by a highlight in the header.</p></blockquote>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Черная команда]]></title>
<link>http://testitquickly.wordpress.com/2008/05/30/%d1%87%d0%b5%d1%80%d0%bd%d0%b0%d1%8f-%d0%ba%d0%be%d0%bc%d0%b0%d0%bd%d0%b4%d0%b0-2/</link>
<pubDate>Fri, 30 May 2008 15:03:55 +0000</pubDate>
<dc:creator>Алексей Лупан</dc:creator>
<guid>http://testitquickly.com/2008/05/30/%d1%87%d0%b5%d1%80%d0%bd%d0%b0%d1%8f-%d0%ba%d0%be%d0%bc%d0%b0%d0%bd%d0%b4%d0%b0/</guid>
<description><![CDATA[Цитата из книги Демарко и Листера &#8220;Человеческий фак]]></description>
<content:encoded><![CDATA[<p>Цитата из книги Демарко и Листера "<span style="font-weight:bold;">Человеческий фактор - успешные проекты и команды</span>".</p>
<p>Приводится пример понятия "Кристаллизация" - речь идет об эффекте увеличенной производительности, который присущ наиболее работоспособным командам разработчиков.</p>
<p><!--more-->Причина эффекта - командная работа, всеобщее понимание, признание и осуществление общих целей группы. Результат - неимоверно волшебные, не нарадуешься.</p>
<p>Местные примеры: "IQ labs" в васильковскую эпоху. Или газета "Вечерний Кишинев" в исаевскую эпоху.</p>
<blockquote><p>Команда, прошедшая кристаллизацию - это группа людей, столь сильно связанных (не веревками), что целое становится больше суммы составляющих его частей. Производительность этой команды выше, чем производительность тех же людей, не перешедших порог кристаллизации. И, что столь же важно, удовольствие от работы также выше, чем можно было бы ожидать, учитывая природу работы.</p>
<p>Как только начинается кристаллизация команды, вероятность успеха очень резко возрастает. Управлять этой стихией - одно удовольствие. Управление в традиционном смысле этого слова им не нужно, и уж точно не нужны дополнительные стимулы. Они уже обладают собственным <span style="font-style:italic;">импульсом</span>.</p>
<p>Кристаллизацию команды обычно сопровождает <span style="font-style:italic;">сильное чувство индивидуальности</span>.</p>
<p>Участники хорошей команды испытывают <span style="font-style:italic;">ощущение элитарности</span>. Они чувствуют, что составляют нечто уникальное, что они выше всякой заурядности. Они проявляют смелость, достойную спецназа, что может отчасти раздражать людей, не входящих в группу.</p></blockquote>
<div style="text-align:left;">Собственно, отрывок из книги. Также отмечу то, что в примере указана команда тестировщиков.</p>
<div style="text-align:center;"><span style="font-weight:bold;">Черная команда</span></div>
</div>
<p>На заре времён (скажем так) в штате Нью-Йорк существовала компания, производившая большие синие компьютеры. Компания также выпускала программное обеспечение для этих компьютеров. Клиенты компании были весьма достойными людьми, но, говоря между нами, имели обыкновение препротивно придираться к программам с ошибками. Какое-то время компания прилагала усилия к обучению клиентов, чтобы сделать их более терпимыми к ошибкам. Но из этого ничего не получилось, поэтому пришлось проглотить пилюлю и начать избавляться от ошибок.</p>
<p>Простой и очевидный подход - заставить программистов удалять все ошибки перед сдачей программы. Этот подход по какой-то причине тоже работал не очень хорошо. Похоже, программисты (по крайней мере, в те времена) были в целом слишком хорошего мнения о своих программах. Как они ни старались, найти все ошибки до последней не могли, поэтому часто объявляли о готовности программ, полных изъянов.</p>
<p>Тяжело было обнаружить последнюю ошибку, но некоторые тестировщики справлялись лучше своих коллег. Компания сформировала группу из этих особо одарённых тестировщиков и предоставила ей право окончательного тестирования критических приложений перед отправкой их клиентам. Так родилась легендарная Чёрная Команда.</p>
<p>Изначально в Чёрную Команду входили люди, проявившие себя в тестировании и превосходившие в этом качестве своих коллег. У них было больше мотивации. Они тестировали также и чужой код, поэтому были свободны от когнитивного диссонанса, сковывающего разработчика при тестировании собственных программ. В конечном итоге руководители, сформировавшие команду, ожидали хотя бы скромных улучшений качества продуктов, но не более того. А вот получили они гораздо больше.</p>
<p>Удивительное заключалось не в том, насколько хороша была Чёрная Команда на заре своего существования, а в том, насколько она улучшилась за последующий год. Происходило что-то волшебное: в команде началось формирование индивидуальности. Эта индивидуальность находилась под влиянием оппозиционной философии тестирования, созданной участниками группы. Философия гласила, что они должны желать и ожидать недостатков в программах.</p>
<p>Они вовсе даже не болели за разработчиков, но напротив находили наслаждение в том, чтобы подвергнуть программу (и программиста) испытаниям, которые были бы не просто тестом. Когда программист приносил программу на тестирование в Чёрную Команду, он чувствовал себя, как на аудиенции у Мина Беспощадного (персонаж комиксов, воплощение чистого зла).</p>
<p>Поначалу просто ходили шутки, что тесты Чёрной Команды подлые и скверные и что участникам группы очень нравится, когда код работает неправильно. Затем шутки закончились. Члены команды начали культивировать образ разрушителей. Они разрушали не только ваш код, но и весь ваш день. Они делали нечеловечески несправедливые вещи, чтобы добиться сбоя: перегружали буферы, сравнивали пустые файлы, набирали возмутительные последовательности на клавиатуре. Взрослые мужчины и женщины начинали <a title="Принципы работы тестировщиков" href="http://testitquickly.wordpress.com/2007/07/16/эти-гадкие-и-противные-мужланы/">плакать</a>, когда видели ужасное поведение своих программ в руках сумасшедших врагов. Чем хуже вам приходилось, тем большее удовольствие получала группа тестирования.</p>
<p>Чтобы усилить неприятный образ, участники команды начали носить чёрное (отсюда и название "Чёрная Команда"). Они взяли в привычку страшно фыркать, когда программа давала сбой. Некоторые отращивали длинные усы, которые крутили, подражая Саймону Легри (страшный работорговец из романа "Хижина дяди Тома").</p>
<p>Они собирались, чтобы придумывать ещё более ужасные тестовые уловки. Программисты начали перешёптываться о душевнобольных из Чёрной Команды.</p>
<p>Что и говорить, компания была в восхищении. Каждый дефект, найденный командой, клиентам уже не суждено было увидеть. Команда стала настоящей удачей. Удачей в качестве подразделения тестирования, но, что более важно для нашего изложения, в качестве социальной ячейки. Люди в команде получали такое удовольствие от своей работы, что коллеги вне команды, несомненно, завидовали им. Чёрная одежда и по-детски глупое поведение были частью этого удовольствия, но происходило здесь и кое-что ещё. Химические процессы внутри группы стали самодостаточными.</p>
<p>С течением времени участники команды время от времени покидали её, чтобы заняться другими вещами. Поскольку функция команды была весьма важна для компании, уходивших людей заменяли немедленно. И так продолжалось, пока в какой-то момент не осталось ни одного из участников первого состава. Но Чёрная Команда продолжала жить. Она пережила потерю всех основателей, но полностью сохранила свою энергию и индивидуальность.</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Ыыыыыы]]></title>
<link>http://testitquickly.wordpress.com/?p=142</link>
<pubDate>Sat, 17 May 2008 18:54:18 +0000</pubDate>
<dc:creator>Алексей Лупан</dc:creator>
<guid>http://testitquickly.com/2008/05/17/%d1%8b%d1%8b%d1%8b%d1%8b%d1%8b%d1%8b/</guid>
<description><![CDATA[Top Searches по этому блогу:
qa,  тестирование функции save,  уб]]></description>
<content:encoded><![CDATA[<div id="top-search"><strong>Top Searches</strong> по этому блогу:</p>
<blockquote><p>qa,  тестирование функции save,  убить тестировщика</p></blockquote>
<p>Даже не могу не знать, кто это тут искал.
</p></div>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Как управлять с одной клавиатуры двумя компьютерами через LAN]]></title>
<link>http://testitquickly.wordpress.com/2008/05/14/%d0%9a%d0%b0%d0%ba-%d1%83%d0%bf%d1%80%d0%b0%d0%b2%d0%bb%d1%8f%d1%82%d1%8c-%d1%81-%d0%be%d0%b4%d0%bd%d0%be%d0%b9-%d0%ba%d0%bb%d0%b0%d0%b2%d0%b8%d0%b0%d1%82%d1%83%d1%80%d1%8b-%d0%b4%d0%b2%d1%83%d0%bc/</link>
<pubDate>Wed, 14 May 2008 10:03:38 +0000</pubDate>
<dc:creator>Алексей Лупан</dc:creator>
<guid>http://testitquickly.com/2008/05/14/%d0%ba%d0%b0%d0%ba-%d1%83%d0%bf%d1%80%d0%b0%d0%b2%d0%bb%d1%8f%d1%82%d1%8c-%d1%81-%d0%be%d0%b4%d0%bd%d0%be%d0%b9-%d0%ba%d0%bb%d0%b0%d0%b2%d0%b8%d0%b0%d1%82%d1%83%d1%80%d1%8b-%d0%b4%d0%b2%d1%83%d0%bc/</guid>
<description><![CDATA[Стоят у меня на одном столе две машины с Ubuntu 7.10 /Gnome/ - ]]></description>
<content:encoded><![CDATA[<p>Стоят у меня на одном столе две машины с Ubuntu 7.10 /Gnome/ - "РС1-основной" (основной комп) и "РС2-воспомогательный" (воспомогательный, с которого запускаю всякого рода JMeter's).</p>
<p>Ежедневно приходится одновременно смотреть в два экрана - и на браузер, и на файл с рекуайрментами или тест-кейсами. Задрало постоянно переключаться между окнами в рамках одного монитора.</p>
<p><!--more-->Иногда по сети скидывал второй документ на "РС2-воспомогательный", и косился на него в процессе работы. Коситься удобно, но когда нужно его редактировать, руки-то лежат на клавиатуре "РС1-основной" (если быстро думать, то понятно, почему я иногда использую национальные молдавские ругательства)... Да и я не любитель мышей. Сила в шорткатах, а не в деньгах.</p>
<h3>Проблема</h3>
<p>Две клавиатуры, две мыши, два монитора. Мозг не всегда синхронизирует то, что видит, с клавиатурой, на которой пальцы лежат. Иногда приходится ругаться грубыми молдавскими словами.</p>
<h3>Что можно сделать штатными средствами</h3>
<p>На "РС1-основной" через Terminal Server Client открыть полный доступ для "РС2-воспомогательный". Теперь все, что происходит на "РС1-основной" (где руки на клавиатуре лежат), отображается синхронно на мониторах обеих машин - через LAN.</p>
<p>Но это как раз мешает изредка коситься на документ со второго монитора.</p>
<p>Также это не решает проблему работы с двумя компами с одной клавиатуры.</p>
<h3>Решение проблемы</h3>
<p>На "РС2-воспомогательный" через Terminal Server Client открыть полный доступ для "РС1-основной". Можно с паролем и предупреждением о том, что "к вам шведы ломятся".</p>
<h4>Инструкция</h4>
<p>На "РС2-воспомогательный" заходим в меню <span style="font-style:italic;">Система - Настройки - Удаленный рабочий стол</span>, и выставляем птички:</p>
<ul>
<li>Allow other users to view your desktop</li>
<li>Allow other users to control your desktop</li>
<li>Ask you for confirmation</li>
</ul>
<p>Имхо, требовать пароль при этом подключении не обязательно, поэтому последнюю галочку можно не дергать.</p>
<div style="text-align:center;"><img class="aligncenter" style="vertical-align:baseline;" src="http://testitquickly.files.wordpress.com/2008/05/remote.jpg" alt="" /></div>
<p>На "РС1-основной" идем по пути <span style="font-style:italic;">Приложения - Интернет - Клиент терминального сервера</span>, выбираем протокол VNC, указываем IP-адрес машины, к которой подключаемся, и, собственно, подключаемся.</p>
<div style="text-align:center;"><img class="aligncenter" src="http://testitquickly.files.wordpress.com/2008/05/screenshot-terminal-server-client.png" alt="" /></div>
<p>На мониторе "РС2-воспомогательный" должно появиться предупреждение о шведах, которые ломятся.</p>
<div style="text-align:center;"><a href="http://testitquickly.wordpress.com/files/2008/05/svedi.jpg"><img class="size-medium wp-image-129" src="http://testitquickly.wordpress.com/files/2008/05/svedi.jpg?w=300" alt="" width="300" height="119" /></a></div>
<p>Теперь на мониторе "РС1-основной" в отдельном окне отображается все то, что происходит на "РС2-воспомогательный". Управление полное. Можно даже через GIMP делать скриншоты на мониторе "РС2-воспомогательный", и потом забирать готовые файлы на "РС1-основной" через LAN.</p>
<h3>Радости</h3>
<p>На "РС1-основной" это окно можно сунуть куда угодно, или свернуть, или на десктоп №3 отправить - на мониторе "РС2-воспомогательный" ничего не меняется. Но все то, что нужно изменить в документе с монитора "РС2-воспомогательный", делается с клавиатуры и мышью "РС1-основной" в ремот-окне.</p>
<h3>Неудобства</h3>
<p>Неудобство <span style="font-weight:bold;">мелкое</span> - файл, который надо открыть на мониторе "РС2-воспомогательный", сперва нужно перекинуть с "РС1-основной". Неудобство не глобальное, секунд пять на это уходит (эта проблема <a href="http://testitquickly.wordpress.com/2008/05/15/%d0%9f%d1%80%d0%be%d1%82%d0%be%d0%ba%d0%be%d0%bb-sftp-%d0%b2-krusader-%d0%bf%d0%be%d0%b4-gnome-%d0%b2-ubuntu-gutsy/">решена</a>).</p>
<p>Неудобство <span style="font-weight:bold;">среднее</span> - при редактировании документов в ремот-окне не работают некоторые "оконные" шорткаты типа Alt+TAB, которые нас между окнами переключают, а Alt+F4 закрывает само ремот-окно. Временами приходится дергать мышь. Зато все остальные шорткаты ("Сохранить" и прочие подобные) работают нормально. Особенно Alt+F4, про коварство которого нередко забываешь :)</p>
<p>Впрочем, хоть и мышью, но в ремот-окне с "РС2-воспомогательный" можно делать все, что угодно, в том числе и переключать тамошние виртуальные столики.</p>
<p><span style="font-weight:bold;">Крупных неудобств</span> не обнаружил, за исключением следующего: <span style="color:#ff0000;">если</span> на "РС1-основной" запущены Beryl, Compiz Fusion и прочие украшающие менеджеры окон, <span style="color:#ff0000;">и</span> мы закроем ремот-окно через Alt+F4, <span style="color:#ff0000;">то</span> рабочий стол на "РС2-воспомогательный" будет чудачить. К примеру, можно будет переключаться между окнами, развертывать их и перекладывать, но закрыть их по крестику в правом верхнем углу - нет.</p>
<p>И при попытке повторного подключения, в окне "К вам шведы ломятся..." нажатие на Refuse или Allow ни к чему не приведет. Вроде нажимаются кнопки, а результата нет. Выход - на "РС2-воспомогательный" жмем носом на Reset. Можно перегрузить только Gnome (дефолтно по Ctrl+ Alt+Backspace).</p>
<p>Не будем же мы отключать красоту только потому, что "РС2-воспомогательный" от нее чудит :)</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[CSSH - используем несколько компьютеров для performance testing]]></title>
<link>http://testitquickly.wordpress.com/?p=118</link>
<pubDate>Tue, 13 May 2008 14:56:29 +0000</pubDate>
<dc:creator>Алексей Лупан</dc:creator>
<guid>http://testitquickly.com/2008/05/13/cssh-%d0%b8%d1%81%d0%bf%d0%be%d0%bb%d1%8c%d0%b7%d1%83%d0%b5%d0%bc-%d0%bd%d0%b5%d1%81%d0%ba%d0%be%d0%bb%d1%8c%d0%ba%d0%be-%d0%ba%d0%be%d0%bc%d0%bf%d1%8c%d1%8e%d1%82%d0%b5%d1%80%d0%be%d0%b2-%d0%b4/</guid>
<description><![CDATA[Незаметно научился делать нагрузочное тестирование. Ud]]></description>
<content:encoded><![CDATA[<p>Незаметно научился делать нагрузочное тестирование. <a href="http://udaleator.md">Udaleator</a> уже может предлагать мне работу, только я еще не соглашусь, потому что еще и полсобаки в перформансе не съел. И если он подсунет мне вторую половину этой собаки, я могу подавиться.</p>
<p>Итак, в нагрузочном тестировании главное ухитриться и запустить с нескольких компьютеров скрипты, подобные феноменальному JMeter. Цель скриптов - нежно или грубо грузить тестируемый сервер запросами по определённым сценариям.</p>
<h3><!--more--></h3>
<h3>Предполагается</h3>
<ol>
<li>Наличие JMeter, или Siege, или ApacheBenchmark, или любую другую подобную утилиту, тестировщик уже освоил.</li>
<li>что выбранная для применения утилита установлена на всех тех компьютерах, которые будут "мочить" сервер</li>
<li>что тестировщик умеет лично перебегать между компутерами (или теребить коллег) и поочередно запускать с них JMeter-атаки.</li>
<li> что на всех задействованных в этом тестировании компьютерах созданы профили с идентичными логином и паролем. Например, testuser/testpass. Кто этого не сделает, тому все равно придется это сделать, а причину я объясню чуть позже.</li>
</ol>
<p>Теперь сюрприз: что существенно облегчит перебежки тестировщика между компутерами?</p>
<p>Правильно, существенно облегчит перебежки тестировщика между компутерами утилита <strong>Cluster SSH</strong>. А также любая Ubuntu Gutsy Gibbon или Hardy Heron.</p>
<p>Cluster SSH — программа с графическим интерфесом, позволяющая открыть несколько соединений по SSH и выполнять одновременно во всех них команды.</p>
<h3>Установка (на добро)</h3>
<p>Открываем терминал:</p>
<blockquote><p>sudo apt-get install clusterssh<br />
Y, разумеется, Y!</p></blockquote>
<p>Пока ставится, открываем еще одно терминальное окно (позже будет удобно), и пишем команду, которая создает файл с конфигурацией cssh - starting the utility will be much faster with a configuration file (as this prevents searching for required files):</p>
<blockquote><p>sudo cssh -u &#62; /home/user/.csshrc</p></blockquote>
<p>В справке путь указан как $HOME. Если у вас домашняя директорая иная, нежели /home/user/, пишите иное.</p>
<p>Запускаем в этом же (втором) терминалике Midnight  Commander с правами root (да не убий Убунту):</p>
<blockquote><p>sudo mc</p></blockquote>
<p>В левой панели ищем /home/user/.csshrc и открываем его. Внимательно смотрим содержимое. Внимательно закрываем содержимое, бо нефиг его трогать. Повторять до просветления.</p>
<p>В правой панели переходим в 'etc/'. Там рожаем файл clusters:</p>
<blockquote><p>&#62;clusters</p></blockquote>
<p>Открываем этот файл на исполнение, и вписываем в него IP компьютеров, на которых располагается наше оружие (JMeter, например):</p>
<blockquote><p>host1 = user@192.168.1.32<br />
host2 = marin@192.168.1.36<br />
host3 = boss@192.168.1.200</p>
<p>stressit = host1 host2<br />
stressitall =  host1 host2 host3</p></blockquote>
<p>Не спеша прочитав, слушаем внимательно.</p>
<h4 style="padding-left:30px;">host1</h4>
<p>Количество вписываемых хостов, с которых будем запускать JMeter, неограничено. В этом примере прописано три компьютера. Если надо, пишем сто компьютеров. Или тысячу.</p>
<h4 style="padding-left:30px;">user@192.168.1.36</h4>
<p>'user' - это имя пользователя <span style="font-weight:bold;">на удаленной машине</span>, которых мы заранее завели перформанс-теста ради. Если юзера там зовут 'Petea' - пишем в нашем файле 'Petea'.</p>
<p>'192.168.1.36'  - это IP. Как круто это знать. IP вам выдаст администратор вашей сети, под пытками с применением пива и пиццы. В общем, как договоритесь.</p>
<p>При первом подключении к удаленным компьютерам CSSH выдаст предупреждение и вопрос, мол, 'вы точно хотите подключиться к еще неизвестному мне компутера?' Придется сказать Yes. Зато потом утилита уже будет знать, что мы ломимся к удаленному компу под указанным нами пользователем, и будем спрашивать только пароль входа.</p>
<h4 style="padding-left:30px;">stressit</h4>
<p>'stressit' - это произвольное сочетание букв, это тэг, который будет распознавать CSSH. Тэг говорит утилите - мы хотим запустить наши руки в компы, которые у тебя прописаны под host1 и host2. Имя тэга зависит только от ваших сексуальных предпочтений. Как хотите, так его и назовите. Я назвал его 'stressit', и ничуть не сожалею об этом.</p>
<p>Таких тэгов может быть сколько угодно, на случай, если нам нужно будет запускать не всю армаду подчиненных компьютеров разом, а по несколько, для исполнения разных сценариев одновременно. Очень продуманная вещь.</p>
<p>'stressitall' - это пример другого тэга, который говорит: мы убиваем сервер, сразу абсолютно все наши компы. Почему все? Потому, что для этого тэга я указал абсолютно все наличные в файле 'host' - и host1, и host2, и host3. Было бы 100 хостов - пришлось бы прописать их всех. Но сейчас у меня под рукой только три копмьютера, поэтому такая запись в файле 'clusters'.</p>
<p>Кстати, мы же создали на всех компах тестовых юзеров-пустышек? Значит, наш файл 'clusters' выглядит так:</p>
<blockquote><p>host1 = user@192.168.1.36<br />
host2 = user@192.168.1.37<br />
host3 = user@192.168.1.200</p>
<p>stressit = host1 host2<br />
stressitall =  host1 host2 host3</p></blockquote>
<p>'MC' можно закрыть.</p>
<h3>Запускаем cssh</h3>
<p>В терминал:</p>
<blockquote><p>sudo cssh stressit</p></blockquote>
<p>С правами root мы открываем cssh и повелеваем ей запустить именно те хосты, которые прописаны в файле 'clusters' под тэгом 'stressit'.</p>
<p><a href="http://testitquickly.files.wordpress.com/2008/05/12.jpg"><img class="aligncenter size-full wp-image-124" src="http://testitquickly.wordpress.com/files/2008/05/12.jpg" alt="" width="450" height="124" /></a></p>
<p>В терминале для каждого хоста пишут угрозы типа - WARNING: unknown host = (see -i switch, or ignore_host_errors in .csshrc) - ignoring. Их можно игнорировать. Лезть в конфиг-файл и говорить Yes для опции ignore_host_errors не рекомендуется. Пробуйте, если не верите.</p>
<p>При первом подключении к удаленному компьютеру в консоли cssh должен появиться вопрос, мол, вы стукаетесь на такой-то компьютер. Он неизвестен. Вы уверены, что надо к нему подключиться?</p>
<p><a href="http://testitquickly.files.wordpress.com/2008/05/4.jpg"><img class="aligncenter size-full wp-image-123" src="http://testitquickly.wordpress.com/files/2008/05/4.jpg" alt="" width="450" height="296" /></a></p>
<p>Надо полностью написать слово "yes".</p>
<p>Ответ cssh - Warning, permanently added такой-то IP to the list of known hosts, и при последующих запусках этого вопроса не будет. Будет сразу приглашение ввести пароль для доступа. Что нам и нужно.</p>
<p><a href="http://testitquickly.files.wordpress.com/2008/05/5.jpg"><img class="aligncenter size-full wp-image-125" src="http://testitquickly.wordpress.com/files/2008/05/5.jpg" alt="" width="450" height="296" /></a></p>
<p>Теперь предлагаю поэкспериментировать с утилитой. Можно всякие ее немногочисленные опции подергать. Закрыть и снова запустить.</p>
<p>Можно добавить еще один (или сто) хост по рецепту user@server. Но в принципе - нечего тут дергать, если мы уже все прописали в файле 'clusters'.</p>
<p><a href="http://testitquickly.files.wordpress.com/2008/05/3.jpg"><img class="aligncenter size-full wp-image-121" src="http://testitquickly.wordpress.com/files/2008/05/3.jpg" alt="" width="450" height="396" /></a></p>
<p>Если ковыряние завершено, запускаем утилиту по-серьезному. Откроем два компутера которые у нас под тэгом stressit записаны.</p>
<p>В терминал:</p>
<blockquote><p>sudo cssh stressit</p></blockquote>
<p>Видим:</p>
<p><a href="http://testitquickly.files.wordpress.com/2008/05/2.jpg"><img class="aligncenter size-full wp-image-122" src="http://testitquickly.wordpress.com/files/2008/05/2.jpg" alt="" width="450" height="693" /></a></p>
<p>Окна я сам расположил равномерно.</p>
<p>Прошу заметить, что в основном окне есть поле ввода. В нем мигает курсор, и позже мы будем туда  вписывать кое-чего, но, прикол, в этом поле ничего из того, что вводится, не отображается... Да и не надо.</p>
<p>Тем не менее, через это поле будем посылать команды во все открытые сеансы (на все компьютеры).</p>
<p>Прошу знать</p>
<blockquote>
<ul>
<li>если команду нужно выполнить только для одного сервера, обратитесь к нужному окну терминала.</li>
<li>Чтобы исключить сеанс из перечня массового выполнения команд, нужно снять соответствующий флажок в меню 'Hosts' в основном окне утилиты.</li>
<li>Чтобы исключить все сеансы сразу, используйте команду 'Toggle active state' - в основном окне. Применив ее - не жалуемся, сеансы действительно отключаются.</li>
<li>Для упорядочивания окон на экране применяем команду 'Retile'.</li>
<li>Справка по программе есть и в меню Help - Documentation, и в консоли - man cssh, и на <a href="http://sourceforge.net/docman/display_doc.php?docid=22686&#38;group_id=89139">sourceforge.net</a>.</li>
</ul>
</blockquote>
<p>Все запущено, в основном окне в поле ввода мигает курсор. Сходу пишем пароль для доступа к удаленным юзерам. Он, по правилам юникс, не отображается. Пишем пароль, жмем "Enter" - хо-хо мы получили доступ!</p>
<p>Для разгона впишем команду 'ls'. Вот теперь отлично видно все, что пишем - это отображается сразу во всех открытых консолях.</p>
<p style="text-align:center;"><a href="http://testitquickly.files.wordpress.com/2008/05/6.jpg"><img class="size-full wp-image-126 aligncenter" src="http://testitquickly.wordpress.com/files/2008/05/6.jpg" alt="" width="450" height="707" /></a></p>
<p>Рулез!</p>
<p>Если дома не ждет горячий ужин, то знакомимся еще и с <a href="http://chainssh.sourceforge.net/">ChainSSH</a> - a shell script to simplify ssh logins via multiple sshgateways/firewallgateaways - вдруг пригодится.</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Automatizirui that]]></title>
<link>http://testitquickly.wordpress.com/2008/01/30/automatizirui-that/</link>
<pubDate>Wed, 30 Jan 2008 11:11:00 +0000</pubDate>
<dc:creator>Алексей Лупан</dc:creator>
<guid>http://testitquickly.com/2008/01/30/automatizirui-that/</guid>
<description><![CDATA[Задрало проверять ограничения на ввод определенных си]]></description>
<content:encoded><![CDATA[<p>Задрало проверять ограничения на ввод определенных символов в поля формы? Автоматизируй это :)</p>
<p>Пишем в блокноте:</p>
<blockquote><p>a!@#$%^&#38;*()_+*\:,"/;'b</p></blockquote>
<p>Теперь при шаге "<span style="font-style:italic;">Введите, плиз, запрещенные символы</span>", копипастим всю эту строку четырьмя двухклавишными аккордами. В поле после этой операции остаются только те символы, которые разрешены (буковки, в частности).</p>
<p>Вставили:</p>
<blockquote><p>a!@#$%^&#38;*()_+*\:,"/;'b</p></blockquote>
<p>Видим:</p>
<blockquote><p>ab</p></blockquote>
<p>Похоже, скрипт сегодня вечером уже будет завершен :)</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Высоцкий в новом обличье]]></title>
<link>http://testitquickly.wordpress.com/2007/12/24/%d0%92%d1%8b%d1%81%d0%be%d1%86%d0%ba%d0%b8%d0%b9-%d0%b2-%d0%bd%d0%be%d0%b2%d0%be%d0%bc-%d0%be%d0%b1%d0%bb%d0%b8%d1%87%d1%8c%d0%b5/</link>
<pubDate>Mon, 24 Dec 2007 20:42:00 +0000</pubDate>
<dc:creator>Алексей Лупан</dc:creator>
<guid>http://testitquickly.com/2007/12/24/%d0%b2%d1%8b%d1%81%d0%be%d1%86%d0%ba%d0%b8%d0%b9-%d0%b2-%d0%bd%d0%be%d0%b2%d0%be%d0%bc-%d0%be%d0%b1%d0%bb%d0%b8%d1%87%d1%8c%d0%b5/</guid>
<description><![CDATA[- Это ж все-таки web-application, - говорю. -
Нож по сердцу каждый]]></description>
<content:encoded><![CDATA[<div>- Это ж все-таки web-application, - говорю. -<br />
Нож по сердцу каждый баг программисту.</p>
<p>- Так я ж тебе как программисту лучший скриншот подарю!<br />
Допусти, а я отблагодарю!</p>
</div>
]]></content:encoded>
</item>

</channel>
</rss>
