Я создал библиотеку с машинописным текстом, и мои тесты тоже написаны на машинописном тексте. Я действительно хотел бы попробовать cucumber.js и создать файлы определения шагов с помощью машинописного текста. Итак, вы поддерживаете coffeescript и js, .ts тоже было бы неплохо.
С Уважением
Крис
Почему бы вам не отправить запрос на перенос @ Chris2011
Я буду только клиентом этого проекта, когда я выполняю каждый запрос на перенос каждого материала, который я использую, и чего-то не хватает, чем я могу создать его самостоятельно. Это всего лишь запрос функции. Если у кого-то есть время и он хотел бы этим заняться, почему бы и нет. У меня нет, потому что у меня нет времени, у меня такая же обычная работа и другие проекты, и я не хочу участвовать в каждом проекте, который я использую. Может быть, извинитесь за резкие слова, но для меня очевидно, что невозможно участвовать в каждом проекте, который я использую. Я должен понимать источник и так далее.
Я понимаю @ Chris2011. Может быть, однажды кто-то решит потратить время на реализацию этого, потому что он хочет вам помочь или просто ради развлечения.
Более реалистичный сценарий состоит в том, что этот запрос функции остается открытым до тех пор, пока кому-то он не понадобится, чтобы он был готов потратить время и усилия на его реализацию и отправку PR.
Может быть. Спасибо за ваше мнение. На мой взгляд, было логично просить об этой функции, потому что TS будет более популярным в течение 1-2 лет. И когда вы или кто-то другой решили реализовать coffeescript, почему бы и не машинописный текст?
Большое спасибо. Посмотрим, что будет ...
В общем, как и в случае с форматерами, я бы хотел, чтобы поддержка языков и диалектов была сторонними плагинами, а не частью ядра (включая текущие CoffeeScript и PogoScript).
TS +1
+1
Нравится, пожалуйста, сделайте это когда-нибудь !!!
: +1:
Никакое количество +1 или: +1: этого не сделает. Кто-то должен отправить запрос на перенос.
: +1: @aslakhellesoy место на
: 8ball: @samccone
@jbpros @aslakhellesoy единственное, что нужно сделать для поддержки сторонних языков, - это реализовать способ изменения:
SupportCodePathExpander.SUPPORT_CODE_FILES_IN_DIR_REGEXP = /\.(js|coffee|pogo)$/;
И тогда любой желающий может зарегистрировать любой транспилятор в support/env.js
например
может быть, это регулярное выражение следует вообще удалить?
Я счастлив на это смотреть. Я могу найти файл функций coffeeScript, но не могу найти, где реализованы определения шагов, пожалуйста, не мог бы кто-нибудь дать мне несколько указателей относительно того, что нужно сделать?
@SeanFarrow Я уже сделал это локально. Вам просто нужно изменить /lib/cucumber//cli/argument_parser/support_code_path_expander.js:12
а затем добавить любой транспилятор с помощью хука require.
Собираетесь отправить пиарщика?
От: Олег Кашников [mailto: [email protected]]
Отправлено: 16 августа 2015 19:15
Кому: cucumber / cucumber-js [email protected]
Копия: Шон Фэрроу Шон. [email protected]
Тема: Re: [cucumber-js] Пожалуйста, добавьте поддержку TypeScript (# 335)
@SeanFa rrowhttps: //github.com/SeanFarrow Я уже сделал это локально. Вам просто нужно изменить /lib/cucumber//cli/argument_parser/support_code_path_expander.js:12, а затем добавить любой транспилятор с помощью хука require
-
Ответьте на это письмо напрямую или просмотрите его на Gi tHubhttps: //github.com/cucumber/cucumber-js/issues/335#issuecomment -131598410.
@mkusher - это еще не все. Для полноты, фрагменты определений шагов также должны быть доступны на дополнительном языке (что в настоящее время не выполняется для PogoScript), см. Флаг CLI --coffee
.
Я бы очень хотел, чтобы это было сделано через систему плагинов / транспиляторов и удалило все диалекты из ядра (включая coffeescript).
Я не понимаю, зачем вообще нужна языковая поддержка? Не могли бы вы просто перенести определения шагов в JavaScript как часть процесса сборки?
Да, # 398 исправит это.
@henrify единственное, что «нужно» добавить в Cucumber, - это поддержка фрагмента определения шага для других языков. В настоящее время они по умолчанию находятся в ванильном JS и могут быть выведены в CS с флагом --coffee
CLI.
Мы могли бы просто полностью отказаться от фрагментов, не относящихся к JS (включая CS?). Мысли?
@jbpros с момента обновления readme, и это заметно проявляется в результатах для "cucumber typescript"
, отрывок:
-Определения шагов и файлы поддержки могут быть написаны на других языках с возможностью преобразования в javascript.
-Это делается с помощью параметра командной строки --compiler <file_extension>:<module_name>
. Для CoffeeScript 1.10.0,
-это делается с помощью --compiler coffee:coffee-script/register
.
Определения шагов и файлы поддержки могут быть написаны на других языках, которые могут быть преобразованы в javascript. Это делается с помощью параметра командной строки --compiler <file_extension>:<module_name>
.
Установите пакет NPM для кофейного скрипта и вызовите Cucumber с помощью --compiler coffee:coffee-script/register
.
Установите пакет NPM для машинописного узла и вызовите Cucumber с помощью --compiler ts:typescript-node/register
.
Как обычно, все ваши определения шагов и файлы поддержки должны экспортировать функцию, которая будет запускаться Cucumber. Вот как это делается в TS:
declare var module: any;
module.exports = function () {
this.Given(/.*/, function () {
// ...
})
}
Установите пакет pogo NPM и вызовите Cucumber с помощью --compiler pogo:pogo
.
Действительно ли нужно использовать машинный узел? Можно ли использовать официальный поддерживаемый tsc вместо машинописного узла? Я не знаю различий, но tsc официально поддерживается Microsoft.
@ Chris2011 ts-node
- это просто перехватчик регистра для node.js, который будет запускать компиляцию через tsc
Хорошо, спасибо.
@JoshuaKGoldberg, где выдержка? Мои поиски не нашли его.
Образец, который поможет вам в cucumberjs с использованием машинописного текста:
https://github.com/AbraaoAlves/cucumber-protractor-typescript-boilerplate
Спасибо @AbraaoAlves за образец.
К сожалению, это работает только с cucumberjs 1. Слой protractor-cucumber-framework несовместим с cucumber2 rcs.
как прикрепить скриншот в огурцовом отчете. Я использую машинописный язык. Пожалуйста, помогите мне.
Пожалуйста, подтвердите, не возникнут ли проблемы с совместимостью огурец + транспортир + Typescript ... поскольку мы планируем использовать эту комбинацию для наших реализаций ..
@Rajazpandi
Сделайте что-нибудь подобное в After
driver.takeScreenshot().then(data => {
attach(new Buffer(data, 'base64'), 'image/png');
}).catch(error => {
info(error);
throw error;
});
Этот поток был автоматически заблокирован, поскольку после его закрытия в последнее время не было никаких действий. Пожалуйста, откройте новую проблему для связанных ошибок.
Самый полезный комментарий
@jbpros с момента обновления readme, и это заметно проявляется в результатах для
"cucumber typescript"
, отрывок:Транспилеры
-Определения шагов и файлы поддержки могут быть написаны на других языках с возможностью преобразования в javascript.
-Это делается с помощью параметра командной строки
--compiler <file_extension>:<module_name>
. Для CoffeeScript 1.10.0,-это делается с помощью
--compiler coffee:coffee-script/register
.Определения шагов и файлы поддержки могут быть написаны на других языках, которые могут быть преобразованы в javascript. Это делается с помощью параметра командной строки
--compiler <file_extension>:<module_name>
.CoffeeScript
Установите пакет NPM для кофейного скрипта и вызовите Cucumber с помощью
--compiler coffee:coffee-script/register
.Машинопись
Установите пакет NPM для машинописного узла и вызовите Cucumber с помощью
--compiler ts:typescript-node/register
.Как обычно, все ваши определения шагов и файлы поддержки должны экспортировать функцию, которая будет запускаться Cucumber. Вот как это делается в TS:
PogoScript
Установите пакет pogo NPM и вызовите Cucumber с помощью
--compiler pogo:pogo
.