vanessa-behavoir
BDD for 1S:Enterprise (snipets generator and runner based on OLE32Server for 1C)
для Windows
необходимы:
- интерпретатор Ruby
установить cucumber
gem install cucumber gem install allure-cucumberУстановить 1Script через инсталятор
Обновить 1Script до последней версии
cd c:\OScript\
"C:\Program Files (x86)\GnuWin32\bin\wget.exe" --continue http://oscript.io/downloads/night-build/latest.zip
unzip -o latest.zip -d .\
oscript.exe
установить данный проект
git clone https://github.com/silverbulleters/vanessa-behavoir.gitскопировать одну хитрую библиотеку в каталог 1Script
xcopy /y .\lib\Unpackv8.exe c:\OScript\
Описание простого использования
- пишем feature файлы в формате Gherkin ```Gherkin
encoding: utf-8
language: ru
@[ИмяФичи]=EpfBehavePleer;\features\main
Функционал: Запуск и получение результатов запуска сценариев
Как любой пользователь продукта
Я хочу иметь возможность запустить тестирование моих сценариев на конфигурации 1С:Предприятие
Контекст:
Когда я указал 1 каталог feature файлов как '.\features*'
Также в каталоге '.\features\step_definitions\' есть 1 файл с расширением 'wire'
@Консоль
Сценарий: Запуск в консольном режиме
Допустим Запускаем командную строку для сервера тестирования 'onescript ./wire_server.os --daemon'
Также Запускаем командную строку 'cucumber ./ -f html -o test_result.html'
То появляется файл с результатами 'test_result.html'
Также файл с результутами 'test_result.html' не пустой
Сценарий: Запуск тестовой процедуры в 1С
Допустим в feature файле определен шаг 'Когда существует процедура теста'
То в файле результата 'test_result.html' должен содераться текст '<ПравильноеИмяПроцеудры>'
Также данный шаг с именем '<ПравильноеИмяПроцеудры>' должен числится пройденным успешно
Также будет выдано сообщение 'Сообщение'
* генерируем тестовые обработки
oscript.exe vanessa-behavior.os --GenerateEpf
* наполняем обработки тестов кодом
* запускаем тесты
* получаем отчет о тестировании
## Замечания:
0. для Windows надо использовать только Ruby 2.0.0 по причине https://github.com/cucumber/gherkin/issues/257
1. работа под linux не поддерживает, за счет применения OLE соединений с 1С.
2. решение вопроса с сертификатом для RubyGems, скопировать файл с расширением pem https://gist.github.com/luislavena/f064211759ee0f806c88
## Известные публикации
* [Первичная публикация](http://habrahabr.ru/post/252473/)
* [Пример отчета Allure на основе тестов](http://youtu.be/982gF1wY8sM)
## Вдохновение черпается
* [Огурец](https://cukes.info/)
* [Автоматизированное тестирование 1С](http://v8.1c.ru/overview/Term_000000816.htm)
* [Yandex Allure](http://allure.qatools.ru/)
* [Silenium](http://docs.seleniumhq.org/)
* [ТРИЗ](https://ru.wikipedia.org/wiki/%D0%A2%D0%B5%D0%BE%D1%80%D0%B8%D1%8F_%D1%80%D0%B5%D1%88%D0%B5%D0%BD%D0%B8%D1%8F_%D0%B8%D0%B7%D0%BE%D0%B1%D1%80%D0%B5%D1%82%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D1%81%D0%BA%D0%B8%D1%85_%D0%B7%D0%B0%D0%B4%D0%B0%D1%87)
* [Дэн Норт](http://en.wikipedia.org/wiki/Acceptance_test-driven_development)