2010-10-14 2 views
0

Я не программист, поэтому, пожалуйста, прощайте, если моя проблема довольно легко решить для многих из вас (но я все равно могу сбить с толку).Автоматическое добавление объявления стилей в файлы xi_reporter xml

Проблема, с которой я столкнулся, - это ci_reporter, драгоценный камень для использования с Watir и Test/Unit.

Он выводит результаты теста из теста Watir в файл xml. Отлично. К сожалению, я не могу найти способ, чтобы ci_reporter добавлял объявление xsl stylesheet сразу после объявления xml.

<?xml version="1.0" encoding="UTF-8"?> 
<testsuite time="6.796" assertions="1" name="TC_LoginTests" failures="0" tests="1" skipped="0" errors="0"> 
    <testcase time="6.796" assertions="1" name="test_loginValid"> 
    </testcase> 

То, что я хочу, чтобы это сделать, это:

<?xml version="1.0" encoding="UTF-8"?> 
<?xml-stylesheet type="text/xsl" href="stylesheet.xsl"?> 
<testsuite time="6.796" assertions="1" name="TC_LoginTests" failures="0" tests="1" skipped="0" errors="0"> 
<testcase time="6.796" assertions="1" name="test_loginValid"> 
</testcase> 

Я думал, что, возможно, было бы параметр установить где-нибудь, но я не нашел его, если есть один. Будет довольно утомительно добавлять объявление стилей вручную каждый раз.

Есть ли простое решение этой проблемы?

ответ

0

Я не думаю, что вы сможете достичь того, чего хотите, без взлома источника ci_reporter. ci_reporter предназначен для вывода XML-файлов формата JUnit и не предлагает каких-либо изменений.

Я бы оставил XML-вывод таким, какой он есть, а затем используйте что-то еще, чтобы применить преобразование xsl в качестве вторичного шага.

+0

Это похоже на правильный способ делать вещи, видя, как мы будем использовать Хадсон , но еще не получили Watir с ним. Другой подход, на который вы указывали мне по-прежнему, кажется, что это нормально (если немного уродливый) способ сделать что-то, если вы еще не используете такой инструмент, как Хадсон. – anonygoose

0

Оказывается, это довольно просто сделать, изменив файл test_suite.rb в gem ci_reporter. Не уверен, как это правильно, но он заставляет его делать то, что мне нужно.

В методе to_xml, мы изменили следующую строку:

builder.instruct! 

вместо этого читать

builder.instruct! 
builder.instruct! 'xml-stylesheet', {:href=>'output.xsl', :type=>'text/xsl'} 
Смежные вопросы