@Deprecated public abstract class

JIRAWebTest

extends AbstractAtlassianWebTestCase
implements FunctTestConstants EnvironmentAware
java.lang.Object
   ↳ junit.framework.Assert
     ↳ junit.framework.TestCase
       ↳ net.sourceforge.jwebunit.WebTestCase
         ↳ com.atlassian.jira.webtests.WebTestCaseWrapper
           ↳ com.atlassian.jira.webtests.AbstractAtlassianWebTestCase
             ↳ com.atlassian.jira.webtests.JIRAWebTest
Known Direct Subclasses
Known Indirect Subclasses

This class is deprecated.
This is a legacy class that evolved as a result of a 'stuff every util into the base class' approach. It is probably one of the fattest classes in the JIRA code base. It has been replaced by FuncTestCase that attempts to separate its various responsibilities into multiple helper classes. Always use FuncTestCase for new func tests and attempt to migrate old tests to use it whenever possible.

Class Overview

Base web test for JIRA. Extend this to make a functional test.

See Also

Summary

Nested Classes
interface JIRAWebTest.ParameterEnterer  
Constants
String BULK_TRANSITION_ELEMENT_NAME
String FIELD_SCOPE_GLOBAL
float JDK_1_5_VERSION
String PAGE_ENTERPRISE_FIELD_CONFIGURATIONS
String PAGE_ISSUE_TYPE_SCREEN_SCHEMES
String PAGE_NOT_STANDARD_VIEW_FIELD_SCREEN_SCHEMES
String PAGE_USER_BROWSER
[Expand]
Inherited Constants
From interface com.atlassian.jira.functest.framework.FunctTestConstants
Fields
protected Administration administration Use this field to access the Administration helper in play
protected Assertions assertions Use this field to access the Assertions helper in play
protected Backdoor backdoor Use this field to access the Backdoor helper in play, which can make sly RPCs to the server.
protected JIRAEnvironmentData environmentData Use this field to access the com.atlassian.jira.webtests.util.JIRAEnvironmentData in play
protected Form form Used to set form values in tests.
protected IssueTableAssertions issueTableAssertions Use this field to access the IssueTableAssertions helper in play
protected IssueTableClient issueTableClient
protected LocatorFactory locator Use this field to access the LocatorFactory in play
protected FuncTestLogger log Use this field to access the com.atlassian.jira.testkit.client.log.FuncTestLogger in play
protected Navigation navigation Use this field to access the Navigation helper in play
protected HtmlPage page Used to find out about the current HTML page that the test is on.
protected Parser parse Use this field to access the Parser helper in play
protected TextAssertions text Use this field to access the TextAssertions helper in play
[Expand]
Inherited Fields
From class net.sourceforge.jwebunit.WebTestCase
From interface com.atlassian.jira.functest.framework.FunctTestConstants
Public Constructors
JIRAWebTest(String name)
JIRAWebTest(String name, JIRAEnvironmentData environmentData)
Public Methods
@Deprecated void activateIssueLinking()
This method is deprecated. Use enable() instead.
@Deprecated void activateSubTasks()
This method is deprecated. Enables sub-tasks. Use enable() instead.
@Deprecated void activateTimeTracking()
void activateWorkflow(String workflow_name)
void addColumnToIssueNavigator(String[] fieldNames)
void addColumnToIssueNavigatorById(String[] fieldIds)
String addComponent(String projectName, String name, String componentLead)
Adds a component with the given name and component lead to the projectName with the given name.
String addComponent(String projectName, String name)
Adds a component with the given name (and no lead) to the projectName with the given name.
String addCustomField(String fieldType, String fieldName)
Creates a global custom field for all issue types with the given details.
String addCustomField(String fieldType, String fieldScope, String fieldName, String fieldDescription, String issueType, String project, String searcher)
void addCustomFieldOption(String fieldId, String fieldOption)
String addCustomFieldWithMultipleIssueTypes(String fieldType, String fieldScope, String fieldName, String fieldDescription, String[] issueTypes, String project, String searcher)
void addEventType(String name, String description, String template)
void addFieldLayoutScheme(String scheme_name, String scheme_desc)
void addFieldLayoutSchemeEntry(String issueTypeName, String fieldLayoutName, String schemeName)
void addFieldScreenScheme(String schemeName, String schemeDescription, String fieldScreenDefault)
void addFieldToFieldScreen(String screenName, String fieldName, String position)
void addFieldToFieldScreen(String screenName, String fieldName)
void addFieldToFieldScreenTab(String screenName, String tabName, String fieldName, String position)
void addFieldsToFieldScreen(String screenName, String[] fieldNames)
void addGroupToProjectRole(String groupName, String projectName, String roleName)
void addGroupToSecurityLevel(String scheme_name, String level_name, String groupName)
void addGroupToSecurityLevel(String scheme_name, String level_name, String groupName, String[] expectedGroups)
String addIssue(String project, String projectKey, String issueType, String summary)
This method is deprecated. please use createIssue(String, String, String)
String addIssue(String project, String projectKey, String issueType, String summary, String priority, String[] components, String[] affectsVersions, String[] fixVersions, String assignTo, String environment, String description, String originalEstimate, String securityLevel, String dueDate)
Adds an issue to the given project returning its key.
void addIssueOnly(String project, String projectKey, String issueType, String summary, String priority, String[] components, String[] affectsVersions, String[] fixVersions, String assignTo, String environment, String description, String originalEstimate, String securityLevel, String dueDate)
add issue without getting its issue key
void addIssueOperationToScreenAssociation(String schemeName, String issueOperation, String screenName)
@Deprecated String addIssueType(String name, String desc, String iconUrl)
This method is deprecated. Use #addIssueType(String, String) - iconUrl no longer available from web.
String addIssueType(String name, String desc)
Creates a custom issue type with the given properties.
void addIssueTypeFieldScreenScheme(String schemeName, String schemeDescription, String defaultScreenScheme)
void addIssueTypeStatsPortlet(String filterName)
Adds a stats portlet with the filter name
void addIssueTypeToScreenAssociation(String issueTypeSchemeId, String issueType, String screenSchemeName)
String addIssueViaRest(String project, String projectKey, String issueType, String summary, String priority, String assignTo, String environment, String description)
Adds an issue to the given project returning its key.
IssueCreateResponse addIssueViaRestForResponse(String project, String projectKey, String issueType, String summary, String priority, String assignTo, String environment, String description)
void addLinkedStatus(String status_name, String status_desc)
void addPortlet(String portlet)
Adds the portlet with the given name up to the point where the portlet configuration form comes up.
@Deprecated long addProject(String name, String key, String lead)
This method is deprecated. Use addProject(String, String, String) instead.
@Deprecated void addProjectAdminPermission(int permission, String group)
void addRoleToSecurityLevel(String scheme_name, String level_name, String roleName)
void addScreen(String screenName, String screenDescription)
String addSubTaskToIssue(String issueKey, String subTaskType, String subTaskSummary, String subTaskDescription, String originalEstimate)
Adds a subtask with the given type and properties to the given issue.
@Deprecated String addSubTaskToIssue(String issueKey, String subTaskType, String subTaskSummary, String subTaskDescription)
This method is deprecated. please use createSubTask(String, String, String, String)
void addTabToScreen(String screenName, String tabName)
@Deprecated void addTransition(String workflow_name, String step_name, String transition_name, String transition_desc, String destination_step, String transitionFieldScreen)
This method is deprecated. Use addTransition(String, String, String, String, String) instead.
@Deprecated void addUser(String username)
This method is deprecated. Use addUser(String) instead.
@Deprecated void addUser(String username, String password, String fullname, String emailAddress)
This method is deprecated. Use addUser(String, String, String, String) instead.
@Deprecated void addUserToGroup(String userName, String groupName)
This method is deprecated. Use addUserToGroup(String, String) instead.
void addUserToProjectRole(String userName, String projectName, String roleName)
String addVersion(String project, String name, String description)
void addWorkFlow(String workflow_name, String workflow_desc)
Adds a workflow with the given name and description.
void addWorkFlowScheme(String workflowscheme_name, String workflowscheme_desc)
void addWorkflowPostfunction(String workflowName, String stepName, String transitionName, String postFunctionName)
void assertErrorMsgFieldRequired(String fieldId, String project, String fieldDisplayName)
void assertFormElementHasValue(String formNameOrId, String fieldId, String expectedValue)
Assert form element with fieldId has expectedValue
void assertFormElementHasValue(String fieldId, String expectedValue)
Assert form element with fieldId has expectedValue
void assertFormElementWithNameHasValue(String fieldName, String expectedValue)
Assert form element with fieldName has expectedValue
void assertFormElementWithNameHasValue(String formNameOrId, String fieldName, String expectedValue)
Assert form element with fieldName has expectedValue
void assertFormTextAreaHasValue(String fieldId, String expectedValue)
Assert the form textarea has the expectedValue
void assertFormTextAreaHasValue(String formNameOrId, String fieldId, String expectedValue)
Assert the form textarea has the expectedValue
void assertIssueNavigatorDisplaying(String from, String to, String of)
void assertLastChangeHistoryIs(String issueKey, String field, String originalValue, String newValue)
void assertLastChangeNotMadeToField(String issueKey, String field)
void assertLinkPresentWithSubString(String linkId, String urlSubString)
Asserts that the link with the given id attribute exists and its href has the urlSubString
void assertLinkPresentWithURL(String linkId, String urlSuffix)
Asserts that the link with the given id attribute exists and its href ends with the given URL.
void assertLinkPresentWithoutSubString(String linkId, String urlSubString)
Asserts that the link with the given id attribute exists and its href does NOT have the urlSubString
void assertLinkWithTextUrlContains(String linkText, String[] strings)
Asserts that there exists a link on the current page with the given text the url of which has the given suffix.
void assertLinkWithTextUrlEndsWith(String linkText, String urlSuffix)
This method is deprecated. please use assertLinkLocationEndsWith(String, String)
void assertNoChangesForIssue(String issueKey)
void assertOptionSelected(String elementId, String expectedValue)
Asserts that the expectedValue has been selected for the form element with Id elementId.
void assertOptionSelectedById(String elementId, String expectedId)
Asserts that the expectedId has been selected for the form element with Id elementId.
void assertOptionsEqualIgnoreOrder(String selectName, String[] expectedOptions)
A more robust version of assertOptionsEqual(String, String[]).
void assertPageDoesNotExist(String assertionMessage, String url)
This will try and restrive the given URL and assert that it fails to be retrieved.
void assertRedirect(String path)
void assertRedirectPath(String s)
void assertRegexMatch(String regex, boolean multiline)
Detects whether or not the passed regular expression matches the page.
void assertTableCellHasText(String tableId, int row, int column, String text)
void assertTableHasMatchingRow(WebTable table, Object[] expectedRow)
void assertTableHasMatchingRowFrom(WebTable table, int minRow, Object[] expectedRow)
Asserts that the table has atleast one row matching the expectedRow
void assertTableHasMatchingRowFromTo(WebTable table, int minRow, int maxRow, Object[] expectedRow)
Asserts that the table has at least one row matching the expectedRow
void assertTableHasNoMatchingRow(WebTable table, Object[] expectedRow)
Asserts that the table has no row in the table matching the expectedRow
void assertTableHasNoMatchingRow(WebTable table, int minRow, Object[] expectedRow)
Asserts that the table has no row in the table matching the expectedRow between minRow and the end of the table
void assertTableHasNoMatchingRowFromTo(WebTable table, int minRow, int maxRow, Object[] expectedRow)
Asserts that the table has no row in the table matching the expectedRow between minRow and maxRow
void assertTableHasOnlyNMatchingRows(WebTable table, int n, Object[] expectedRow)
Asserts that the table has strictly 'n' number of rows in the table matching the expectedRow.
void assertTableHasSubTable(WebTable table, Object[][] expectedSubTable)
void assertTableRowEquals(WebTable table, int row, Object[] expectedRow)
void assertTextListNotPresent(Iterable<String> iterable)
Takes in a list of strings, iterates over them and asserts that each is *NOT* present
void assertTextListPresent(Iterable<String> iterable)
Takes in a list of strings, iterates over them and asserts that each is present
void assertUserIsMemberOfGroups(String username, Collection expectedGroupNames)
Check that the user with username is a member of the expectedGroupNames exactly.
void assertViewIssueFields()
void assignIssue(String issueKey, String comment, String userFullName)
This method is deprecated. please use assignIssue(String, String, String)
void assignWorkflowScheme(long workflowscheme_id, String issuetype, String workflow_name)
void associateFieldLayoutScheme(String project, String issue_type, String scheme_name)
void associateIssueTypeScreenSchemeToProject(String projectName, String screenScheme)
void associatePermSchemeToProject(String project, String permission_name)
Associate a permission scheme with a project
void associateSecuritySchemeToProject(String project_name, String scheme_name)
final void associateWorkFlowSchemeToProject(String project, String workflow_scheme, Map<StringString> statusMapping)
@Deprecated void associateWorkFlowSchemeToProject(String project, String workflow_scheme)
This method is deprecated. Use associateWorkflowScheme(String, String) instead.
void browseToFullConfigure()
void bulkChangeCancel()
Clicks on the 'Cancel' button on any of the bulk change steps
void bulkChangeChooseIssuesAll()
selects the checkbox with id all
Used in the Step Choose Issues
void bulkChangeChooseOperationDelete(boolean mailServerExists)
Chooses the Delete Operation radio button in the Step Choose Operation
void bulkChangeChooseOperationEdit()
Chooses the Edit Operation radio button in the Step Choose Operation
void bulkChangeConfirm()
Clicks on the 'Confirm' button on the confirmation steps
void bulkChangeIncludeAllPages()
simulates the clicking on bulk change all issues
void bulkChangeIncludeCurrentPage()
simulates the clicking on bulk change current page of issues
void bulkChangeSelectIssue(String key)
void bulkChangeSelectIssues(Collection keys)
void bulkEditConfirmEdit(Map<StringString> fields)
Checks in step Confirmation of edit operation before confirming, whether or not the selected fields have been made
DOES NOT goto the issues change log and check that they are changed after confirmation...
void bulkEditOperationDetailsSetAs(Map<StringString> fields)
Chooses the bulk action(s) you wish to perform on the selected issue.
void changeWorkflow(String issueKey, int actionKey)
@Deprecated void checkCommentVisibility(String usernameAndPassword, String issueKey, Iterable<String> expectedPresentComments, Iterable<String> expectedAbsentComments)
void checkEventTypeDetails(String eventTypeName, String eventTypeDesc, String status, String template, String notificationScheme, String workflow)
void checkItemsAreInAscendingOrder(String[] optionValue)
void checkNotificationForEvent(String eventTypeName, String notificationType, String template)
void checkOrderingUsingArrows(String[] optionValue, String[] optionId)
String checkOrderingUsingMoveToPos(String[] optionValue, String[] optionId, String itemType)
void chooseOperationBulkMove()
Chooses the Move Operation radio button in the Step Choose Operation
void chooseOperationExecuteWorfklowTransition()
Chooses the Execute Worfklow Action radio button in the Step Choose Operation
void clearComponentLead(String project, String component)
Clear component lead
@Deprecated void clickOnAdminPanel(String adminsubject, String adminpage)
void clickOnNext()
This method is deprecated. please use clickOnNext()
boolean componentExists(String component, String project)
void configureCustomFieldOption(String fieldId, String fieldOption)
void configureDefaultCheckBoxCustomFieldValue(String fieldId, String fieldOption)
void configureDefaultCustomFieldValue(String fieldId, String fieldOption)
void configureDefaultMultiCustomFieldValue(String fieldId, String fieldOption, String fieldOption2)
void copyFieldLayout(String fieldLayoutName)
void copyFieldScreenScheme(String copiedSchemeName, String schemeName, String schemeDescription)
void copyIssueTypeFieldScreenSchemeName(String copiedSchemeId, String schemeName, String schemeDescription)
void copyScreen(String copiedScreenName, String newScreenName, String screenDescription)
@Deprecated void copyWorkFlow(String original_workflow_name, String new_workflow_name, String new_workflow_desc)
This method is deprecated. Use copyWorkflow(String, String, String) instead.
void createClonersLinkType()
Creates the Cloners link type that JIRA creates between cloned issues.
String createCustomFields(String fieldType, String fieldScope, String fieldName, String fieldDescription, String issueType, String projectType, String[] fieldOptions)
@Deprecated void createGroup(String groupName)
This method is deprecated. Use addGroup(String) instead.
String createIssueLinkType(String name, String outwardLinkName, String inwardLinkName)
void createIssueStep1()
void createIssueStep1(String project, String issueType)
Collection<String> createIssuesInBulk(int numberOfIssues, String project, String projectKey, String issueType, String summary, String priority, String[] components, String[] affectsVersions, String[] fixVersions, String assignTo, String environment, String description, String originalEstimate, String securityLevel)
void createNewFieldScreen(String[] optionId)
void createPermissionScheme(String permission_name, String permission_desc)
Create a new permission scheme
void createProjectCategory(String categoryName, String categoryDescription)
void createSecurityLevel(String scheme_name, String level_name, String level_description)
void createSecurityScheme(String scheme_name, String scheme_description)
void createSessionSearchForAll()
void createSubTaskStep1(String issueKey, String task_type)
void createSubTaskType(String sub_task_name, String sub_task_description)
This method is deprecated. Use addSubTaskType(String, String) instead.
boolean customFieldExists(String fieldName)
@Deprecated void deactivateIssueLinking()
This method is deprecated. Use disable() instead.
@Deprecated boolean deactivateSubTasks()
This method is deprecated. Use disable() instead.
@Deprecated void deactivateTimeTracking()
This method is deprecated. Use disable() instead.
void delCustomFieldOption(String fieldId, String fieldOption)
void deleteAllFilter()
void deleteAllIssuesInAllPages()
void deleteComponent(String project, String name)
void deleteCustomField(String fieldId)
void deleteEventType(String name)
void deleteFieldLayoutScheme(String scheme_name)
void deleteFieldScreenScheme(String schemeName)
void deleteFilter(String filterName)
Deletes the filter with the given name if it exists.
@Deprecated void deleteIssue(String issueKey)
This method is deprecated. Use deleteIssue(String) instead.
void deleteIssueOperationFromScreenAssociation(String schemeName, String issueOperation)
void deleteIssueTypeFieldScreenScheme(String schemeId)
void deleteLinkedStatus(String statusId)
void deletePermissionScheme(String permission_name)
Deletes a permission scheme
void deleteProject(String project)
Delete project with the given name
void deleteProjectCategory(String categoryName)
void deleteScreen(String screenName)
void deleteSecurityLevel(String scheme_name, String level_name)
void deleteSecurityScheme(String scheme_name)
void deleteStep(String workflow_name, String step_name)
void deleteSubTaskType(String sub_task_name)
This method is deprecated. Use deleteSubTaskType(String) instead.
void deleteTabFromScreen(String screenName, String tabName)
void deleteTransition(String workflow_name, String step_name, String transition_name)
void deleteUser(String username)
void deleteVersion(Long id)
void deleteWorkFlow(String workflow_name)
void deleteWorkFlowScheme(String workflowscheme_name)
@Deprecated void disableIssueLinks()
This method is deprecated. Use disable() instead
void disableUnassignedIssues()
void displayAllIssues()
This method is deprecated. use displayAllIssues()
void doFieldOperation(String fieldName, String linkName)
void dumpResponse()
Simply dumps the web response, not necessarily because and error occurred.
void dumpResponse(Throwable t)
Dumps the web response because a Throwable condition exists.
void dumpScreen(String filename)
@Deprecated static <K, V> Map<K, V> easyMapBuild(K key1, V value1, K key2, V value2)
@Deprecated static <K, V> Map<K, V> easyMapBuild(K key1, V value1)
@Deprecated static <K, V> Map<K, V> easyMapBuild(K key1, V value1, K key2, V value2, K key3, V value3)
void editIssueType(String issueTypeId, String name, String description, Long avatarId)
Modifies the issue type with the given id to have the given properties.
void editIssueType(String issueTypeId, String name, String description, String iconUrl)
This method is deprecated. iconUrl is no longer available from web, use editIssueType(String, String, String, Long)
void editIssueType(String issueTypeId, String name, String description)
Modifies the issue type with the given id to have the given properties.
void editIssueWithCustomFields(String issueKey, List<CustomFieldValue> cfValues)
void editIssueWithCustomFields(String issueKey, String customFieldId, String customFieldValue, String customFieldType)
void editTransitionScreen(String workflow_name, String transition_name, String transitionFieldScreen)
void enableUnassignedIssues()
String extractFilterId(String filterName)
String extractIssueKey(String projectKey)
boolean fieldSchemeExists(String fieldSchemeName)
String findRowWithName(String fieldTableName, int column, String fieldName)
Administration getAdministration()
Backdoor getBackdoor()
String getComponentId(String project, String component)
JIRAEnvironmentData getEnvironmentData()
String getEventTypeIDWithName(String name)
Object getFormElement(String form, String elementId)
Gets the com.meterware.httpunit.FormControl with elementId in the specified form.
String getFormElementValue(String form, String elementId)
Get the single value of the field with elementId inside the form 'form'
String[] getFormElementValues(String form, String elementId)
Get the values of the field with elementId inside the form 'form'
Object getFormParameter(String form, String elementName)
String[] getFormParameterValues(String form, String elementName)
Map getFormParameters(String form)
@Deprecated String getIssueIdWithIssueKey(String issueKey)
Use getId(String) instead.
String getIssueKeyWithSummary(String summary, String projectKey)
float getJiraJavaVersion()
For the new framework version of this method, check out getJiraJavaVersion()
Navigation getNavigation()
HtmlPage getPage()
String getProjectId(String project)
String getRedirect()
String getRegexMatch(String regex)
Reads the HTML response text and finds the first group match for the given regex
List<String> getTableRowAsList(WebTable table, int row)
Get the specified row from the table as a list of trimmed strings.
String getTagBody(String startTag, String endTag, String html)
WebTester getTester()
String getTitle(String responseHtml)
FuncTestWebClientListener getWebClientListener()
void goToProject(String project_name)
Go to the project summary page for the given project.
@Deprecated void gotoAdmin()
This method is deprecated. Use gotoAdmin() or even better gotoAdminSection(com.atlassian.jira.functest.framework.Navigation.AdminSection) instead. If there is a specific method in Navigation to navigate to the admin page you want to go to, this should be the preferred way of navigating to it.

