Skip to main content

Generation gitlab/github <= .feature file

Project description

Cucmber generator

Для создания .feature файлов на основе html tags. Необходимую информацию для .feature файлов берем из epic/issue GitLab и GitHub.

Установка

Вводим в терминал следующую команду

pip install --upgrade generator-cucumber

или вносим в requirements.txt

generator-cucumber==0.0.18

Пример работы generator-cucumber

  1. Создаем epic и добавляем специальных tags (дублирующие ключевые слова языка Gherkin)

<src-1> <src-1-1>

<scenario>Напишем сценарий</scenario>

<given>Здесь добавим given</given> <when>Здесь добавим when</when> <then>Здесь добавим then</then>

<group> <then>Таблица THEN<groupin>``````</groupin>``````</then>

Наименование Что-то
<examples>Первый</examples> 1
<examples>Второй</examples> 2
<examples>Третий</examples> 3

</group>

</src-1-1> </src-1>

  1. В GitLab Epic будет выглядить следующим образом

Напишем сценарий

Здесь добавим given
Здесь добавим when
Здесь добавим then

Таблица THEN
Наименование Что-то
Первый 1
Второй 2
Третий 3
  1. После установки generator-cucumber создаем тест (например test_example.py)
import sys
import os

from generator_cucumber import Generator

Generator.URL_GIT = 'https://gitlab.com/'
Generator.PRIVATE_TOKEN_GIT = 'gsdff-sdx5DkswkqSDFSSQnVL' #'здесь необходим ваш access token (для примeра)

Generator.create_cucumber(
    group_id=100, # номер группы в которой написан epic
    epi_iid=1, # номер  epic
    name_file='test_lib', # наименование файла .feature (любое удобное)
    scenario_number='src-1-1', # текст к которому относиться тест
    ssl_verify=True # если все ок с ssl, по умолчанию false
  1. После запуска теста сформируется .feature файл и папка featurecache для контроля изменений в тексте
# https://gitlab.com/python_epic/test_pr/-/issues/1
# Di
# 2024-08-01T01:48:53.366Z

Feature: Тестируем lib

    Scenario: Напишем сценарий

        Given Здесь добавим given

        When Здесь добавим when

        Then Таблица THEN  "<col_1>", "<col_2>", "<col_3>"
 
            Examples: col_1, col_2, col_3
                | col_1 | col_2 | col_3 |
                | Первый | Второй | Третий |

Html tags

HTML tag gherkin equivalent
"and" <and></and>
"background" <background></background>
"but" <but></but>
"examples" <examples></examples>
"feature" <feature></feature>
"given" <given></given>
"scenario" <scenario></scenario>
"scenarioOutline" <scenariooutline></scenariooutline>
"then" <then></then>
"when" <when></when>

Html tags +

HTML tag gherkin equivalent
"groupin" <groupin></groupin>
"scr-1-1" <scr-1-1></scr-1-1>

Стуктура проекта

# Проект по генерации .feature
├── 📁 generator_cucumber/
|   ├── 🐍 api_github.py        # для работы с github (не реализован)
|   ├── 🐍 api_gitlab.py        # Для работы с gitlab
|   ├── 🐍 bdd_generator.py     # Для работы с py и подготовка шаблона по cucmber
|   ├── 🐍 cache_file.py        # создание файлов cache
|   ├── 🐍 create_file.py       # Обработка файлов cache и .feature
|   ├── 🐍 cucumber_text.py     # Формирование .feature текст
|   └── 🐍 generator.py         # входная точка
└── ... 

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

generator_cucumber-0.0.18.tar.gz (68.2 kB view details)

Uploaded Source

Built Distribution

generator_cucumber-0.0.18-py3-none-any.whl (12.5 kB view details)

Uploaded Python 3

File details

Details for the file generator_cucumber-0.0.18.tar.gz.

File metadata

  • Download URL: generator_cucumber-0.0.18.tar.gz
  • Upload date:
  • Size: 68.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.8.0

File hashes

Hashes for generator_cucumber-0.0.18.tar.gz
Algorithm Hash digest
SHA256 f352b2d5649becd66512beccb33896a19158ca6d8012ab217e887e74a7d3a6ca
MD5 33f7e2788571404f60b2ad2cc8422b09
BLAKE2b-256 db382df7ebef81b3b4634f0b5b336e2aff68bfb684c23f2d67383097147ce8f1

See more details on using hashes here.

File details

Details for the file generator_cucumber-0.0.18-py3-none-any.whl.

File metadata

File hashes

Hashes for generator_cucumber-0.0.18-py3-none-any.whl
Algorithm Hash digest
SHA256 39f14f14274add1d4f65c844b543d1a56e24a8d37c60112a2ba33956d2a322a6
MD5 b31f191f3cc3a533283389ac9b487b47
BLAKE2b-256 83e7e6042b4300ee43a9d79e983267dea91c7db2120c58c5f6a752fdac016deb

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page