serenity-bdd / serenity-jira

14 stars 27 forks source link

Cucumber + Jira integration ticket status workflow update #89

Closed grzegorzmlynarczyk closed 6 years ago

grzegorzmlynarczyk commented 6 years ago

Hi,

I saw a similar ticket, but it's dead since almost 2 years, so I'm creating a new one. I've got a problem with two way integration with Jira. I am able to pull requirements, stories and tickets from jira to my reports, and to produce comments under those tickets if necessary. However, the status of the ticket is never updated in Jira.

I'm attaching following files for clarity (all links and usernames had to be erased): log.txt pom.txt serenityproperties.txt

Here's my workflow:

when 'OPEN', {
    'success' should: 'Resolve Issuexx'
}

when 'REOPENED', {
    'success' should: 'Resolve Issue'
}

when 'RESOLVED', {
    'failure' should: 'Reopen Issue'
}

when 'IN PROGRESS', {
    'success' should: ['Stop Progress','Resolve Issue']
}

when 'CLOSED', {
    'failure' should: 'Reopen Issue'
}

I've already tried sticking to the default plugin workflow, changing the cases of the statuses, and also using thucydides properties - nothing seems to work.

cliviu commented 6 years ago

Hmm, do you have

Resolve Issuexx

?

cliviu commented 6 years ago

please set the property serenity.public.url , let me know if it works

grzegorzmlynarczyk commented 6 years ago

Hi,

Hmm, do you have

Resolve Issuexx

?

Yes, sorry - it was a typo, still not working.

please set the property serenity.public.url , let me know if it works

No changes.

cliviu commented 6 years ago

Hmm, can you please post the log after setting serenity.public.url to a non empty value ? Try also setting thucydides.public.url to a non empty value

grzegorzmlynarczyk commented 6 years ago

Fixed an issue by adding

serenity.test.root=net.thucydides.showcase.cucumber.junit

to serenity.properties. I have no idea what it does, but I saw it in couple of projects. Any clarity on that property? I'm curious, because it's not in the documentation.

cliviu commented 6 years ago

Did setting the serenity.public.url helped ?

cliviu commented 6 years ago

you find here the documentation

serenity.test.root

The root package for the tests in a given project. If provided, Serenity will use this as the root package when determining the capabilities associated with a test. If you are using the File System Requirements provider, Thucydides will expect this directory structure to exist at the top of the requirements tree. If you want to exclude packages in a requirements definition and start at a lower level in the hierarchy, use the serenity.requirement.exclusions property.

This is also used by the PackageAnnotationBasedTagProvider to know where to look for annotated requirements. here you can also find an explanation https://dzone.com/articles/configuring-different-output-directories-with-sere

The serenity.test.root property is also important if you are writing your tests in JUnit because this tells Serenity what package root to use as a starting point for the requirements reporting. The package tree underneath this package will become the requirements tree in the reports.

try to play a bit with the property to get a feeling how the report is changing