FirebirdSQL / firebird-qa

Python tools used for Firebird QA
https://firebirdsql.org/en/devel-qa/
MIT License
3 stars 6 forks source link

Change tests/bugs/core_3690_test.py. Add test for dialect 1. #11

Closed ant-zuev closed 1 year ago

ant-zuev commented 1 year ago

Combine tests bugs.core_3690_dialect_1 and bugs.core_3690_dialect_1 in tests/bugs/core_3690_test.py.

pavel-zotov commented 1 year ago

Unfortunately, we have to SPLIT this test on two separate ones. This is because pytest shows TWO lines for both test_N functions, and it will cause to big problem for proper interpreting of test results in the current QA-batch scenarios (.bat and .sh) which create HTML report. Yes, this problem relates to the nature of legacy test suite (FBT) where one file could have only one "testing module". But this was/is very convenient to make visual representation of results: one cell in html table contains outcome of only one testing task. Otherwise, one need to think how to show results of such 'complex' tests in HTML and, more important, how to properly filtering them if some of test_NN functions finished OK but other(s) failed. IMO, this is too complicated task that requires lot of efforts. At least currently it is not good time to re-implement all scripts for that. So, I will split this test on two.

PS. Please see attached screen. I've enclosed lines which will cause problem for interpretation. Untitled

ant-zuev commented 1 year ago

Do you not use xml-report to parse the results?

pavel-zotov commented 1 year ago

Do you not use xml-report to parse the results?

QA-scripts do that. But the problem not in parsing per se. Rather, it is about re-implementing another script that makes HTML report.

ant-zuev commented 1 year ago

See you have devided the test into two ones so I'm closing the PR. I looked xml results with different test files and single test file. I think that it’s necessary to use both attributes ("classname" and "name") of each test from the xml to form the full test name. Otherwise it will be impossible to use test classes and group tests into one file.

pavel-zotov commented 1 year ago

qa-html-report-example Currently HTML report looks like it is shown in attached .png For every test there is N rows where N = number of checked server modes (nowadays only two are checked: SS and CS). If we want to put several test functions in a single file (say, one for dialect-1 and second for dialect3) then they also must be shown in this report, as separate rows, e.g.:

core-0733 dialect-1 CS
core-0733 dialect-3 CS
core-0733 dialect-1 SS
core-0733 dialect-3 SS

I see no much difference between that and if we include in the test name some kind of 'suffix' that will reflect this test additional feature:

core-0733-dialect-1 CS
core-0733-dialect-3 CS
core-0733-dialect-1 SS
core-0733-dialect-3 SS

Anyway, we have four rows in both cases. So, what's new we will get with such attribute as 'classname' ? Or i misunderstand something ? (and, if yes, then maybe better to discuss this in email using our native lang ? :))