e.g gotoDashboard()

void gotoComponentBrowse(String projectKey, String componentName)
void gotoConvertIssue(String issueId)
void gotoConvertIssueStep2(String issueId, String parent, String issueType)
void gotoConvertSubTask(String issueId)
void gotoConvertSubTaskStep2(String issueId, String issueType)
void gotoCustomFields()
void gotoFieldLayoutConfiguration(String configuration)
void gotoFieldLayoutSchemes()
void gotoFieldLayouts()
void gotoFieldScreen(String screenName)
void gotoFieldScreenScheme(String schemeName)
void gotoFieldScreenScheme()
void gotoFieldScreenSchemes()
void gotoFieldScreenTab(String screenName, String tabName)
void gotoFieldScreens()
void gotoFilter(String filtername)
void gotoFilterById(long filterId)
This method is deprecated. please use loadFilter(long)
@Deprecated void gotoIssue(String issueKey)
This method is deprecated. Use gotoIssue(String) instead.
void gotoIssueSecuritySchemes()
void gotoIssueTabPanel(String issueKey, String issueTabName)
Goes to the specified issue tab panel for the issue with issueKy directly.
void gotoIssueTypeScreenScheme(String schemeName)
void gotoNavigator()
Goes to the navigator section, or, if already in the section, does nothing.
void gotoPage(String url)
void gotoPageNoLog(String url)
void gotoPermissionSchemes()
void gotoPluginsScreen()
@Deprecated void gotoProjectBrowse(String key)
void gotoProjectCategories()
void gotoProjectRolesScreen()
void gotoProjectTabPanel(String projectKey, String projectTabName)
Goes to the specified project tab panel for the project with projectKey directly.
void gotoVersionBrowse(String projectKey, String versionName)
@Deprecated void gotoWorkFlow()
This method is deprecated. Use goTo() instead.
void gotoWorkFlowScheme()
@Deprecated void grantGlobalPermission(int permissionCode, String groupName)
This method is deprecated. Use addGlobalPermission(GlobalPermissionKey, String) instead.
@Deprecated void grantGroupAllPermissions(String permission_scheme, String groupName)
This method is deprecated. broken do not use
@Deprecated void grantGroupPermission(String permission_scheme, int permission, String groupName)
@Deprecated void grantGroupPermission(int permission, String groupName)
This method is deprecated. Use addGroupPermission(Long, ProjectPermissionKey, String) from permissionSchemes() instead and pass {@value FunctTestConstants#DEFAULT_PERM_SCHEME_ID} as Long/the first argument.
@Deprecated void grantPermissionToReporter(int permission)
This method is deprecated. Use grantPermissionToReporter(ProjectPermissionKey) instead.
@Deprecated void grantPermissionToUserCustomField(String permissionScheme, String customFieldName, int permission)
@Deprecated void grantRolePermission(int permission, int role)
This method is deprecated. Use addProjectRolePermission(long, ProjectPermissionKey, long) from permissionSchemes() instead and pass {@value FunctTestConstants#DEFAULT_PERM_SCHEME_ID} as the first argument.
void init()
boolean isBeforeJdk15()
For the new framework version of this method, check out isJavaBeforeJdk15()
boolean isFormElementDisabled(String form, String elementId)
Checks if a form element has the disabled flag set.
boolean isJiraSetup()
boolean isMailServerExists()
void isStepChooseIssues()
Checks if the current step in bulk change is: Choose Issues
void isStepChooseOperation()
Checks if the current step in bulk change is: Choose Operation
void isStepConfirmation()
Checks if the current step in bulk change is: Confirmation.
void isStepOperationDetails()
This method is deprecated. please use assertStepOperationDetails()
void linkIssueWithComment(String currentIssueKey, String link, String destinationIssueKey, String comment, String commentLevel, String expectedText)
void linkIssueWithComment(String currentIssueKey, String link, String destinationIssueKey, String comment, String commentLevel)
boolean linkedStatusExists(String linkedStatus)
void logWorkOnIssue(String issueKey, String timeLogged)
Logs work on an issue.
void logWorkOnIssueWithComment(String issueKey, String timeLogged, String comment)
Logs work on an issue.
@Deprecated void login(String usernameAndPassword)
This method is deprecated. Use login(String) ()} instead.
@Deprecated void login(String username, String password)
This method is deprecated. Use login(String, String) instead.
@Deprecated void logout()
This method is deprecated. Use logout() instead.
void moveOptionsToPositions(String[] optionValue, String[] optionId, String itemType, Map<StringString> moveToPosition)
void navigateToUser(String username)
boolean permissionSchemeExists(String permissionScheme)
void placeProjectInCategory(String projectName, String categoryName)
String prettyParseRow(List expectedRow)
String prettyParseRow(Object[] expectedRow)
void progressAndResolve(String issueKey, int actionKey, String comment)
void progressWorkflow(String issueKey, int actionKey, String comment)
action keys: Resolve = 1 Reopen a resolved issue = 702 Reopen a closed issue = 901 close an issue = 701
boolean projectCategoryExists(String categoryName)
boolean projectExists(String project)
void reconfigureTimetracking(String format)
change the time tracking format (timetracking must be on before this call)
void removeAllCustomFields()
void removeAllFieldScreenAssociation(String schemeName)
void removeAllFieldScreenSchemes()
void removeAllFieldScreens()
void removeAllIssueTypeScreenSchemes()
void removeAllScreenAssociationsFromDefault()
void removeAllWatchers(String issueKey)
void removeAssociationOfSecuritySchemeFromProject(String project_name)
void removeAssociationWithFieldLayoutScheme(String project, String issue_type, String scheme_name)
void removeFieldFromFieldScreen(String screenName, String[] fieldNames)
void removeFieldFromFieldScreenTab(String screenName, String tabName, String[] fieldNames)
@Deprecated void removeGlobalPermission(int permissionCode, String groupName)
This method is deprecated. User removeGlobalPermission(GlobalPermissionKey, String) instead.
@Deprecated void removeGroup(String groupName)
This method is deprecated. Use deleteGroup(String) instead.
void removeGroupFromProjectRole(String groupName, String projectName, String roleName)
void removeGroupFromSecurityLevel(String scheme_name, String level_name, String groupName)
@Deprecated void removeGroupPermission(int permission, String groupName)
This method is deprecated. Use removeGroupPermission(long, ProjectPermissionKey, String) from permissionSchemes() instead and pass {@value FunctTestConstants#DEFAULT_PERM_SCHEME_ID} as long/the first argument.
@Deprecated void removeGroupPermission(String permission_scheme, int permission, String groupName)
@Deprecated void removePermissionFromUserCustomField(String permissionScheme, String customFieldId, int permission)
void removeRoleFromSecurityLevel(String scheme_name, String level_name, String roleId)
@Deprecated void removeRolePermission(int permission, int role)
This method is deprecated. Use removeProjectRolePermission(long, ProjectPermissionKey, long) from permissionSchemes() instead and pass {@value FunctTestConstants#DEFAULT_PERM_SCHEME_ID} as the first argument.
@Deprecated void removeUserFromGroup(String userName, String groupName)
This method is deprecated. Use removeUserFromGroup(String, String) instead.
void removeUserFromProjectRole(String userName, String projectName, String roleName)
void resetFields()
void resetInAscendingOrdering(String[] optionId, String itemType)
@Deprecated void restoreBlankInstance()
This method is deprecated. Since 5.0. Use restoreBlankInstance() instead.
void restoreColumnDefaults()
@Deprecated void restoreData(String fileName)
This method is deprecated. Use restoreData(String) instead.
void restoreData(File file)
void restoreData(File file, boolean quickImport)
void restoreDataWithFullRefresh(String fileName)
This restore uses the full Pico refresh the same as in Production.
void restoreDataWithLicense(String fileName, String licenseKey)
void restoreDefaultDashboard()
void restoreI18nData(String fileName)
Restores the data from the file name without making any english assertions.
void restoreI18nData(File file)
Restores the data from the file name without making any english assertions.
void runBare()
The outer most edge of a JUnit Test.
void runQuickSearch(String searchInput)
Executes quicksearch with no search string to return all issues
int saveFilter(String filterName, String filterDesc)
int saveFilterAs(String filterName, String copyName, String copyDesc, String saveColumnOrder)
boolean securtiyLevelExists(String securityScheme, String securityLevel)
boolean securtiySchemeExists(String securityScheme)
void selectCheckbox(String cbox)
checks a checkbox with cbox id, and confirms that is has been checked
void setBaseUrl()
void setBaseUrl(String baseUrl)
This method is deprecated. please use setBaseUrl(String)
void setBulkEditFieldTo(String field, String listValue)
Selects the 'listValue' in the 'field' list and checks that the corresponding 'field' checkbox is selected
void setComponentAssigneeOptions(String project, String component, String option)
Set Component Assignee Options
void setComponentLead(String project, String userName, String fullName, String component)
Sets the component lead for a component in a project.
void setComponentName(String project, String oldComponentName, String newComponentName)
void setDueDateToRequried()
void setEnvironmentData(JIRAEnvironmentData environmentData)
void setFieldConfigurationFieldToRenderer(String configuration, String fieldId, String renderer, boolean assertWarningNotPresent)
void setFieldConfigurationFieldToRenderer(String configuration, String fieldId, String renderer)
void setHiddenFields(String fieldName)
void setHiddenFieldsOnEnterprise(String fieldLayoutName, String fieldName)
void setOptionalFieldsOnEnterprise(String fieldLayoutName, String fieldName)
void setProjectLead(String project, String username)
Set Project Lead
void setRequiredField(String fieldName)
void setRequiredFields()
void setRequiredFieldsOnEnterprise(String fieldLayoutName, String fieldName)
void setSecurityLevelToRequried()
void setShownFields(String fieldName)
void setShownFieldsOnEnterprise(String fieldLayoutName, String fieldName)
@Deprecated void setUnassignedIssuesOption(boolean enable)
This method is deprecated. Please use setAllowUnassignedIssues(boolean) instead.
void setUp()
void showIssues(String jql)
void sortIssues(String field, String direction)
@Deprecated void sortIssues(String page, String field, String direction)
void split()
void start()
void startDashboardConfiguration()
This method is deprecated. use new FuncTestCase way.
void startWatchingAnIssue(String issueKey)
void startWatchingAnIssue(String issueKey, String[] userNames)
void stop()
void stopWatchingAnIssue(String issueKey)
boolean subTaskTypeExists(String subTaskType)
void submitAtPage(String url, String button, String logOnFail)
Goes to the given URL, submits the given button or logs the given message if the given button doesn't exist.
boolean tableHasSubTable(WebTable table, Object[][] expectedSubTable)
Checks whether the given table has a subtable matching the expectedSubTable.
int tableIndexOf(WebTable table, Object[] expectedRow)
int tableIndexOf(WebTable table, int minRow, List expectedRow)
int tableIndexOf(WebTable table, int minRow, int maxRow, List expectedRow)
Returns the row number (starting from 0) of the first row matching expectedRow on the table.
int tableIndexOf(WebTable table, int minRow, Object[] expectedRow)
int tableIndexOf(WebTable table, List expectedRow)
void tearDown()
void toggleExternalUserManagement(boolean enable)
void unassignWorkflowScheme(String workflowscheme_name, String issuetype, String workflow_name)
void unvoteForIssue(String issueKey)
boolean userExists(String userName)
boolean usingHsqlDb()
This method is deprecated. since 7.0; only required during migration of 6.x HSQL installation to 7.x H2
boolean versionExists(String version, String project)
void viewChangeHistoryOfIssue(String issueKey)
void voteForIssue(String issueKey)
boolean workflowExists(String workflow)
boolean workflowSchemeExists(String workflowScheme)
Protected Methods
@Deprecated void addCommentOnCurrentIssue(String comment)
This method is deprecated. Use addComment(String, String) instead.
@Deprecated void addCommentOnCurrentIssue(String comment, String roleLevel)
This method is deprecated. Use addComment(String, String, String) instead.
void addWorkflowCondition(String workflowName, String stepName, String condition)
void addWorkflowCondition(String workflowName, String stepName, String condition, JIRAWebTest.ParameterEnterer paramEnterer)
void addWorkflowValidator(String workflowName, String stepName, String validator)
void addWorkflowValidator(String workflowName, String stepName, String validator, JIRAWebTest.ParameterEnterer paramEnterer)
void assertHelpLinkWithStringInUrlPresent(String linkPart)
Checks for a presence of the part of the link's URL
void assertIndexedFieldCorrect(String path, Map expectedItemNodes, Map unexpectedItemNodes, String issueKey)
Check that certain fields have been indexed correctly.
void assertRedirectAndFollow(String url, String redirectRegex)
void assertResponseCanBeCached()
Asserts that the Cache-control header in the response *is not* set to any one of "no-cache", "no-store" or "must-revalidate".
void assertResponseCannotBeCached()
Asserts that the Cache-control header in the response *is* set to any one of "no-cache", "no-store" or "must-revalidate".
void assertSubTaskConversionPanelSteps(String key, int currentStep)
void assertTableCellContainsFixVersionsLinks(TableCell fixVersionsCell, int expectedLinkCount)
void assertTableCellContainsNoFixVersionsLinks(TableCell fixVersionsCell)
void assertTableCellContainsNoPriorityIcon(TableCell tableCell)
void assertTableCellContainsPriorityIcon(TableCell tableCell)
void assertTableCellHasImage(WebTable table, int row, int col, String stringInImageSource)
void assertTableCellHasNoImage(WebTable table, int row, int col)
void assertTableCellHasNotText(String tableId, int row, int col, String text)
void assertTextNotInColumn(String tableId, int column, String text)
void associateIssueLevelSecuritySchemeToProject(String projectName, String schemeName)
void copyFileToJiraImportDirectory(File file)
final void deleteCurrentIssue()
void enableCommentGroupVisibility(Boolean enable)
Turn on/off Project Roles + Groups visibility for comments and worklogs
Assertions getAssertions()
@Deprecated String getBuild()
String getEdition()
long getSubmittedTaskId()
This method assums that you have just submitted a long running task and that you need the taskId back.
void gotoConvertIssueStep3(String issueId, String parentKey, String issueType, String status)
void gotoDashboard()
void gotoDefaultPermissionScheme()
void gotoFieldConfigurationDefault()
void gotoIssueTypeScreenSchemes()
void gotoPortletConfig()
@Deprecated void grantPermissionToUserInEnterprise(int permission, String username)
This method is deprecated. Use addUserPermission(long, ProjectPermissionKey, String) from permissionSchemes() instead and pass {@value FunctTestConstants#DEFAULT_PERM_SCHEME_ID} as long/the first argument.
void jiraLog(String message, boolean testStarted)
Logs a message in the atlassian-jira.log on the server
void logWork(String issueKey, String timeLogged, String newEstimate)
Logs work on the issue with the given key.
void runTest()
void setEstimate(String time)
Sets the estimate on the current issue.
void setUpHttpUnitOptions()
Override this to set up any com.meterware.httpunit.HttpUnitOptions that must be set before the net.sourceforge.jwebunit.WebTester is used
void switchLicense(String licenseKey, String licenseDescription)
void switchToPersonalLicense()
boolean tableCellDoesNotHaveText(WebTable table, int row, int col, String text)
boolean tableCellHasLinkThatContains(WebTable table, int row, int col, String link)
Checks if a particular table cell contains the link URL specified.
boolean tableCellHasNoLinks(WebTable table, int row, int col)
boolean tableCellHasStrictText(WebTable table, int row, int col, String text)
Same as tableCellHasText(com.meterware.httpunit.WebTable, int, int, String) but if the text is an empty string ("") than make sure the table cell trimmed is equal
boolean tableCellHasText(WebTable table, int row, int col, String text)
void validateProgressBarUI(String desiredTaskState)
The button name controls what to check for in terms of the progress bar UI.
void waitForSuccessfulWorkflowActivation(String targetWorkflowName)
Waits for the worflow activation "asynch" screens to finish and then puts it on the ListWorkflow page
void waitForSuccessfulWorkflowSchemeMigration(String projectName, String targetWorkflowName)
Waits until a workflow scheme migration completes now that it runs asynchronously.
void waitForTaskAcknowledgement(long taskId)
This method assumes that you have just submitted a long running task, and you know the task id of it.
XPathLocator xpath(String xpathExpression)
A shortcut method to allow quick creation of XPathLocators
[Expand]
Inherited Methods
From class com.atlassian.jira.webtests.AbstractAtlassianWebTestCase
From class com.atlassian.jira.webtests.WebTestCaseWrapper
From class net.sourceforge.jwebunit.WebTestCase
From class junit.framework.TestCase
From class junit.framework.Assert
From class java.lang.Object
From interface com.atlassian.jira.webtests.util.EnvironmentAware
From interface junit.framework.Test

Constants

public static final String BULK_TRANSITION_ELEMENT_NAME

Constant Value: "wftransition"

public static final String FIELD_SCOPE_GLOBAL

Constant Value: "global"

public static final float JDK_1_5_VERSION

Constant Value: 1.5

public static final String PAGE_ENTERPRISE_FIELD_CONFIGURATIONS

Constant Value: "/secure/admin/ViewFieldLayouts.jspa"

public static final String PAGE_ISSUE_TYPE_SCREEN_SCHEMES

Constant Value: "/secure/admin/ViewIssueTypeScreenSchemes.jspa"

public static final String PAGE_NOT_STANDARD_VIEW_FIELD_SCREEN_SCHEMES

Constant Value: "/secure/admin/ViewFieldScreenSchemes.jspa"

public static final String PAGE_USER_BROWSER

Constant Value: "/secure/admin/user/UserBrowser.jspa"

Fields

protected Administration administration

Use this field to access the Administration helper in play

protected Assertions assertions

Use this field to access the Assertions helper in play

protected Backdoor backdoor

Use this field to access the Backdoor helper in play, which can make sly RPCs to the server.

protected JIRAEnvironmentData environmentData

Use this field to access the com.atlassian.jira.webtests.util.JIRAEnvironmentData in play

protected Form form

Used to set form values in tests.

protected IssueTableAssertions issueTableAssertions

Use this field to access the IssueTableAssertions helper in play

protected IssueTableClient issueTableClient

protected LocatorFactory locator

Use this field to access the LocatorFactory in play

protected FuncTestLogger log

Use this field to access the com.atlassian.jira.testkit.client.log.FuncTestLogger in play

protected Navigation navigation

Use this field to access the Navigation helper in play

protected HtmlPage page

Used to find out about the current HTML page that the test is on.

protected Parser parse

Use this field to access the Parser helper in play

protected TextAssertions text

Use this field to access the TextAssertions helper in play

Public Constructors

public JIRAWebTest (String name)

public JIRAWebTest (String name, JIRAEnvironmentData environmentData)

Public Methods

@Deprecated public void activateIssueLinking ()

This method is deprecated.
Use enable() instead.

activate issue linking

@Deprecated public void activateSubTasks ()

This method is deprecated.
Enables sub-tasks. Use enable() instead.

@Deprecated public void activateTimeTracking ()

This method is deprecated.
Use enable(com.atlassian.jira.functest.framework.admin.TimeTracking.Mode) instead.

activate time Tracking

public void activateWorkflow (String workflow_name)

public void addColumnToIssueNavigator (String[] fieldNames)

public void addColumnToIssueNavigatorById (String[] fieldIds)

public String addComponent (String projectName, String name, String componentLead)

Adds a component with the given name and component lead to the projectName with the given name.

Parameters
projectName the name of the project.
name the name of the component.
componentLead the username of the lead for the component, may be null for none.
Returns
  • the component id.

public String addComponent (String projectName, String name)

Adds a component with the given name (and no lead) to the projectName with the given name.

Parameters
projectName the name of the project.
name the name of the component.
Returns
  • the component id.

public String addCustomField (String fieldType, String fieldName)

Creates a global custom field for all issue types with the given details.

Parameters
fieldType use the constants CUSTOM_FIELD_TYPE*.
fieldName a name for the field.
Returns
  • returns the field id.

public String addCustomField (String fieldType, String fieldScope, String fieldName, String fieldDescription, String issueType, String project, String searcher)

public void addCustomFieldOption (String fieldId, String fieldOption)

public String addCustomFieldWithMultipleIssueTypes (String fieldType, String fieldScope, String fieldName, String fieldDescription, String[] issueTypes, String project, String searcher)

public void addEventType (String name, String description, String template)

public void addFieldLayoutScheme (String scheme_name, String scheme_desc)

public void addFieldLayoutSchemeEntry (String issueTypeName, String fieldLayoutName, String schemeName)

public void addFieldScreenScheme (String schemeName, String schemeDescription, String fieldScreenDefault)

public void addFieldToFieldScreen (String screenName, String fieldName, String position)

public void addFieldToFieldScreen (String screenName, String fieldName)

public void addFieldToFieldScreenTab (String screenName, String tabName, String fieldName, String position)

public void addFieldsToFieldScreen (String screenName, String[] fieldNames)

public void addGroupToProjectRole (String groupName, String projectName, String roleName)

public void addGroupToSecurityLevel (String scheme_name, String level_name, String groupName)

public void addGroupToSecurityLevel (String scheme_name, String level_name, String groupName, String[] expectedGroups)

public String addIssue (String project, String projectKey, String issueType, String summary)

This method is deprecated.
please use createIssue(String, String, String)

Adds an issue to the given project returning its key.

public String addIssue (String project, String projectKey, String issueType, String summary, String priority, String[] components, String[] affectsVersions, String[] fixVersions, String assignTo, String environment, String description, String originalEstimate, String securityLevel, String dueDate)

Adds an issue to the given project returning its key.

public void addIssueOnly (String project, String projectKey, String issueType, String summary, String priority, String[] components, String[] affectsVersions, String[] fixVersions, String assignTo, String environment, String description, String originalEstimate, String securityLevel, String dueDate)

add issue without getting its issue key

public void addIssueOperationToScreenAssociation (String schemeName, String issueOperation, String screenName)

@Deprecated public String addIssueType (String name, String desc, String iconUrl)

This method is deprecated.
Use #addIssueType(String, String) - iconUrl no longer available from web.

public String addIssueType (String name, String desc)

Creates a custom issue type with the given properties. Make the name and description unique or things will be... interesting.

Parameters
name The name of the issue type.
desc The description.
Returns
  • the id of the created issue type.

public void addIssueTypeFieldScreenScheme (String schemeName, String schemeDescription, String defaultScreenScheme)

public void addIssueTypeStatsPortlet (String filterName)

Adds a stats portlet with the filter name

public void addIssueTypeToScreenAssociation (String issueTypeSchemeId, String issueType, String screenSchemeName)

public String addIssueViaRest (String project, String projectKey, String issueType, String summary, String priority, String assignTo, String environment, String description)

Adds an issue to the given project returning its key. Different to addIssue(String, String, String, String, String, String[], String[], String[], String, String, String, String, String, String) in that it expects the username for assignTo instead of the full name. Not all features currently work, so beware.

public IssueCreateResponse addIssueViaRestForResponse (String project, String projectKey, String issueType, String summary, String priority, String assignTo, String environment, String description)

public void addLinkedStatus (String status_name, String status_desc)

public void addPortlet (String portlet)

Adds the portlet with the given name up to the point where the portlet configuration form comes up. Callers need to complete that form to finish adding the portlet.

Parameters
portlet name of the portlet as defined in the plugin config.

@Deprecated public long addProject (String name, String key, String lead)

This method is deprecated.
Use addProject(String, String, String) instead.

Adds a project, or if a project with that name exists, does almost nothing. Choose a project name that will not clash with operational links on the page such as "View Projects" or "Add".

Parameters
name the name of the project.
key the project key.
lead the username of the project lead.
Returns
  • the project id.

@Deprecated public void addProjectAdminPermission (int permission, String group)

public void addRoleToSecurityLevel (String scheme_name, String level_name, String roleName)

public void addScreen (String screenName, String screenDescription)

public String addSubTaskToIssue (String issueKey, String subTaskType, String subTaskSummary, String subTaskDescription, String originalEstimate)

Adds a subtask with the given type and properties to the given issue.

Parameters
issueKey the issue key of the parent.
subTaskType the subtask issue type (try ISSUE_TYPE_SUB_TASK
subTaskSummary the summary of the subtask
subTaskDescription the description for the subtask
originalEstimate the estimated time to complete the subtask (subtasks must be turned on)
Returns
  • the issueKey of the new subtask.

@Deprecated public String addSubTaskToIssue (String issueKey, String subTaskType, String subTaskSummary, String subTaskDescription)

This method is deprecated.
please use createSubTask(String, String, String, String)

public void addTabToScreen (String screenName, String tabName)

@Deprecated public void addTransition (String workflow_name, String step_name, String transition_name, String transition_desc, String destination_step, String transitionFieldScreen)

This method is deprecated.
Use addTransition(String, String, String, String, String) instead.

@Deprecated public void addUser (String username)

This method is deprecated.
Use addUser(String) instead.

Creates a user with the given username and the same password, fullname and an email address username@example.com

Parameters
username the username.

@Deprecated public void addUser (String username, String password, String fullname, String emailAddress)

This method is deprecated.
Use addUser(String, String, String, String) instead.

@Deprecated public void addUserToGroup (String userName, String groupName)

This method is deprecated.
Use addUserToGroup(String, String) instead.

public void addUserToProjectRole (String userName, String projectName, String roleName)

public String addVersion (String project, String name, String description)

public void addWorkFlow (String workflow_name, String workflow_desc)

Adds a workflow with the given name and description.

Parameters
workflow_name name of the workflow.
workflow_desc description of the workflow.

public void addWorkFlowScheme (String workflowscheme_name, String workflowscheme_desc)

public void addWorkflowPostfunction (String workflowName, String stepName, String transitionName, String postFunctionName)

public void assertErrorMsgFieldRequired (String fieldId, String project, String fieldDisplayName)

public void assertFormElementHasValue (String formNameOrId, String fieldId, String expectedValue)

Assert form element with fieldId has expectedValue

Parameters
formNameOrId Name or Id of the form
fieldId id of the option (select/radio) field
expectedValue the expected value of the form

public void assertFormElementHasValue (String fieldId, String expectedValue)

Assert form element with fieldId has expectedValue

Parameters
fieldId id of the option (select/radio) field
expectedValue the expected value of the form

public void assertFormElementWithNameHasValue (String fieldName, String expectedValue)

Assert form element with fieldName has expectedValue

Parameters
fieldName name of the field
expectedValue the expected value of the field

public void assertFormElementWithNameHasValue (String formNameOrId, String fieldName, String expectedValue)

Assert form element with fieldName has expectedValue

Parameters
formNameOrId Name or Id of the form
fieldName name of the field
expectedValue the expected value of the field

public void assertFormTextAreaHasValue (String fieldId, String expectedValue)

Assert the form textarea has the expectedValue

Parameters
fieldId id of the textarea to check
expectedValue the expected value of the textarea

public void assertFormTextAreaHasValue (String formNameOrId, String fieldId, String expectedValue)

Assert the form textarea has the expectedValue

Parameters
formNameOrId Name or Id of the form
fieldId id of the textarea to check
expectedValue the expected value of the textarea

public void assertIssueNavigatorDisplaying (String from, String to, String of)

public void assertLastChangeHistoryIs (String issueKey, String field, String originalValue, String newValue)

This method is deprecated.
please use assertLastChangeHistoryRecords(String, com.atlassian.jira.webtests.ztests.workflow.ExpectedChangeHistoryRecord)

Checkts that the last change history of the issue (with given issueKey) has an entry for the field with the original and new value

Parameters
issueKey Which issue to check
field The issue field as displayed on the change history
originalValue The expected original value for the change history
newValue The expected new value for the change history

public void assertLastChangeNotMadeToField (String issueKey, String field)

public void assertLinkPresentWithSubString (String linkId, String urlSubString)

Asserts that the link with the given id attribute exists and its href has the urlSubString

Parameters
linkId the id attribute.
urlSubString the expected sub-string of the href of the link.

public void assertLinkPresentWithURL (String linkId, String urlSuffix)

Asserts that the link with the given id attribute exists and its href ends with the given URL.

Parameters
linkId the id attribute.
urlSuffix the expected suffix of the href of the link.

public void assertLinkPresentWithoutSubString (String linkId, String urlSubString)

Asserts that the link with the given id attribute exists and its href does NOT have the urlSubString

Parameters
linkId the id attribute.
urlSubString the sub-string that should not appear in the href of the link.

public void assertLinkWithTextUrlContains (String linkText, String[] strings)

Asserts that there exists a link on the current page with the given text the url of which has the given suffix.

Parameters
linkText the link text.
strings the expected portions of the URL in the link.

public void assertLinkWithTextUrlEndsWith (String linkText, String urlSuffix)

This method is deprecated.
please use assertLinkLocationEndsWith(String, String)

Asserts that there exists a link on the current page with the given text the url of which has the given suffix.

Parameters
linkText the link text.
urlSuffix the expected url suffix.

public void assertNoChangesForIssue (String issueKey)

public void assertOptionSelected (String elementId, String expectedValue)

Asserts that the expectedValue has been selected for the form element with Id elementId. use assertOptionSelectedById(String, String) to check if an id has been selected

Parameters
elementId id of the option (select/radio) field
expectedValue the expected value (the display name) to be selected

public void assertOptionSelectedById (String elementId, String expectedId)

Asserts that the expectedId has been selected for the form element with Id elementId. use assertOptionSelected(String, String) to check if a specific value has been selected

Parameters
elementId id of the option (select/radio) field
expectedId the expected id to be selected

public void assertOptionsEqualIgnoreOrder (String selectName, String[] expectedOptions)

A more robust version of assertOptionsEqual(String, String[]). This version is different in that, it does not care about the ordering (So its workable with different JDKs or when you dont know/care about the order).

public void assertPageDoesNotExist (String assertionMessage, String url)

This will try and restrive the given URL and assert that it fails to be retrieved.

Parameters
assertionMessage the assertion message
url the url to the page we DONT want to exist

public void assertRedirect (String path)

public void assertRedirectPath (String s)

public void assertRegexMatch (String regex, boolean multiline)

Detects whether or not the passed regular expression matches the page.

Parameters
regex the regular expression to match.
multiline true iff the regex should match across lines, false otherwise.

public void assertTableCellHasText (String tableId, int row, int column, String text)

public void assertTableHasMatchingRow (WebTable table, Object[] expectedRow)

This method is deprecated.
please use assertTableContainsRow(com.meterware.httpunit.WebTable, String[])

Asserts that the table has at least one row matching the expectedRow

Parameters
table table to check for the expectedRow
expectedRow the row to look for

public void assertTableHasMatchingRowFrom (WebTable table, int minRow, Object[] expectedRow)

Asserts that the table has atleast one row matching the expectedRow

Parameters
table table to check for the expectedRow
minRow the starting row to look for the expectedRow (inclusive)
expectedRow the row to look for

public void assertTableHasMatchingRowFromTo (WebTable table, int minRow, int maxRow, Object[] expectedRow)

Asserts that the table has at least one row matching the expectedRow

Parameters
table table to check for the expectedRow
minRow the starting row to look for the expectedRow (inclusive)
maxRow the last row to look for the expectedRow (exclusive)
expectedRow the row to look for

public void assertTableHasNoMatchingRow (WebTable table, Object[] expectedRow)

Asserts that the table has no row in the table matching the expectedRow

Parameters
table table to check the expectedRow does not exist in
expectedRow the row that should not be in the table

public void assertTableHasNoMatchingRow (WebTable table, int minRow, Object[] expectedRow)

Asserts that the table has no row in the table matching the expectedRow between minRow and the end of the table

Parameters
table table to check the expectedRow does not exist in
minRow the starting row index (inclusive)
expectedRow the row that should not be in the table

public void assertTableHasNoMatchingRowFromTo (WebTable table, int minRow, int maxRow, Object[] expectedRow)

Asserts that the table has no row in the table matching the expectedRow between minRow and maxRow

Parameters
table table to check the expectedRow does not exist in
minRow the starting row index (inclusive)
maxRow the ending row index (exclusive)
expectedRow the row that should not be in the table

public void assertTableHasOnlyNMatchingRows (WebTable table, int n, Object[] expectedRow)

Asserts that the table has strictly 'n' number of rows in the table matching the expectedRow. ie. checks there are 'n' and only 'n' number of matching rows.

Parameters
table table to check the expectedRow exist in
n the number of times the expectedRow should appear in the table
expectedRow the row that should be in the table

public void assertTableHasSubTable (WebTable table, Object[][] expectedSubTable)

public void assertTableRowEquals (WebTable table, int row, Object[] expectedRow)

This method is deprecated.
please use assertTableRowEquals(com.meterware.httpunit.WebTable, int, Object[])

Assert that the specified row of the table is equal to the expectedRow

Parameters
table table to look up the row
row the row number of the table to compare
expectedRow the expected row to match

public void assertTextListNotPresent (Iterable<String> iterable)

Takes in a list of strings, iterates over them and asserts that each is *NOT* present

Parameters
iterable of strings

public void assertTextListPresent (Iterable<String> iterable)

Takes in a list of strings, iterates over them and asserts that each is present

Parameters
iterable of strings

public void assertUserIsMemberOfGroups (String username, Collection expectedGroupNames)

Check that the user with username is a member of the expectedGroupNames exactly.

Parameters
username username of the user to check group membership
expectedGroupNames all the group names the user is expected to be a member of

public void assertViewIssueFields ()

public void assignIssue (String issueKey, String comment, String userFullName)

This method is deprecated.
please use assignIssue(String, String, String)

Assigns the given issue to the user with the given full name.

Parameters
comment the comment to leave on the assignment action - may be null for no comment.

public void assignWorkflowScheme (long workflowscheme_id, String issuetype, String workflow_name)

public void associateFieldLayoutScheme (String project, String issue_type, String scheme_name)

public void associateIssueTypeScreenSchemeToProject (String projectName, String screenScheme)

public void associatePermSchemeToProject (String project, String permission_name)

Associate a permission scheme with a project

public void associateSecuritySchemeToProject (String project_name, String scheme_name)

public final void associateWorkFlowSchemeToProject (String project, String workflow_scheme, Map<StringString> statusMapping)

@Deprecated public void associateWorkFlowSchemeToProject (String project, String workflow_scheme)

This method is deprecated.
Use associateWorkflowScheme(String, String) instead.

Parameters
project the project name
workflow_scheme the scheme name

public void browseToFullConfigure ()

public void bulkChangeCancel ()

Clicks on the 'Cancel' button on any of the bulk change steps

public void bulkChangeChooseIssuesAll ()

selects the checkbox with id all
Used in the Step Choose Issues

public void bulkChangeChooseOperationDelete (boolean mailServerExists)

Chooses the Delete Operation radio button in the Step Choose Operation

public void bulkChangeChooseOperationEdit ()

Chooses the Edit Operation radio button in the Step Choose Operation

public void bulkChangeConfirm ()

Clicks on the 'Confirm' button on the confirmation steps

public void bulkChangeIncludeAllPages ()

simulates the clicking on bulk change all issues

public void bulkChangeIncludeCurrentPage ()

simulates the clicking on bulk change current page of issues

public void bulkChangeSelectIssue (String key)

public void bulkChangeSelectIssues (Collection keys)

public void bulkEditConfirmEdit (Map<StringString> fields)

Checks in step Confirmation of edit operation before confirming, whether or not the selected fields have been made
DOES NOT goto the issues change log and check that they are changed after confirmation... something to consider testing...

Parameters
fields a map with field ids as keys and simple Strings as values.

public void bulkEditOperationDetailsSetAs (Map<StringString> fields)

Chooses the bulk action(s) you wish to perform on the selected issue.
if a field is not to be selected place "" in place of it.
Used in Operation Details

Parameters
fields A map woth field ids as keys and field values (have to be simple Strings) as values.

public void changeWorkflow (String issueKey, int actionKey)

@Deprecated public void checkCommentVisibility (String usernameAndPassword, String issueKey, Iterable<String> expectedPresentComments, Iterable<String> expectedAbsentComments)

Use areVisibleTo(String, String) and areNotVisibleTo(String, String) instead.

Given a username, view the issue with issuekey and assert that a given list of comments are visible in the issue view and another given list of comments are not visible in issue view. NOTE: username must be the same as the password

Parameters
usernameAndPassword - must be a valid login username/password combination where username = password
issueKey - issuekey of issue comments we are checking
expectedPresentComments - List of comments in the form of strings that should be visible to the user when viewing that issue
expectedAbsentComments - List of comments in the form of strings that should *NOT* be visible to the user when viewing that issue

public void checkEventTypeDetails (String eventTypeName, String eventTypeDesc, String status, String template, String notificationScheme, String workflow)

public void checkItemsAreInAscendingOrder (String[] optionValue)

public void checkNotificationForEvent (String eventTypeName, String notificationType, String template)

public void checkOrderingUsingArrows (String[] optionValue, String[] optionId)

public String checkOrderingUsingMoveToPos (String[] optionValue, String[] optionId, String itemType)

public void chooseOperationBulkMove ()

Chooses the Move Operation radio button in the Step Choose Operation

public void chooseOperationExecuteWorfklowTransition ()

Chooses the Execute Worfklow Action radio button in the Step Choose Operation

public void clearComponentLead (String project, String component)

Clear component lead

@Deprecated public void clickOnAdminPanel (String adminsubject, String adminpage)

This method is deprecated.
Use gotoAdminSection(com.atlassian.jira.functest.framework.Navigation.AdminSection)

Note: this uses two http round-trips and can make tests slow.

public void clickOnNext ()

This method is deprecated.
please use clickOnNext()

Clicks on the 'Next' button on any of the bulk change steps

public boolean componentExists (String component, String project)

public void configureCustomFieldOption (String fieldId, String fieldOption)

public void configureDefaultCheckBoxCustomFieldValue (String fieldId, String fieldOption)

public void configureDefaultCustomFieldValue (String fieldId, String fieldOption)

public void configureDefaultMultiCustomFieldValue (String fieldId, String fieldOption, String fieldOption2)

public void copyFieldLayout (String fieldLayoutName)

public void copyFieldScreenScheme (String copiedSchemeName, String schemeName, String schemeDescription)

public void copyIssueTypeFieldScreenSchemeName (String copiedSchemeId, String schemeName, String schemeDescription)

public void copyScreen (String copiedScreenName, String newScreenName, String screenDescription)

@Deprecated public void copyWorkFlow (String original_workflow_name, String new_workflow_name, String new_workflow_desc)

This method is deprecated.
Use copyWorkflow(String, String, String) instead.

public void createClonersLinkType ()

Creates the Cloners link type that JIRA creates between cloned issues. If this link type does not exist the clone of teh issue is not linked to the original issue.

public String createCustomFields (String fieldType, String fieldScope, String fieldName, String fieldDescription, String issueType, String projectType, String[] fieldOptions)

@Deprecated public void createGroup (String groupName)

This method is deprecated.
Use addGroup(String) instead.

public String createIssueLinkType (String name, String outwardLinkName, String inwardLinkName)

Returns
  • the id of the link type created.

public void createIssueStep1 ()

public void createIssueStep1 (String project, String issueType)

public Collection<String> createIssuesInBulk (int numberOfIssues, String project, String projectKey, String issueType, String summary, String priority, String[] components, String[] affectsVersions, String[] fixVersions, String assignTo, String environment, String description, String originalEstimate, String securityLevel)

public void createNewFieldScreen (String[] optionId)

public void createPermissionScheme (String permission_name, String permission_desc)

Create a new permission scheme

public void createProjectCategory (String categoryName, String categoryDescription)

public void createSecurityLevel (String scheme_name, String level_name, String level_description)

public void createSecurityScheme (String scheme_name, String scheme_description)

public void createSessionSearchForAll ()

public void createSubTaskStep1 (String issueKey, String task_type)

public void createSubTaskType (String sub_task_name, String sub_task_description)

This method is deprecated.
Use addSubTaskType(String, String) instead.

Parameters
sub_task_name name
sub_task_description description

public boolean customFieldExists (String fieldName)

@Deprecated public void deactivateIssueLinking ()

This method is deprecated.
Use disable() instead.

@Deprecated public boolean deactivateSubTasks ()

This method is deprecated.
Use disable() instead.

This method forces deactivation of the subtasks by removing all issues

Returns
  • boolean - signals whether all the issues was deleted or not

@Deprecated public void deactivateTimeTracking ()

This method is deprecated.
Use disable() instead.

deactivate time tracking

public void delCustomFieldOption (String fieldId, String fieldOption)

public void deleteAllFilter ()

public void deleteAllIssuesInAllPages ()

public void deleteComponent (String project, String name)

public void deleteCustomField (String fieldId)

public void deleteEventType (String name)

public void deleteFieldLayoutScheme (String scheme_name)

public void deleteFieldScreenScheme (String schemeName)

public void deleteFilter (String filterName)

Deletes the filter with the given name if it exists. Leaves you on the manage filter page.

Parameters
filterName name of the filter to delete.

@Deprecated public void deleteIssue (String issueKey)

This method is deprecated.
Use deleteIssue(String) instead.

public void deleteIssueOperationFromScreenAssociation (String schemeName, String issueOperation)

public void deleteIssueTypeFieldScreenScheme (String schemeId)

public void deleteLinkedStatus (String statusId)

public void deletePermissionScheme (String permission_name)

Deletes a permission scheme

public void deleteProject (String project)

Delete project with the given name

Parameters
project the project name.

public void deleteProjectCategory (String categoryName)

public void deleteScreen (String screenName)

public void deleteSecurityLevel (String scheme_name, String level_name)

public void deleteSecurityScheme (String scheme_name)

public void deleteStep (String workflow_name, String step_name)

public void deleteSubTaskType (String sub_task_name)

This method is deprecated.
Use deleteSubTaskType(String) instead.

public void deleteTabFromScreen (String screenName, String tabName)

public void deleteTransition (String workflow_name, String step_name, String transition_name)

public void deleteUser (String username)

public void deleteVersion (Long id)

public void deleteWorkFlow (String workflow_name)

public void deleteWorkFlowScheme (String workflowscheme_name)

@Deprecated public void disableIssueLinks ()

This method is deprecated.
Use disable() instead

public void disableUnassignedIssues ()

public void displayAllIssues ()

This method is deprecated.
use displayAllIssues()

Executes quicksearch with no search string to return all issues

public void doFieldOperation (String fieldName, String linkName)

public void dumpResponse ()

Simply dumps the web response, not necessarily because and error occurred.

public void dumpResponse (Throwable t)

Dumps the web response because a Throwable condition exists.

Parameters
t the Throwable in question

public void dumpScreen (String filename)

@Deprecated public static Map<K, V> easyMapBuild (K key1, V value1, K key2, V value2)

@Deprecated public static Map<K, V> easyMapBuild (K key1, V value1)

@Deprecated public static Map<K, V> easyMapBuild (K key1, V value1, K key2, V value2, K key3, V value3)

public void editIssueType (String issueTypeId, String name, String description, Long avatarId)

Modifies the issue type with the given id to have the given properties.

Parameters
issueTypeId the id of the issue type to edit.
name the new name of the issue type.
description the new description of the issue type
avatarId the new avatar for issue type

public void editIssueType (String issueTypeId, String name, String description, String iconUrl)

This method is deprecated.
iconUrl is no longer available from web, use editIssueType(String, String, String, Long)

public void editIssueType (String issueTypeId, String name, String description)

Modifies the issue type with the given id to have the given properties.

Parameters
issueTypeId the id of the issue type to edit.
name the new name of the issue type.
description the new description of the issue type

public void editIssueWithCustomFields (String issueKey, List<CustomFieldValue> cfValues)

public void editIssueWithCustomFields (String issueKey, String customFieldId, String customFieldValue, String customFieldType)

public void editTransitionScreen (String workflow_name, String transition_name, String transitionFieldScreen)

public void enableUnassignedIssues ()

public String extractFilterId (String filterName)

public String extractIssueKey (String projectKey)

Throws
IOException

public boolean fieldSchemeExists (String fieldSchemeName)

public String findRowWithName (String fieldTableName, int column, String fieldName)

public Administration getAdministration ()

public Backdoor getBackdoor ()

public String getComponentId (String project, String component)

public JIRAEnvironmentData getEnvironmentData ()

public String getEventTypeIDWithName (String name)

public Object getFormElement (String form, String elementId)

Gets the com.meterware.httpunit.FormControl with elementId in the specified form.

Parameters
form name of the form to look for the element
elementId the id of the element to get
Returns
  • com.meterware.httpunit.FormControl of the element

public String getFormElementValue (String form, String elementId)

Get the single value of the field with elementId inside the form 'form'

Parameters
form form the field resides in
elementId id of the field
Returns
  • the value of the field

public String[] getFormElementValues (String form, String elementId)

Get the values of the field with elementId inside the form 'form'

Parameters
form form the field resides in
elementId id of the field
Returns
  • the values of the field

public Object getFormParameter (String form, String elementName)

public String[] getFormParameterValues (String form, String elementName)

public Map getFormParameters (String form)

@Deprecated public String getIssueIdWithIssueKey (String issueKey)

Use getId(String) instead.

Parameters
issueKey The keys of the issue in play.
Returns
  • The id of the issue.

public String getIssueKeyWithSummary (String summary, String projectKey)

public float getJiraJavaVersion ()

For the new framework version of this method, check out getJiraJavaVersion()

public Navigation getNavigation ()

public HtmlPage getPage ()

public String getProjectId (String project)

public String getRedirect ()

public String getRegexMatch (String regex)

Reads the HTML response text and finds the first group match for the given regex

Parameters
regex regex
Returns
  • The first matching group (first pair of parens) or null if there none is found.
Throws
MalformedPatternException if regex is malformed

public List<String> getTableRowAsList (WebTable table, int row)

Get the specified row from the table as a list of trimmed strings.

Parameters
table table to get the row from
row the row index starting from 0 to extract the row from
Returns
  • list of trimmed cell values from the table on specified row.

public String getTagBody (String startTag, String endTag, String html)

public WebTester getTester ()

public String getTitle (String responseHtml)

public FuncTestWebClientListener getWebClientListener ()

public void goToProject (String project_name)

Go to the project summary page for the given project.

Parameters
project_name the name of the project.

@Deprecated public void gotoAdmin ()

This method is deprecated.
Use gotoAdmin() or even better gotoAdminSection(com.atlassian.jira.functest.framework.Navigation.AdminSection) instead. If there is a specific method in Navigation to navigate to the admin page you want to go to, this should be the preferred way of navigating to it.

e.g gotoDashboard()

Goes to the admin section, or, if already in the admin section, does nothing.

public void gotoComponentBrowse (String projectKey, String componentName)

public void gotoConvertIssue (String issueId)

public void gotoConvertIssueStep2 (String issueId, String parent, String issueType)

public void gotoConvertSubTask (String issueId)

public void gotoConvertSubTaskStep2 (String issueId, String issueType)

public void gotoCustomFields ()

public void gotoFieldLayoutConfiguration (String configuration)

public void gotoFieldLayoutSchemes ()

public void gotoFieldLayouts ()

public void gotoFieldScreen (String screenName)

public void gotoFieldScreenScheme (String schemeName)

public void gotoFieldScreenScheme ()

public void gotoFieldScreenSchemes ()

public void gotoFieldScreenTab (String screenName, String tabName)

public void gotoFieldScreens ()

public void gotoFilter (String filtername)

public void gotoFilterById (long filterId)

This method is deprecated.
please use loadFilter(long)

Parameters
filterId The id of the filter to load

@Deprecated public void gotoIssue (String issueKey)

This method is deprecated.
Use gotoIssue(String) instead.

Goes to the view issue page

Parameters
issueKey the issue key

public void gotoIssueSecuritySchemes ()

public void gotoIssueTabPanel (String issueKey, String issueTabName)

Goes to the specified issue tab panel for the issue with issueKy directly.

Parameters