0

TestCase、Defectオブジェクトに添付ファイルを追加する方法を理解しましたが、同じメカニズムを使用して、テスト結果ファイルをTestCaseResultオブジェクトに添付できないようです。「検証エラー:Attachment.attachments[0]をnullにしないでください」というエラーメッセージが表示されます。テスト結果の作成中に添付することと、以前に作成した既存のテスト結果を更新することを試みました。テスト結果ファイルをTestCaseResultに添付することがサポートされていない場合、これは一般的な主流の動作であるため、私は驚きます。ありがとう。

私のコード:

プライベートアタッチメントcreateAttachment(string resultsFile){byte [] bytes = readFileAsByteArray(resultsFile);

        // Create attachment content;
        AttachmentContent attachmentContent = new AttachmentContent();
        attachmentContent.Content = bytes;
        attachmentContent.Workspace = this.m_targetWorkspace;
        CreateResult result = m_rallyService.create(attachmentContent);
        attachmentContent = (AttachmentContent)result.Object;
        //attachmentContent = (AttachmentContent)this.m_rallyService.read(attachmentContent, this.m_targetWorkspace);


        Attachment attachment = new Attachment();
        attachment.ContentType = "application / vnd.openxmlformats - officedocument.wordprocessingml.document";
        attachment.Content = attachmentContent;
        attachment.Name = "Bubba.docx";
        attachment.Size = bytes.Length;
        attachment.SizeSpecified = true;
        attachment.User = this.m_rallyUser;
        //attachment.Artifact = testResult;
        attachment.Workspace = this.m_targetWorkspace;

        result = m_rallyService.create(attachment);
        attachment = (Attachment)result.Object;
        //attachment = (Attachment)this.m_rallyService.read(attachment, this.m_targetWorkspace);

        return attachment;
    }
4

4 に答える 4

1

実際には、それは現在機能しています。添付ファイルオブジェクトに属性TestCaseResultが追加されました。この属性を設定すると、作成された結果に添付ファイルが添付されます。私の改訂されたコード:

   private Attachment createAttachment(TestCaseResult testCaseResult, string resultsFile)
    {
        byte[] bytes = readFileAsByteArray(resultsFile);

        // Create attachment content;
        AttachmentContent attachmentContent = new AttachmentContent();
        attachmentContent.Content = bytes;
        attachmentContent.Workspace = this.m_targetWorkspace;
        CreateResult result = m_rallyService.create(attachmentContent);
        attachmentContent = (AttachmentContent)result.Object;

        // Create attachment.
        Attachment attachment = new Attachment();

        // Microsoft Word document.
        attachment.ContentType = "application / vnd.openxmlformats - officedocument.wordprocessingml.document";
        attachment.Content = attachmentContent;

        // Parse out file name.
        string[] parts = resultsFile.Split(new char[] { '\\' });
        attachment.Name = parts[parts.Length - 1];

        attachment.Size = bytes.Length;
        attachment.SizeSpecified = true;
        attachment.User = this.m_rallyUser;
        attachment.TestCaseResult = testCaseResult;
        attachment.Workspace = this.m_targetWorkspace;

        result = m_rallyService.create(attachment);
        attachment = (Attachment)result.Object;

        return attachment;
      }
于 2012-06-12T18:31:19.420 に答える
0

添付ファイルがtest_case_resultに属する場合は、attachment.artifactを使用する必要があります。

Artifact
Required    false
Note    The artifact this attachment belongs to.
One-To-One Relationship Artifact

単純なAttachment.ArtifactではなくAttachment.TestCaseResultが必要なのはなぜですか?

TestCaseResult    
Required    false
Note    Associated Test Case Result
One-To-One Relationship TestCaseResult
于 2012-06-19T19:53:23.863 に答える
0

残念ながら、Rally Webservices API で既知の欠陥に遭遇しました。Rally Product Development は修正に取り組んでいますが、Rally サポート (rallysupport@rallydev.com) にケースを提出することをお勧めします.

于 2012-04-29T20:08:21.210 に答える
0

2012 年 5 月 26 日の Rally コード リリースの時点で、この不具合は修正されています。

于 2012-05-29T22:57:47.523 に答える