Я использую python для 40 тестов, которые я запускаю. Теперь я пытаюсь сделать более или менее достойный просмотр HTML-отчета для себя и своего клиента.python behave генерирует XML, который является «не корректным»
Выполняю тесты через командную строку: behave --junit. Далее я беру xml, разбираю его (elementtree) и пишу html-файл.
Мне удалось сделать это, в основном, за исключением того, что мне нужно вручную отредактировать xml, потому что в нем есть какие-то странные символы. Мне кажется, что эти символы действительно не должны быть там, а также пытаться просто игнорировать их (используя recover = true, как упоминалось, например, ParseError: not well-formed (invalid token) using cElementTree) не работает. (Без этого он дает мне сообщение о «неправильно сформированном (недействительном токене)», и с возможностью восстановления он просто игнорирует все после странных символов, что приводит к очень короткому протоколу теста)
Есть ли что-то, что я есть отсутствует? Может быть, что-то в организации или выполнении моих тестов поведения, которые приводят к результатам в этом сломанном XML?
Возможно, просто изучая, какими символами они являются, поэтому я пытаюсь написать код, чтобы просто заменить или удалить их, прежде чем разбор будет полезен.
Любая помощь приветствуется!
Cheerz,
Chai
Вот кусок XML с этими странными персонажами: Я вижу, что qouting его здесь уже делает это шоу по-разному, поэтому я добавил скриншот sublimetext, а также.
<testcase classname="screenshots.Features.Aanvraagformulier.Aanvraagformulier" name="Test 02 Veld validatie checken voor enkel veld zakelijke aanvraag" status="failed" time="79.278"><error message="Message: Time out bij t wachten op element met css of element niet gevonden: #pa..." type="NoSuchElementException">
<![CDATA[
Failing step: Given Dat ik ingelogd ben als aanvrager ... failed in 79.278s
Location: Features\Aanvraagformulier.feature:98
Traceback (most recent call last):
File "c:\python27\lib\site-packagesehave\model.py", line 1456, in run
match.run(runner.context)
File "c:\python27\lib\site-packagesehave\model.py", line 1903, in run
self.func(context, *args, **kwargs)
File "D:\Chai_Testspul\PythonScripts\sigmaspul\Featureslgemeen\general_steps.py", line 57, in dat_ik_ingelogd_ben
login(context, email, password)
File "D:\Chai_Testspul\PythonScripts\sigmaspul\Featureslgemeen\page_commands.py", line 18, in login
wait_for_css(context.driver, '#passwordInput')
File "D:\Chai_Testspul\PythonScripts\sigmaspul\Featureslgemeen\page_commands.py", line 44, in wait_for_css
raise NoSuchElementException('Time out bij t wachten op element met css of element niet gevonden: ' + css)
NoSuchElementException: Message: Time out bij t wachten op element met css of element niet gevonden: #passwordInput
]]>
</error>
Благодарим вас за ответ. С этим я смог обойти эту проблему.Я согласен с тем, что было бы неплохо, если бы это было исправлено где-то вместо меня, работая вокруг него, но для меня это приемлемо сейчас. Так что еще раз спасибо! – Chai