пятница, мая 24, 2013

Посиделки AT.info: Мой доклад: Тесты в стиле BDD на C# (Подходы и инструменты; SpecFlow, BDDfy)

Сегодня вечером состоялось очередное заседание клюба киевских автоматизаторов, ака «Посиделки».

В своем докладе я рассказал об известных представителях BDD-инструментария, таких как SpecFlow и BDDfy в сравнении с Юнит-тест стилем для различных уровней автоматизации тестирования: модульного тестирования и системного (через UI).

Вот краткий список идей, которые я хотел донести участникам посиделок:

вторник, мая 14, 2013

T-SQL запрос, который выводит длину и типы всех полей в базе данных

Запрос выводит целую кучу данных, и в комбинации  с другими инструментами, может оказаться очень полезным.
К сожалению, уже не помню, откуда я его взял.
SELECT OBJECT_SCHEMA_NAME(T.[object_id],DB_ID()) AS [Schema],   
        T.[name] AS [table_name], AC.[name] AS [column_name],   
        TY.[name] AS system_data_type, AC.[max_length],  
        AC.[precision], AC.[scale], AC.[is_nullable], AC.[is_ansi_padded]  
FROM sys.[tables] AS T   
  INNER JOIN sys.[all_columns] AC ON T.[object_id] = AC.[object_id]  
 INNER JOIN sys.[types] TY ON AC.[system_type_id] = TY.[system_type_id] AND AC.[user_type_id] = TY.[user_type_id]   
WHERE T.[is_ms_shipped] = 0  
ORDER BY T.[name], AC.[column_id]

четверг, мая 09, 2013

7 Смертных Грехов Тестирования


Сегодня утром попалась интересная тема на форуме: 7 Deadly Sin's of Testing
Один из комментариев к которой я спешу перевести
Итак… 7 Смертных Грехов Тестирования:

воскресенье, апреля 14, 2013

Мотивация, личный интерес и интерес дела


Меня преследуют слова, которые все говорят, но, суть которых каждый понимает по-своему.  Конечно же, чтобы лучше понять суть термина, я сразу же лезу в Википедию… но и там не всегда написано четко и понятно.

Одно из таких слов – это мотивация, в смысле «мотивирован сделать что-то», «поднять мотивацию», «замотивированный сотрудник». Как объяснить в «двух словах» четко и ясно, что оно означает.

Я нашел эти «два слова»:
Мотивация – это личный интерес. Следовательно, демотивация – это отсутствие личного интереса (его могло не быть, он мог потерять  актуальность ).

Все оказывается очень просто.
А в подтверждение, статья М. Литвака, откуда была почерпнута эта мысль:

Хочу сотрудников, которые так же будут болеть за дело
Тезис: любой человек по определению болеет только за свои интересы. А задача руководителя сделать, чтобы интересы дела и его личные интересы сотрудников совпадали.

понедельник, марта 11, 2013

Суровый и беспощадный BDD маркетинг

Только что попалось видео с примером сурового и беспощадного BDD маркетинга для плагина Behave for JIRA.
За основу взят, в принципе, неплохой сценарий, но потом…
В общем, вопрос:
Какие ляпы вы видите в технической реализации сценария? Что бы вы хотели увидеть в этом видео дополнительно?

Даже если никто не ответит, в эту среду вечером я опубликую список тех, которые заметил я.

Upd

Сам сценарий написан довольно хорошо. Тут нет лишних деталей, и в принципе понятно, что должна делать функциональность.

Scenario: Add content assist to the Google Search field
    Given I am about to search
    When I begin to type my query
    Then a list of suggestions should appear below the search field
    And the suggestions should update as I type

На 01:06 начинается самое интересное. Обратите внимание:
Код реализации шагов не соответствует самому сценарию.

В шаге «Then a list of suggestions should appear below the search field» сабмитается форма. Не проверяется то, что список подсказок соответствует… хотя бы чему-то.
 
А в шаге: “And the suggestions should update as I type” – просто закрывается драйвер.
Собственно, в сценарии нет вообще ни одной проверки.





понедельник, марта 04, 2013

Pragmatic Perl – это первый русскоязычный журнал о языке Перл

Я начал изучение языка Perl еще 10 лет назад. Perl никогда не был моим «основным» языком программирования, тем не менее, я либо сам писал, либо использовал готовые скрипты практически каждый день. Ведь это настолько просто – решить простую задачу на простом языке.

Позвольте тожественно расшарить ссылку на первый выпуск русскоязычного журнала о Perl:
http://pragmaticperl.com/


Pragmatic Perl

воскресенье, марта 03, 2013

Разделяя неразделяемое: исследовательское, мануальное, «разумное», автоматизированное тестирование

В свете недавней статьи Майкла Болтона про «разумное тестирование», у меня появилась мысль:

А может, хватит уже придумывать новые термины, окончательно запутывая людей в том, где заканчивается один термин и начинается другой?

Автоматизированное тестирование – это не тестирование. Исследовательское тестирование – это не тестирование. Сценарное тестирование – это не тестирование. Это подходы в тестировании. Это способы тестирования – всего лишь, отдельные (хотя и важные) составные части.

воскресенье, февраля 24, 2013

C#: Как добавить автоматическое логирование вызова метода при помощи Castle DynamicProxy и Humanizer



Все мы знаем, что детальный лог (протокол) прохода авто-теста просто спасает тестировщика-автоматизатора. Ведь чем быстрее мы сможем локализировать проблему, понять что же конкретно делали авто-тесты и что конкретно привело к ошибке – тем быстрее мы сможем принять решение: либо мы исправляем тест; либо это неполадки в приложении – и следует написать новый баг.

Добавить «человеческое» логирование можно несколькими способами. Я предлагаю, сделать это просто называя шаги «человеческими» именами. С одной стороны, это  улучшит читабельность кода, с другой стороны – не требует дополнительных временных затрат на добавление логирования в процессе разработки тестов.