Jira.PostAttachment Method

Applies to TestComplete 15.69, last modified on November 13, 2024

The Jira.PostAttachment method is only available if the external JiraSupport script extension is installed and enabled in TestComplete. To learn how you can do it, see Sending Issues to Jira From Script Tests.

Description

The Jira.PostAttachment method attaches a text file to the specified Jira issue.

Declaration

Jira.PostAttachment(IssueKey, FileName)

IssueKey [in]    Required    String    
FileName [in]    Required    String    
Result None

Applies To

The method is applied to the following object:

Parameters

The method has the following parameters:

IssueKey

The Jira issue identifier.

FileName

The full path to the file you want to attach.

Result Value

None.

Remarks

An an alternative, you can post issues to Jira on the Test Log page. For complete information, see Add Defect to JIRA Database Dialog.

Example

The code below demonstrates how you can use Jira.PostAttachment method in your script tests:

JavaScript, JScript

function IssueToJira()
{
  // Log in to Jira
  Jira.Login("https://mycompany.atlassian/net/", "[email protected]", "c40Mwj3PovmRTFZbmIiwB8C2");
  var priorityJSON = '{"name":"Low"}';
  // Create an object that defines task properties
  var jiraData = Jira.CreateNewIssueData("MyJiraProjectKey", "Task").
                setField("summary", "This is a sample task summary").
                setField("description", "Sample task description").
                setField("customfield_10700", "12.40.08").
                setFieldJSON("priority", priorityJSON);
  // Post the issue to Jira
  var key = Jira.PostIssue(jiraData);
  // Attach the desired file to the created issue
  Jira.PostAttachment(key, "C:\\temp\\MyFile.txt");
  var upPriorityJSON = '{"name":"High"}';
  // Create an object that defines updating task properties
  var upJiraData = Jira.CreateUpdateIssueData().setFieldJSON("priority", upPriorityJSON);
  // Update the issue
  Jira.UpdateIssue(key, upJiraData);
}

Python

def IssueToJira():
  # Log in to Jira
  Jira.Login("https://mycompany.atlassian/net/", "[email protected]", "c40Mwj3PovmRTFZbmIiwB8C2")
  priorityJSON = '{"name":"Low"}'
  # Create an object that defines task properties
  jiraData = Jira.CreateNewIssueData("MyJiraProjectKey", "Task").\
                setField("summary", "This is a sample task summary").\
                setField("description", "Sample task description").\
                setField("customfield_10700", "12.40.08").\
                setFieldJSON("priority", priorityJSON);
  # Post the issue to Jira 
  key = Jira.PostIssue(jiraData)
  # Attach the desired file to the created issue
  Jira.PostAttachment(key, "C:\\temp\\MyFile.txt")
  upPriorityJSON = '{"name":"High"}'
  # Create an object that defines updating task properties
  upJiraData = Jira.CreateUpdateIssueData().setFieldJSON("priority", upPriorityJSON)
  # Update the issue
  Jira.UpdateIssue(key, upJiraData)

VBScript

Sub IssueToJira
  ' Log in to Jira
  Call Jira.Login("https://mycompany.atlassian/net/", "[email protected]", "c40Mwj3PovmRTFZbmIiwB8C2")
  priorityJSON = "{""name"":""Low""}"
  ' Create an object that defines task properties
  Set jiraData = Jira.CreateNewIssueData("MyJiraProjectKey", "Task")._
                setField("summary", "This is a sample task summary")._
                setField("description", "Sample task description")._
                setField("customfield_10700", "12.40.08")._
                setFieldJSON("priority", priorityJSON)
  ' Post the issue to Jira
  key = Jira.PostIssue(jiraData)
  ' Attach the desired file to the created issue
  Call Jira.PostAttachment(key, "C:\\temp\\MyFile.txt")
  upPriorityJSON = "{""name"":""High""}"
  ' Create an object that defines updating task properties
  Set upJiraData = Jira.CreateUpdateIssueData().setFieldJSON("priority", upPriorityJSON)
  ' Update the issue
  Call Jira.UpdateIssue(key, upJiraData)
End Sub

DelphiScript

procedure IssueToJira;
var 
  priorityJSON, jiraData, key, upPriorityJSON, upJiraData;
begin
  // Log in to Jira
  Jira.Login('https://mycompany.atlassian/net/', '[email protected]', 'c40Mwj3PovmRTFZbmIiwB8C2');
  priorityJSON :='{"name":"Low"}';
  // Create an object that defines task properties
  jiraData := Jira.CreateNewIssueData('MyJiraProjectKey', 'Task').
                setField('summary', 'This is a sample task summary').
                setField('description', 'Sample task description').
                setField('customfield_10700', '12.40.08').
                setFieldJSON('priority', priorityJSON);
  // Post the issue to Jira
  key := Jira.PostIssue(jiraData);
  // Attach the desired file to the created issue
  Jira.PostAttachment(key, 'C:\temp\MyFile.txt');
  upPriorityJSON := '{"name":"High"}';
  // Create an object that defines updating task properties
  upJiraData := Jira.CreateUpdateIssueData().setFieldJSON('priority', upPriorityJSON);
  // Update the issue
  Jira.UpdateIssue(key, upJiraData);
end;

C++Script, C#Script

function IssueToJira()
{
  // Log in to Jira
  Jira["Login"]("https://mycompany.atlassian/net/", "[email protected]", "c40Mwj3PovmRTFZbmIiwB8C2");
  var priorityJSON = '{"name":"Low"}';
  // Create an object that defines task properties
  var jiraData = Jira["CreateNewIssueData"]("MyJiraProjectKey", "Task")
                ["setField"]("summary", "This is a sample task summary")
                ["setField"]("description", "Sample task description")
                ["setField"]("customfield_10700", "12.40.08")
                ["setFieldJSON"]("priority", priorityJSON);
  // Post the issue to Jira
  var key = Jira["PostIssue"](jiraData);
  // Attach the desired file to the created issue
  Jira["PostAttachment"](key, "C:\\temp\\MyFile.txt");
  var upPriorityJSON = '{"name":"High"}';
  // Create an object that defines updating task properties
  var upJiraData = Jira["CreateUpdateIssueData"]()["setFieldJSON"]("priority", upPriorityJSON);
  // Update the issue
  Jira["UpdateIssue"](key, upJiraData);
}

To interact with Jira custom fields, use their identifiers instead of the field names. In the code above, it is customfield_10700.

To call this function from keyword tests, use the Run Code Snippet operation.

See Also

CreateNewBugData Method
CreateNewIssueData Method
CreateUpdateIssueData Method
Login Method
PostIssue Method
UpdateIssue Method
Jira Object

Highlight search results