Closed ohank closed 4 years ago
@DzmitryHumianiuk It is good you know the problem and has a plan to fix it =) The thing that is nuclear for me is that in reportportal 4.3 this was working. Have something change in reportportal 5 so this behavior happens based on the architectural decision?
@ohank where was no big changes for the structure from v4.3 to v5.
Maybe just minor cleans ups from UI side, in order to minimize the move in RPv6.
My suggestion to get it work: change it in client. Send your tests as type STEP.
Continue here and close the other case.
My suggestion to get it work: change it in client. Send your tests as type STEP.
I don't know how to do that. Do I change in pytest agent?
Just my two cents, I'm not gonna approve any change to the agent where the test items will be changed to be reported as steps. Fixing a defect through creation of one more defect is not an option.
That's not a defect. That is misleading in naming, which is read literally.
We follow the next structure principle in RP:
Level0 = Launch
Level1 = Suite
Level2 = TestClass
Level3 = TestCase
Level4 = Step of TestCase
Assuming the fact that you can have multiple levels of suite, it looks as
Level0 = Launch
Level[1...N] = Suite
Level(N+1) = TestClass
Level(N+2) = TestCase
Level(N+3) = Step of TestCase
There is no difference, how will you name levels. since it's just a defined value of variable, which points to specific level of nesting.
it can be name as:
`Sky` = Launch
`Eatrh` = Suite
`Dog` = TestClass
`Cat` = TestCase
`Mice` = Step of TestCase
and once you send RQ to RP saying that it is a testItem with type Cat
, it will know that this object should be shown as TestCase.
Now, we have defined next structure of naming. Which is common for every every every client and agent. And for UI as well.
`Launch` = Launch
`Suite` = Suite
`Test` = TestClass
`Step` = TestCase
`NestedStep` = Step of TestCase
Which means that you should send variable type=STEP
in order to see it as TestCase
on UI.
But this brings misleading for people from the common sense standpoint. They do expect to see Step, by sending type=STEP
instead of type=TEST
.
Everything in RP and all integration now follows this approach.
Thus I mean that python client should follow this concept as well.
Cause once we will bring changes in type naming for RP 6, we can make it in centralized way: by updating the databases during version update, or by adding alias in API for this type. But it should be common for every integration, in order for us to make this modification as simple and fast as possible.
@iivanou don't read STEP
value as step literally, just read it as combination of 4 letters, which points to TestCase object for entire ReportPortal.
@iivanou that's architectual desicion fail, made 7 years ago. We named objects corresponding to Test Case as steps, assuming the option to involve BDD.
Now we have nested steps.
And change of STEP type to TEST will affect all variety of our agents, clients and UI as well. We plan this big step for RP 6.
Originally posted by @DzmitryHumianiuk in https://github.com/reportportal/agent-python-pytest/issues/182#issuecomment-610428925