Проблемы с «Совокупными результатами испытаний» в Гудзоне

Иногда с помощью персонажей, которые вы указали, возможно простое экранирование. Например, использование обратной косой черты для выхода из скобки не будет работать в левой части строки подстановки в sed, а именно

sed -e 's/foo\(bar/something_else/'

. Я просто использую простое определение класса символов вместо , поэтому вышеприведенное выражение становится

sed -e 's/foo[(]bar/something_else/'

, которое я нахожу для большинства реализаций регекса.

BTW Классы символов являются довольно ванильными элементами регулярного выражения, поэтому они, как правило, работают в большинстве ситуаций, когда вы нужны экранированные символы в регулярных выражениях.

Изменить: после комментария ниже, просто подумал, что я бы упомянул о том, что вам также нужно учитывать разницу между автоматами конечного состояния и автоматами не конечного состояния при просмотре поведение оценки regexp.

Возможно, вам захочется взглянуть на «блестящую книгу с шаром», а также на эффективную Perl ( санированную ссылку Amazon ), в частности главу о регулярных выражениях, чтобы получить почувствуйте тогда разницу в типах оценки двигателя regexp.

Не все в мире PCRE!

В любом случае, регулярные выражения настолько неуклюжи по сравнению с SNOBOL ! Теперь это был интересный курс программирования! Наряду с тем, что на Simula .

Ах, радости изучения в UNSW в конце 70-х! (-:

11
задан Rob Hruska 23 December 2008 в 20:27
поделиться

4 ответа

Я смог копировать Вашу проблему с Hudson 1.266. Это Гудзонская ошибка, которая была зафиксирована в более поздней сборке (до 1,287), таким образом, или обновление Гудзон или используют это обходное решение с двумя щелчками: от страницы Project перейдите сначала к Последней Сборке и затем Агрегированным Результатам испытаний.

Проблема состоит в том, что страница Project для Foo только показывает Последнюю ссылку Результатов испытаний, которая имеет URL как http://localhost:8080/hudson-1.266/job/Foo/lastBuild/testReport/. Так как у Foo нет собственных тестов, эта ссылка не имеет никакого XML-файла JUnit к ссылке и возвращает ошибку, которую Вы упомянули. Это было зафиксировано где-нибудь между 1,266 и 1.287 путем перенаправления от latestBuild/testReport/назад до latestBuild/, когда нет никаких тестов. Альтернатива для Вас в 1,266 к, вместо того, чтобы нажать на Latest Test Results на странице Project, прокрутите немного вниз и нажмите на Latest Build под Постоянными ссылками. Это возьмет Вас к latestBuild/URL, и оттуда можно нажать на Aggregated Test Result, который имеет URL как http://localhost:8080/hudson-1.266/job/Foo/lastBuild/aggregatedTestReport/. На этой странице все Ваши результаты испытаний из нисходящих проектов будут доступны под разделом Drill Down.

К сожалению, существует все еще проблема со ссылками Развертки, даже в 1,287. От Нечто, когда Вы выполняете развертку к Тестам Нечто, как обрисовано в общих чертах выше, Вы будете взяты к уродливому URL, который похож на http://localhost:8080/hudson-1.287job/Foo-Tests/. Необходимо будет вручную изменить тот URL для вставки / между гудзонским контекстом и путем задания после него так, чтобы он был похож на http://localhost:8080/hudson-1.287/job/Foo-Tests/. Затем Вы сможете на самом деле видеть нисходящие результаты испытаний.

У меня не было шанса просмотреть Гудзонский источник для нахождения ошибки, но уже существует проблема, открытая для этого. Его выпуск 1574 и его открытое в течение почти года.

На ноте стороны я действительно люблю Гудзон за CI, но их интерфейс не является столь гладким, как это могло быть. Я с нетерпением жду их переделывать UI в ExtJS. Возможно, это - то, на чем они проводят все свое время.

3
ответ дан 3 December 2019 в 09:21
поделиться

Я зафиксировал пропавших без вести '/' проблема в Hudson 1.288

Ключ к использованию агрегата в нисходящем направлении тестирует результаты, должен выполнить снятие отпечатков пальцев на обоих заданиях. В этом случае это был бы 'Foo' и 'тесты Нечто'

Гудзон подходит сборку с нисходящими тестами путем нахождения файлов с идентичными цифровыми отпечатками. Таким образом, это означает, что Ваши цифровые отпечатки должны соответствовать. Отчасти как место преступления.

2
ответ дан 3 December 2019 в 09:21
поделиться

Мы используем Hudson ver. 1.324 и были аналогичные проблемы. Хотя вы упомянули, что пытались включить снятие отпечатков пальцев, у вас это не сработало, но у нас это сработало. Мы следовали инструкциям, приведенным здесь:

http://shotgunsandpenguins.blogspot.com/2009/07/how-to-aggregate-downstream-test.html

5
ответ дан 3 December 2019 в 09:21
поделиться

два проекта, Foo и Foo-Test, должны знать, что находятся в одном потоке, поэтому он берет отпечатки пальцев (и, следовательно, архивирует) общего файла.

у меня был чтобы выбрать файл, который не изменился между запуском Foo и Foo-Test и все еще изменялся между запусками обоих. для меня это был несвязанный временный .jar, созданный Foo в настраиваемой / общей рабочей области для моих версий Foo и Foo-Test.

то есть, мне пришлось позволить Foo и Foo-Test отпечатать один и тот же файл.

после этого, по крайней мере, с Hudson 1.330, все заработало - агрегированные ссылки, детализация и т. Д.

2
ответ дан 3 December 2019 в 09:21
поделиться
Другие вопросы по тегам:

Похожие вопросы: