Jira plugin integration test error 404 Edited

I am trying to create a simple integration test for a Jira plugin that naviagates to a page and asserts if he url is correct. I tried to create the test in two ways:

public class IntegrationTests {

@Rule
public TestRule funcTest = FuncTestRuleChain.forTest(this);

@Inject
private Navigation navigation;
@Inject
private URLAssertions urlAssertions;

@Test
public void navigateAsAdmin() {
navigation.login("admin", "admin");
navigation.gotoPage("/secure/HelloWorldAction.jspa");
urlAssertions.assertCurrentURLEndsWith("/secure/HelloWorldAction.jspa");
}
}
public class IntegrationTests extends BaseJiraFuncTest{

@Inject
private URLAssertions urlAssertions;

@Test
public void navigateAsAdmin() {
navigation.login("admin", "admin");
navigation.gotoPage("/secure/HelloWorldAction.jspa");
urlAssertions.assertCurrentURLEndsWith("/secure/HelloWorldAction.jspa");
}
}

 When I try to run them with tthe atlas-integration-test command I get following errrors: (Long version: https://pastebin.com/zv4PEeJr)

com.sun.jersey.api.client.UniformInterfaceException: Client response status: 404
at com.sun.jersey.api.client.WebResource.handle(WebResource.java:688)
at com.sun.jersey.api.client.WebResource.get(WebResource.java:193)
at com.atlassian.jira.functest.framework.backdoor.CacheCheckControl.checkSerialization(CacheCheckControl.java:18)
at com.atlassian.jira.functest.rule.CheckCachesRule.checkCaches(CheckCachesRule.java:44)
at com.atlassian.jira.functest.rule.CheckCachesRule.access$000(CheckCachesRule.java:15)
at com.atlassian.jira.functest.rule.CheckCachesRule$1.evaluate(CheckCachesRule.java:37)
at com.atlassian.jira.functest.rule.LoginAsRule$1.evaluate(LoginAsRule.java:32)
at org.junit.rules.TestWatcher$1.evaluate(TestWatcher.java:47)
at org.junit.rules.TestWatcher$1.evaluate(TestWatcher.java:47)
at com.atlassian.jira.functest.rule.WebTesterRule.evaluateLogException(WebTesterRule.java:114)
at com.atlassian.jira.functest.rule.WebTesterRule.access$100(WebTesterRule.java:28)
at com.atlassian.jira.functest.rule.WebTesterRule$1.evaluate(WebTesterRule.java:71)
at com.atlassian.jira.functest.rule.HttpUnitConfigurationRule$1.evaluate(HttpUnitConfigurationRule.java:25)
at com.atlassian.jira.functest.rule.StatementDecorator.evaluate(StatementDecorator.java:22)
at com.atlassian.jira.functest.rule.RestoreDataRule$1.evaluate(RestoreDataRule.java:32)
at com.atlassian.jira.functest.rule.StatementDecorator.evaluate(StatementDecorator.java:22)
at com.atlassian.jira.functest.rule.LogTimeRule$1.evaluate(LogTimeRule.java:52)
at org.junit.rules.RunRules.evaluate(RunRules.java:18)
at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:263)
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:68)
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:47)
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231)
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60)
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229)
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50)
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222)
at com.atlassian.jira.functest.rule.DisableBigPipeRule$1.evaluate(DisableBigPipeRule.java:44)
at com.atlassian.jira.functest.rule.RestoreDataOnlyOnce$1.evaluate(RestoreDataOnlyOnce.java:31)
at com.atlassian.jira.functest.rule.StatementDecorator.evaluate(StatementDecorator.java:22)
at org.junit.rules.RunRules.evaluate(RunRules.java:18)
at org.junit.runners.ParentRunner.run(ParentRunner.java:300)
at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:252)
at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:141)
at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:112)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray(ReflectionUtils.java:189)
at org.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:165)
at org.apache.maven.surefire.booter.ProviderFactory.invokeProvider(ProviderFactory.java:85)
at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:115)
at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:75)

 Strange is that the error also appears when the body of the test function is empty and when extending the class and using the navigator from the superclass. Is there something I overlooked?

2 answers

1 accepted

This widget could not be displayed.

The solution was to add:

@SkipCacheCheck

 to the class

I had the same issue and your solution worked perfectly. Thanks a lot for sharing. It saved me hours ! ;-)

This widget could not be displayed.
Alexey Matveev Community Champion Nov 17, 2017

Hello, 

Put @Named above classname. 

@Named
public class IntegrationTests {

@Rule
public TestRule funcTest = FuncTestRuleChain.forTest(this);

@Inject
private Navigation navigation;
@Inject
private URLAssertions urlAssertions;

@Test
public void navigateAsAdmin() {
navigation.login("admin", "admin");
navigation.gotoPage("/secure/HelloWorldAction.jspa");
urlAssertions.assertCurrentURLEndsWith("/secure/HelloWorldAction.jspa");
}
}

Thanks for the help. I tried it with the @Named annotation but still getting the same error.

Suggest an answer

Log in or Sign up to answer
Community showcase
Published Friday in Jira

New 5k User Limit and Other Cloud Updates

Hi all! Lauren here from the Enterprise Cloud marketing team.  I have some exciting Cloud updates from #AtlassianSummit that I wanted to share. We want everyone in your organization to be ab...

88 views 0 2
Read article

Atlassian User Groups

Connect with like-minded Atlassian users at free events near you!

Find a group

Connect with like-minded Atlassian users at free events near you!

Find my local user group

Unfortunately there are no AUG chapters near you at the moment.

Start an AUG

You're one step closer to meeting fellow Atlassian users at your local meet up. Learn more about AUGs

Groups near you